Сейчас я получаю несколько марсианских пакетов в kern.log:
Jul 7 02:28:20 box14932 kernel: [789192.798073] IPv4: martian source XXX.XXX.XXX.XXX from 10.91.12.01, on dev eth1
Jul 7 02:28:20 box14932 kernel: [789192.798095] ll header: 00000000: 44 a8 12 41 1d 2b 13 8b 9c ab 34 89 10 00 D.BB.......Y..
Jul 7 04:29:12 box14932 kernel: [798267.423393] IPv4: martian source XXX.XXX.XXX.XXX from 10.91.20.10, on dev eth1
Jul 7 04:29:12 box14932 kernel: [798267.423401] ll header: 00000000: 44 a8 12 41 1d 2b 13 8b 9c ab 34 89 10 00 D.BB.......Y..
Jul 7 04:29:12 box14932 kernel: [798267.423408] IPv4: martian source XXX.XXX.XXX.XXX from 10.91.20.10, on dev eth1
Jul 7 04:29:12 box14932 kernel: [798267.423410] ll header: 00000000: 44 a8 12 41 1d 2b 13 8b 9c ab 34 89 10 00 D.BB.......Y..
Источник «XXX.XXX.XXX.XXX» - это общедоступный IP-адрес моего сервера.
Ищу в гугле, толком не нашел что было. Это спуф-атака или просто проблема с сетевой конфигурацией на моем сервере?
У меня на сервере два интерфейса:
Вот моя конфигурация sysctl.conf, где rp_filter = 1 и log_martians = 1:
# Log Martians
net.ipv4.conf.all.log_martians = 1
net.ipv4.icmp_ignore_bogus_error_responses = 1
# IP Spoofing protection
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
# Disable source packet routing
net.ipv4.conf.all.accept_source_route = 0
net.ipv6.conf.all.accept_source_route = 0
net.ipv4.conf.default.accept_source_route = 0
net.ipv6.conf.default.accept_source_route = 0
# Ignore send redirects
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
# Block SYN attacks
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 4096
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 5
# Ignore ICMP redirects
net.ipv4.conf.all.accept_redirects = 0
net.ipv6.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv6.conf.default.accept_redirects = 0
Кто-нибудь может мне помочь? Стоит ли беспокоиться об этих марсианах?
Что вы скажете о добавлении правил iptables для DROP и LOG пакетов, например:
-A INPUT -i -s 10.0.0.0/8 ENO1 j DROP
Большое спасибо за вашу помощь
Многие проблемы, возникающие с марсианин источник вызван соображениями топографии сети. Возможно, потребуется решить следующие проблемы:
- Маршрутизатор: Маршрутизатор может маршрутизировать через недопустимые адреса; убедитесь, что роутер настроен правильно.
- Несколько сетевых адаптеров: если компьютер имеет несколько сетевых карт, подключенных к одному коммутатору, то могут отображаться марсианские источники (это наиболее частая причина).
- Брандмауэр: есть ли брандмауэр, пропускающий несоответствующий трафик?
- IP-адреса: вы используете групповые адреса или сетевые адреса класса E?
- Другие компьютеры: отвечают ли MAC-адреса других серверов или рабочих станций?
Возможные решения
Несколько сетевых карт в одной подсети: Наиболее частой причиной является несколько сетевых адаптеров в одной подсети. Если вам необходимо иметь несколько сетевых адаптеров в одной подсети, используйте управляемый коммутатор. Это можно проверить, отключив все карты NIC, кроме одной; если сообщения исчезают, можно предположить, что причиной являются несколько сетевых адаптеров. Другое решение - связать сетевые карты вместе. Вообще говоря, правильно настроенная сеть не должна требовать, чтобы несколько сетевых адаптеров находились в одной подсети, за исключением случая связывания.
Отключите логирование в ядро: Если вы можете определить, что марсианские источники не связаны с проблемой безопасности, вы можете отключить ведение журнала марсианских источников. Обратите внимание, что вы должны быть уверены, что сеть безопасна и что источником этих сообщений не является маршрутизатор.
В
/etc/sysconfig/sysctl add "net.ipv4.conf..log_martians=0"
Удостоверься что "
sysctl
"настроен на запуск при загрузке"chkconfig boot.sysctl on
"
Ошибки марсианских источников отображаются в журнале сообщений
Вы сможете найти источник, проверив MAC-адреса, встроенные в данные «44 a8 12 41 1d 2b 13 8b 9c ab 34 89 10 00». 44: a8: 12: 41: 1d: 2b должен быть MAC-адресом вашего интерфейса. 13: 8b: 9c: ab: 34: 89 должен быть MAC-адресом удаленного устройства.
Попробуйте проверить свой кеш, чтобы узнать, есть ли у вас другие адреса для этих MAC-адресов. arp -a
должна быть команда для использования.
Чтобы проверить MAC-адреса ваших устройств, используйте ip link show
или ifconfig
.