|
||
|
||
Linux обеспечивает безопасность в сети. Продолжение.Вторая часть статьи об обеспечении безопасности Linux в сети на примере дистрибутива Red Hat Linux 7.0. Укрепление защиты wu-ftp и web-сервера apache. Переконфигурирование ядра. Отслеживание и защита от вторжений в систему. Андрей Матвеев 5. Смотрим в логиДля этого качаем программку с freshmeat.net
iplog, которая отслеживает TCP, UDP, ICMP трафик
через сетевой интерфейс, определяет
некоторые виды сетевых атак и
сканирования портов. Распаковываем: Для автоматической загрузки
теперь в /etc/rc.d/rc.local прописываем путь к
iplog: Как дополнение к PortSentry и iplog
можно использовать программу scanlogd,
которая выявляет и записывает с помощью
syslogd в /var/log/messages IP адреса хостов, которые
посылают пакеты на разные порты нашей
системы в короткое время. В текущем каталоге будет создан
исполняемый файл scanlogd, но запускать его
еще рано. Для его работы требуется
создание пользователя scanlogd в системе: Теперь каждый день в девять часов вечера будет приходить отчет scanlogd суперпользователю по почте. Формат сообщений scanlogd выглядит
так: IP адрес сканирующего хоста…IP адрес
сканируемого хоста…порты… флаги…время
жизни пакета…когда было выявлено
сканирование. Пример: Для автоматической загрузки
теперь в /etc/rc.d/rc.local прописываем путь к
scanlogd. У меня это выглядит так: Также не лишним будет
записывать все сообщения ядра в файл /var/log/messages.
Для этого в /etc/syslog.conf прописываем
строчку: 6. Отключение несущественных сервисов.Нужно определиться, для каких целей будет использоваться хост. По умолчанию в OS Linux загружается много служб, такие как sendmail, pop3, wu-ftpd, finger, nfs, rpc, R services, telnet, SMB и другие. В дистрибутив Red Hat Linux входит удобная программа ntsysv для управления загрузкой служб. Единственное неудобство: для каждого режима работы придется загружать ntsysv. Необходимо определить назначение хоста, оценить полезность, преимущества и риск загружаемых сервисов. 7. Оберегаем демоновSambaSamba – это набор программ для
реализации протокола Session Message Block в
никсах. Позволяет совместно
использовать файловые системы *nix в Windows
и файловую систему FAT в *nix, а также
принтеры, подключенные либо к
компьютерам, с операционной системой *nix,
либо к компьютерам с системой WindowsX.
Лучше взять с www.ru.samba.org
последнюю версию этого пакета 2.2.1а, где
исправлены баги с безопасностью,
улучшена совместимость с Win2000 и много
еще все разного. Распаковываем архив tar
zxvf samba-2.2.1a.tar.gz Теперь внесем коррективы в файл /usr/local/samba/lib/smb.conf для повышения уровня защиты и быстродействия: Эти параметры определяют
возможность обращения к ресурсу с
определенных хостов или подсетей: Параметр guest ok= определяет, будет ли иметь доступ к ресурсу пользователь без регистрационной записи. Синоним этого параметра public= guest ok=no Параметр wide links= при значении no говорит Samba не следовать по символическим ссылкам вне экспортируемой области – это позволяет получить некоторые бонусы с точки зрения защиты, но в то же время это замедлит работу Samba примерно на 30 %, так как эта операция добавляет шесть дополнительных системных вызовов на каждое обращение к именам файлов. Значение yes или no выбираем сами… Разрешаем шифрованные пароли: Устанавливаем права на файлы и
директории, создаваемые или копируемые
из виндовс в никсы: Для увеличения
производительности Samba, прописываем в
smb.conf : Изменяем параметры виртуальной
памяти в sysctl.conf : Для того, чтобы изменения в
sysctl.conf вступили в силу: ApacheApache – это свободно распространяемый Web-сервер, разработанный по принципу открытой модели исходного кода. В настоящее время по обзорам различных компаний Apache является самым популярным веб-сервером в интернете. Скачиваем дистрибутивный пакет
отсюда
распаковываем и инсталлируем: По умолчанию сервер Apache
устанавливается с оптимальными опциями
защиты. Так, что, например, для
разрешения работы CGI и SSI придется в /usr/local/apache/conf/httpd.conf
прописать: Разрешаем доступ к нашему веб-серверу
только с авторизированной подсети: order
deny, allow Также с помощью брандмауэра
можно предоставить доступ к веб-серверу (192.168.5.1)
только из своей сети: Если на странице содержатся
важные данные, то можно их защитить
средствами апача: Для создания парольного файла: Теперь при попытке зайти на http://www.blablabla.ru/secure придется ввести имя пользователя и пароль. Создать свои html файлы для
директивы ErrorDocument с различными ошибками.
Не стоит включать разрешение просмотра
содержимого каталогов (директиву
построения индексов Options Indexes). Можно
заставить демона httpd прослушивать
другой порт, например, 8080 wu-ftpdFTP – File Transfer Protocol. Стандартный метод передачи файлов из одной системы в другую. В дистрибутиве Red Hat Linux используется бесплатный сервер wu-ftpd. Редактируем файл /etc/ftpaccess : Делаем проверку по rfc822 (самая
строгая из трех возможных) : Все кидаем в логи : И расставляем permissions : И в файле /etc/ftpusers прописываем пользователей, которые НЕ имеют доступа к локальному ftp-серверу. Secure ShellSSH – это защищенная система
регистрации, приходящая на замену telnet,
rlogin, rsh и других. Аутентификация и
шифрование сеанса выполняется
незаметно для пользователя, а
инициализация практически также проста,
как и у telnet. Установка дистрибутива ssh
стандартная: tar , ./configure, make, make install. При
первом запуске автоматически
произойдет создание необходимых ключей.
Редактируем /etc/ssh/sshd_config : Или создаем правила ipchains : Указываем группы, которые могут получать доступ к службе : AllowGroups sshadmin Ведем тщательные логи : Запрещаем регистрацию с пустым
паролем : Под учетной записью root
зарегистрироваться нельзя : Также можно заставить sshd
прослушивать другой порт(по умолчанию
22), например, 1022 Ранние версии ssh имели существенные проблемы с защитой (склонность к переполнению буфера и т.д.). От использования версий ssh до и включительно SSH-1.5-OpenSSH-1.2.3 необходимо отказаться по причине возможного перехвата и расшифровки злоумышленником с помощью анализаторов пакетов посредством методов man in the middle и decrypt ваших зашифрованных паролей. Всегда старайтесь использовать последнюю версию ssh. 8. Установка нового ядра на примере Red Hat Linux 7.0Переход с 2.2.16 на 2.4.8 необходимость? Решать вам. Вот краткий список (с полным можно ознакомиться на www.kernel.org) исправлений, улучшений и нововведений: поддержка нового оборудования, оптимизация, повышение уровня безопасности, исправление ошибок, улучшенная поддержка SMP, порты на другие архитектуры, поддержка различных файловых систем, iptables и т.д. Итак загружаем архив с http://ftp.kernel.org/pub/linux/kernel/v2.4/ и смотрим в Changes, что же нам
требуется обновить: Качаем, если чего то нет. Но обычно в свежих дистрибутивах все это есть и гораздо более новые версии. В данном случае pcmcia-cs, PPP, isdn4k-utils я не использую. Устанавливать лучше всего перезагрузившись в single mode, когда практически ничего не загружено (в приглашении lilo boot: указать загрузчику linux single или linux 1). Быстрее все скомпилируется. Для всего перечисленного для
инсталляции подходит правило: За исключением ksymoops - ./configure не нужен и e2fsprogs после make сделать make check, а потом make install. После установки всех необходимых для компиляции нового ядра программ, лучше вернуться в пятый режим работы (если есть иксы). Снова переходим в новый каталог
linux и: Конфигурируем ядро под себя, сохраняемся, для проверки смотрим в созданный Makefile. Вырабатываем файл зависимостей: Убираем лишний исходный код: Делаем сжатый модуль ядра: Устанавливаем модули: Копируем новое ядро в /boot и
прописываем новое ядро в /etc/lilo.conf: Даем лило перечитать свой
конфигурационный файл: Все. reboot Продолжение следует… Линки по теме: Portsentry - защита от вторжения извне. LIDS - система обнаружения и защиты от вторжения Источник - SoftТерра, http://www.softerra.ru
|
||
|
||
Copyright © "Internet Zone", http://www.izcity.com/, info@izcity.com |