Усиление сетевых настроек Linux

Как это так вышло, что мы до сих пор не подкрутили сетевые настроечки Linux?! Срочно, срочно…

Править будем файл модифицируемых в процессе работы настроек ядра /etc/sysctl.conf.

Первым делом отключаем роутинг, добавляем строку:

 # net.ipv4.ip_forward = 0 

Отключаем ICMP- и IPv6-редиректы, чтобы нам не подменили роутер:

net.ipv4.conf.all.accept_redirects = 0

net.ipv4.conf.default.accept_redirects = 0

net.ipv4.conf.all.secure_redirects = 0

net.ipv4.conf.default.secure_redirects = 0

net.ipv6.conf.all.accept_redirect = 0

net.ipv6.conf.default.accept_redirect = 0

И сами их не шлем, мы же приличные люди

net.ipv4.conf.all.send_redirects = 0

net.ipv4.conf.default.send_redirects = 0

Отключаем прием маршрутов из опций IP-протокола, чтобы нас не обманули

net.ipv4.conf.all.accept_source_route = 0

net.ipv4.conf.default.accept_source_route = 0

net.ipv6.conf.all.accept_ra = 0

net.ipv6.conf.default.accept_ra = 0

Отключаем ответы на броадкаст и мультикаст ICMP-запросы, защита от атаки Smurf:

net.ipv4.icmp_echo_ignore_broadcasts = 1

Включаем поддержку SYN-cookies, чтобы валидные сессии в случае SYN-флуда продолжали работать:

net.ipv4.tcp_syncookies = 1

Отключаем реакцию на пакеты, нарушающие RFC-1122, чтобы не допустить переполнения логов:

net.ipv4.icmp_ignore_bogus_error_responses = 1

Включаем проверку обратного маршрута, чтобы защититься от спуфинга (не включаем, если в сети несимметричная маршрутизация):

net.ipv4.conf.all.rp_filter = 1

net.ipv4.conf.default.rp_filter = 1

А эта настройка позволит логировать пакеты с недоступным адресом отправителя, чтобы заметить попытки спуфинга. Включаем только если действительно интересно, иначе – бережем логи:

net.ipv4.conf.all.log_martians = 1

net.ipv4.conf.default.log_martians = 1

Если не используем IPv6, можно запросто его отключить и избавиться от кучи потенциальных проблем:

net.ipv6.conf.all.disable_ipv6 = 1

net.ipv6.conf.default.disable_ipv6 = 1

net.ipv6.conf.lo.disable_ipv6 = 1

Вона скока настроили! Применяем:

/sbin/sysctl -w net.ipv4.route.flush=1

/sbin/sysctl -w net.ipv6.route.flush=1</code>

/sbin/sysctl -p

Теперь у нас приличные сетевые настройки =)

А что у нас на эту тему могут предложить Юниксы?

Solaris:

Отключаем роутинг:

 routeadm -d ipv4-forwarding -d ipv4-routing</code>

<code>routeadm -d ipv6-forwarding -d ipv6-routing</code>

<code>routeadm -u

Отключаем редиректы:

ipadm set-prop -p _ignore_redirect=1 ipv4</code>

<code>ipadm set-prop -p _ignore_redirect=1 ipv6</code>

<code>ipadm set-prop -p send_redirects=off ipv4</code>

<code>ipadm set-prop -p send_redirects=off ipv6

Отключаем маршруты из опций IP:

ipadm set-prop -p _rev_src_routes=0 tcp

Отключаем ответы на ICMP броадкаст и мультикаст запросы:

ipadm set-prop -p _respond_to_timestamp_broadcast=0 ip</code>

<code>ipadm set-prop -p _respond_to_address_mask_broadcast=0 ip</code>

<code>ipadm set-prop -p _respond_to_echo_broadcast=0 ip</code>

<code>ipadm set-prop -p _respond_to_echo_multicast=0 ipv4</code>

<code>ipadm set-prop -p _respond_to_echo_multicast=0 ipv6

AIX:

Отключаем роутинг:

no -p -o ipforwarding=0

Отключаем редиректы:

no -p -o ipignoreredirects=1

Отключаем маршруты из опций IP:

no -p -o ipsrcrouterecv=0

Отключаем ответы на ICMP броадкаст запросы:

no -p -o bcastping=0

Включаем защиту от внедрения поддельных TCP-пакетов:

no -p -o tcp_tcpsecure=7

HP-UX:

Отключаем роутинг:

ndd -set /dev/ip ip_forwarding 0

С редиректами тут паршиво, только с помощью фаервола:

Добавляем строку block in quick proto icmp from any to any icmp-type redir в таблицу правил в файле /etc/opt/ipf/ipf.conf

ipf -Fa -A -f /etc/opt/ipf/ipf.conf

Отключаем маршруты из опций IP:

ndd -set /dev/ip ip_forward_src_routed 0

Отключаем ответы на ICMP броадкаст запросы:

ndd -set /dev/ip ip_respond_to_echo_broadcast 0</code>

<code>ndd -set /dev/ip ip_respond_to_timestamp_broadcast 0

 

Источник



2018-01-25T16:47:35
Закрытие уязвимостей