Серверы · 3 min read · Oct 04, 2025
Идеальный сервер - Debian Lenny (Debian 5.0) [ISPConfig 2] - Страница 3
4 Установите SSH сервер
Debian Lenny не устанавливает OpenSSH по умолчанию, поэтому мы сделаем это сейчас. Выполните
apt-get install ssh openssh-serverС этого момента вы можете использовать SSH-клиент, такой как PuTTY, и подключаться с вашего рабочего места к вашему серверу Debian Lenny и следовать оставшимся шагам этого руководства.
5 Установите vim-nox (необязательно)
Я буду использовать vi в качестве текстового редактора в этом руководстве. Программа vi по умолчанию имеет странное поведение на Debian и Ubuntu; чтобы исправить это, мы установим vim-nox:
apt-get install vim-nox(Вам не нужно это делать, если вы используете другой текстовый редактор, такой как joe или nano.)
6 Настройте сеть
Поскольку установщик Debian Lenny настроил нашу систему на получение сетевых настроек через DHCP, мы должны изменить это сейчас, потому что сервер должен иметь статический IP-адрес. Отредактируйте /etc/network/interfaces и настройте его в соответствии с вашими потребностями (в этом примере я буду использовать IP-адрес 192.168.0.100) (обратите внимание, что я заменяю allow-hotplug eth0 на auto eth0; в противном случае перезапуск сети не работает, и нам придется перезагрузить всю систему):
vi /etc/network/interfaces| # Этот файл описывает доступные сетевые интерфейсы на вашей системе # и как их активировать. Для получения дополнительной информации смотрите interfaces(5). # Интерфейс сетевого цикла auto lo iface lo inet loopback # Основной сетевой интерфейс #allow-hotplug eth0 #iface eth0 inet dhcp auto eth0 iface eth0 inet static address 192.168.0.100 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1 |
Затем перезапустите вашу сеть:
/etc/init.d/networking restartЗатем отредактируйте /etc/hosts. Сделайте его таким:
vi /etc/hosts| 127.0.0.1 localhost.localdomain localhost 192.168.0.100 server1.example.com server1 # Следующие строки желательны для хостов, поддерживающих IPv6 ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts |
Теперь выполните
echo server1.example.com > /etc/hostname
/etc/init.d/hostname.sh startПосле этого выполните
hostname
hostname -fОба должны показать server1.example.com.
7 Обновите вашу установку Debian
Выполните
apt-get updateчтобы обновить базу данных пакетов apt и
apt-get upgradeчтобы установить последние обновления (если они есть).
8 Установите несколько программ
Теперь мы установим несколько пакетов, которые понадобятся позже. Выполните
apt-get install binutils cpp fetchmail flex gcc libarchive-zip-perl libc6-dev libcompress-zlib-perl libdb4.6-dev libpcre3 libpopt-dev lynx m4 make ncftp nmap openssl perl perl-modules unzip zip zlib1g-dev autoconf automake1.9 libtool bison autotools-dev g++ build-essential(Эта команда должна быть в одной строке!)
9 Квота
(Если вы выбрали другую схему разбиения, чем я, вы должны отредактировать эту главу так, чтобы квота применялась к разделам, где она вам нужна.)
Чтобы установить квоту, выполните
apt-get install quotaОтредактируйте /etc/fstab. Мой выглядит так (я добавил,usrquota,grpquota к разделу с точкой монтирования /):
vi /etc/fstab| # /etc/fstab: статическая информация о файловой системе. # # <файловая система> <точка монтирования> <тип> <опции> <дамп> <передача> proc /proc proc defaults 0 0 /dev/sda1 / ext3 errors=remount-ro,usrquota,grpquota 0 1 /dev/sda5 none swap sw 0 0 /dev/hda /media/cdrom0 udf,iso9660 user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0 |
Чтобы включить квоту, выполните эти команды:
touch /quota.user /quota.group
chmod 600 /quota.*
mount -o remount /quotacheck -avugm
quotaon -avug10 DNS-сервер BIND9
Выполните
apt-get install bind9чтобы установить BIND9.
По соображениям безопасности мы хотим запустить BIND в chroot, поэтому нам нужно выполнить следующие шаги:
/etc/init.d/bind9 stopОтредактируйте файл /etc/default/bind9 так, чтобы демон работал от непривилегированного пользователя bind, chrooted к /var/lib/named. Измените строку: OPTIONS=”-u bind” так, чтобы она выглядела как OPTIONS=”-u bind -t /var/lib/named”:
vi /etc/default/bind9| # запускать resolvconf? RESOLVCONF=yes # параметры запуска для сервера OPTIONS="-u bind -t /var/lib/named" |
Создайте необходимые директории в /var/lib:
mkdir -p /var/lib/named/etc
mkdir /var/lib/named/dev
mkdir -p /var/lib/named/var/cache/bind
mkdir -p /var/lib/named/var/run/bind/runЗатем переместите директорию конфигурации из /etc в /var/lib/named/etc:
mv /etc/bind /var/lib/named/etcСоздайте символическую ссылку на новую директорию конфигурации из старого местоположения (чтобы избежать проблем, когда BIND будет обновлен в будущем):
ln -s /var/lib/named/etc/bind /etc/bindСоздайте устройства null и random и исправьте права доступа к директориям:
mknod /var/lib/named/dev/null c 1 3
mknod /var/lib/named/dev/random c 1 8
chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random
chown -R bind:bind /var/lib/named/var/*
chown -R bind:bind /var/lib/named/etc/bindНам нужно открыть /etc/rsyslog.d/bind-chroot.conf…
vi /etc/rsyslog.d/bind-chroot.conf… и добавить следующую строку, чтобы мы все еще могли получать важные сообщения, записываемые в системные журналы:
| $AddUnixListenSocket /var/lib/named/dev/log |
Перезапустите демон журналирования:
/etc/init.d/rsyslog restartЗапустите BIND и проверьте /var/log/syslog на наличие ошибок:
/etc/init.d/bind9 startGet new posts in your inbox
No spam. Unsubscribe anytime.