Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #42, МАЙ 2004 г.

Социалистическая продразверстка

Vint (vint@townnet.ru)

Спецвыпуск Xakep, номер #042, стр. 042-094-1


Организация ресурсов локальной сети

FTP, IRC, ICQ, Samba... как без всего этого прожить нашему будущему пользователю? Да никак, иначе он просто захиреет, зачахнет, заскучает и перейдет к другому прову. Поэтому – будем поднимать. В этой статье ты найдешь минимум текста и максимум действий, поэтому не расслабляйся.

Настройка FTP-сервера

Как ни крути, а FTP-сервер нам просто необходим, ведь с помощью этого сервиса можно организовать быстрый, удобный и безопасный способ обмена файлами между пользователями сети. Посему – приступим.

Сначала необходимо скачать последнюю версию сервера wu-ftpd отсюда: www.wu-ftpd.org (кстати, весь описанный софт есть и на диске, поэтому качать не обязательно). После этого собираем и устанавливаем:

# tar xzpf wu-ftpd-***.tar.gz; распаковываем

#./configure --disable-dnsretry --enable-quota --enable-pam --disable-newlines --disable-virtual --disable-anonymous --enable-ls

Эти параметры означают следующее (порядок сохранен): при ошибке DNS запроса - забить на него (повышение производительности сервера); включаем поддержку дисковых квот; возможности PAM работы; удаление пустых строк запроса (повышение устойчивости к DoS-атакам); удалим поддержку виртуальных серверов (для нас - лишняя трата ресурсов); запрещаем анонимный доступ (повышение безопасности); использовать встроенную команду “ls” вместо родной системной “ls” (опять же повышение безопасности).

У FTP-сервера компиляция и пост-установочные действия несколько расширены:

Исполняем от root’a:

# make; обычные команды

# make install; установки

# install -m 755 util/xferstats /usr/sbin/; устанавливаем “xferstats”, помогающие следить за работой сервера

# touch /var/log/xferlog; создаем файл регистрации для нее

# chmod 600 /var/log/xferlog; чтение-запись только root’om

# cd /usr/sbin/

# ln -sf in.ftpd /usr/sbin/wu.ftpd ; символические ссылки

# ln -sf in.ftpd /usr/sbin/in.wuftpd ; необходимы для грамотного конфига

# strip /usr/bin/ftpcount ; удаляем всю отладочную инфу

# strip /usr/bin/ftpwho ; из исполняемых файлов

# strip /usr/sbin/in.ftpd

# strip /usr/sbin/ftpshut

# strip /usr/sbin/ckconfig

# strip /usr/sbin/ftprestart

А теперь удалим все исходники:

# cd /var/tmp

# rm -rf wu-ftpd-***/ wu-ftpd-***.tar.gz

И добавим пользователя для работы с фтп-сервером:

# mkdir /home/ftp ; общий для всех пользователей фтп-каталог

# useradd -d /home/ftp/ftpadmin/ -s /dev/null ftpadmin > /dev/null 2>&1

# passwd ftpadmin ; ставим ftpadmin’y пасс для работы

Хорошо бы еще позаботиться о защите своего сервера и убрать возможность вызова шелла пользователям фтп. Для этого – просто добавим в /etc/shells строку: /dev/null. Ничего оригинального. Да, и еще - замени в файле /etc/passwd строку для пользователя “ftpadmin”:

ftpadmin:x:502:502::/home/ftp/ftpadmin/:/dev/null

на:

ftpadmin:x:502:502::/home/ftp/./ftpadmin/:/dev/null

Следующим шагом мы организуем файл /etc/ftphosts и добавим в него хосты своей локалки:

allow ftpadmin 192.168.0 ; разрешаем

deny ftpadmin 192.168.5 ; запрещаем

И выставим ему необходимые права:

chmod 600 /etc/ftphosts

Содержание  Вперед на стр. 042-094-2