Настройки безопасности веб-хостинга Linux в /etc/sysctl.conf
При поиске дополнительных способов защиты серверов Linux я обнаружил следующее /etc/sysctl.conf
конфигурации. Оно пришло как есть, без особых объяснений. Прежде чем использовать его в производственной среде (используя Ubuntu 12.04 LTS), я бы хотел узнать, как это работает на веб-сервере.
# Avoid a smurf attack
net.ipv4.icmp_echo_ignore_broadcasts = 1
# Turn on protection for bad icmp error messages
net.ipv4.icmp_ignore_bogus_error_responses = 1
# Turn on syncookies for SYN flood attack protection
net.ipv4.tcp_syncookies = 1
# Turn on and log spoofed, source routed, and redirect packets
net.ipv4.conf.all.log_martians = 1
net.ipv4.conf.default.log_martians = 1
# No source routed packets here
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.accept_source_route = 0
# Turn on reverse path filtering
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
# Make sure no one can alter the routing tables
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
# Don't act as a router
net.ipv4.ip_forward = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
# Turn on execshild
kernel.exec-shield = 1
kernel.randomize_va_space = 1
# Tune IPv6
net.ipv6.conf.default.router_solicitations = 0
net.ipv6.conf.default.accept_ra_rtr_pref = 0
net.ipv6.conf.default.accept_ra_pinfo = 0
net.ipv6.conf.default.accept_ra_defrtr = 0
net.ipv6.conf.default.autoconf = 0
net.ipv6.conf.default.dad_transmits = 0
net.ipv6.conf.default.max_addresses = 1
- Что такое смарф-атака?
- Почему плохие сообщения об ошибках icmp плохие? Другими словами, что хорошего в том, чтобы отключить это?
- Что такое syncookies или SYN-атака?
- Зачем включать и регистрировать поддельные, исходные маршрутизированные и перенаправляющие пакеты? Почему перенаправленные и исходящие маршрутизированные пакеты плохие?
- Что такое фильтрация обратного пути?
- Что такое execshild и randomize_va_space?
- В целом, вы хотели бы добавить что-нибудь еще или удалить из него некоторые настройки для своего сервера? Зачем?
Было бы очень признательно, если бы кто-то мог дать объяснение (или ресурс, объясняющий их) по каждой настройке здесь.
Обновить:
Я нашел этот документ чрезвычайно полезным для понимания настроек, связанных с IP: http://www.frozentux.net/ipsysctl-tutorial/ipsysctl-tutorial.html
1 ответ
Атака smurf - это когда кто-то отправляет пакеты на широковещательный адрес, обычно с поддельным источником, чтобы заставить вас отправлять большое количество ответов.
Засорение ваших журналов с сообщениями об ошибках. Игнорирование их сохраняет журналы незагроможденными. Это не так, как вы можете исправить Интернет в любом случае.
Атака SYN - это атака, при которой злоумышленник попадает на сервер с большим количеством запросов на соединение TCP. Идея состоит в том, чтобы использовать память на сервере, заставляя его отслеживать все запросы на подключение. Файлы cookie SYN позволяют серверу обрабатывать запросы на подключение без использования памяти.
Исходные маршрутизируемые пакеты плохие, потому что они могут использоваться посторонними для того, чтобы игнорировать или нарушать политику внутренней сети. Регистрация поддельных, исходящих маршрутизированных или перенаправленных пакетов имеет смысл, потому что, в отличие от плохих сообщений об ошибках ICMP, они обычно указывают на то, что кто-то делает что-то преднамеренное, а не на ошибку конфигурации или неисправный маршрутизатор.
Фильтрация по обратному пути приводит к тому, что маршрутизатор отбрасывает пакет, если он был получен через интерфейс, который вы не использовали бы для отправки пакетов этому источнику. Лично я всегда отключаю это. По моему опыту, это создает гораздо больше проблем, чем решает, например, нарушение многопутевого IP.