|
||
|
||
Linux обеспечивает безопасность в сетиПервая часть статьи об обеспечении безопасности Linux в сети на примере дистрибутива Red Hat Linux 7.0. Настройка firewall с помощью ipchains и выявление сканирования с помощью portsentry. Андрей Матвеев ВведениеВ настоящее время проблема безопасности систем играет огромную роль для пользователей сети Интернет, которая вместе со своими широкими возможностями привнесла новые опасности, такие как компьютерная преступность, кражи конфиденциальной информации, злонамеренное повреждение систем, ранее не существовавшие. Необходимо четко понимать характер потенциальных опасностей для компьютерной безопасности и не важно, являетесь ли Вы системным или сетевым администратором в крупной организации или рядовым пользователем. Основными типами нападений являются: несанкционированный доступ, т.е. злоумышленник, которому не разрешается использовать сервисы вашего хоста, сможет подключиться и работать с ними; использование "багов" в сетевых службах, которые оказываются уязвимыми из внешней сети; Denial of Service (отказ в обслуживании) – такие нападения приводят к выходу из строя аппаратного и/или программное обеспечение хоста, в результате чего система становится недоступной для пользователей, при атаке на службы цель атакующего проста – выбить хост из сети; мистификация – когда атакующий имитирует подключение к системе с хоста, пользующегося доверием; прослушивание трафика – злоумышленник настраивает сетевой интерфейс таким образом, чтобы получать все пакеты, проходящие в сети, а не только его системе с целью извлечения имен и паролей пользователей. Надежными путями борьбы с подобными нападениями являются: повышение безопасности ядра и IP-стека; построение брандмауэра (firewall); выявление сканирования, определения типа и версии используемой операционной системы, вторжения; журналирование, с максимальным уровнем подробности; защита от подслушивания; полное отключение всех небезопасных служб или замена альтернативами. В цикле статей "Обеспечиваем безопасность OS Linux в сети на примере дистрибутива Red Hat Linux 7.0" попробуем разобраться с такими способами борьбы против направленных деструктивных действий злоумышленников. 1. Перекомпилируем ядроПо умолчанию ядро осуществляет недостаточный уровень безопасности. Включаем в ядро все опции firewall. CONFIG_FIREWALL = y CONFIG_NET_ALIAS = y CONFIG_INET = y CONFIG_SYN_COOKIES = y CONFIG_RST_COOKIES = y CONFIG_IP_FIREWALL = y CONFIG_IP_FIREWALL_VERBOSE = y CONFIG_IP_ALWAYS_DEFRAG = y CONFIG_IP_ACCT = y CONFIG_IP_ALIAS = m 2. Правим /etc/sysctl.confЭти настройки повышают устойчивость IP-стека к Denial Of Service атакам, уменьшают время TCP/IP подключения, чтобы можно было обработать больше соединений за тот же интервал. Также будет уменьшено время, которое Linux ждет до закрытия соединения и время через которое Linux разрывает устаревшее соединение. Эти настройки отключат некоторые расширения протокола TCP/IP, которые нам не нужны. net.ipv4.icmp_ignore_bogus_error_responses = 1 net.ipv4.conf.all.log_martians = 1 net.ipv4.conf.all.accept_source_route = 0 net.ipv4.tcp_syncookies = 1 net.ipv4.conf.all.send_redirects = 0 net.ipv4.conf.all.accept_redirects = 0 net.ipv4.tcp_fin_timeout = 30 net.ipv4.tcp_keepalive_time = 1800 net.ipv4.tcp_window_scaling = 0 net.ipv4.tcp_sack = 0 net.ipv4.tcp_timestamps = 0 net.ipv4.tcp_max_syn_backlog = 1280 net.ipv4.conf.all.forwarding = 0 net.ipv4.icmp_echo_ignore_broadcasts = 1 3. Поиграем с цепочкамиФильтрация IP – механизм, являющийся средством сетевого уровня, т.е. он ничего не знает о приложениях, использующие сетевые соединения, определяет, что нужно делать с принятым или отправленным пакетом: обработать "нормально" или проигнорировать. Набор правил фильтрации IP состоит из комбинации критериев, которые определяют пакеты, подлежащие фильтрации: тип протокола TCP, UDP, ICMP и т.д., номер сокета, тип пакета (флаги, данные, эхо-запрос …), адреса отправителя и получателя пакетов. В состав Red Hat 7.0 входит программа администрирования ipchains, для построения и управления брандмауэра. Она обладает упрощенным синтаксисом команд по сравнению с ipfwadm, гибкостью, а также механизмом сцепления, позволяющим создавать наборы правил и их объединения. Некоторые параметры ipchains: В ipchains существует три
встроенные цепочки: input (входная цепочка),
forward (цепочка перенаправления) и output (выходная
цепочка). Пакеты продвигаются по
созданным цепочкам в этом порядке до тех
пор, пока не обнаружится совпадение,
затем определяется действие над пакетом,
указанное в составе правила (приводятся
чаще всего используемые правила): Внешний вид: Имеем адрес сети 192.168.5.0, маску
сети 255.255.255.0, широковещательный адрес
192.168.5.255, IP-адрес 192.168.5.21, сетевой
интерфейс eth0. Создаем сценарий для ipchains: В удобном для Вас текстовом редакторе создаем цепочки. Подробный файл конфигурации ipchains с комментариями можно (даже нужно) взять здесь. Теперь: Проверить работу нашего
скрипта можно выполнив команду: 4. Фильтруем портыPortSentry – это средство для
выявления сканирования портов. Оно
практически определяет и блокирует
попытки атак. Распаковываем скаченный с freshmeat.net
архив и устанавливаем: Теперь правим /usr/local/psionic/portsentry/portsentry.conf Возможные варианты запуска PortSentry: -tcp, -udp, -stcp, -sudp, -atcp, - audp. Комбинировать варианты типа –tcp и –stcp нельзя. Для автоматической загрузки
теперь в /etc/rc.d/rc.local прописываем путь к
PortSentry для выявления скрытого
сканирования: Продолжение следует… Источник - SoftТерра, http://www.softerra.ru
|
||
|
||
Copyright © "Internet Zone", http://www.izcity.com/, info@izcity.com |