Сервер прокси, две сетевухи в инет yy.yy.yy.yy и в локалку xx.xx.xx.xx. Сквид висит на внутренем интерфейсе и отправляет все пакеты на yy.yy.yy.yy.
Снаружи yy.yy.yy.yy перекрыт полностью доступ извне:
iptables -A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN -j LOG --log-level 7 --log-tcp-options &
iptables -A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN -j REJECT --reject-with icmp-port-unreachable &
iptables -A FORWARD -o eth0 -p tcp -j DROP &
Через какое то время перестал работать slackpkg update(upgarde), ругаясь на то что не резольвится имя. В resolv.conf адреса днс прописаны. Так же у клиентов не пашут а-ля The Bat, но по имени в инет серфить ходят нормально. Подскажите в чем может быть проблема?
Последние комментарии
- OlegL, 17 декабря в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
Какие дефолтные правила для цепочек INPUT и FORWARD?
Можешь скинуть, что выводит iptables-save? Так будет сильно понятней…
это только завтра смогу на работе прокся, ну вообще правила всё логируем и блокируем. Со стороны интернета (по входу) всё заблокировано. FORWARD по выходу с eth0 заперт.
Вообще хочется посмотреть на правила целиком… а то у меня с фантазией не очень… ждем до завтра.
root@proxynok:/etc/squid# iptables-save
# Generated by iptables-save v1.3.8 on Tue Dec 16 09:44:54 2008
*filter
:INPUT ACCEPT [14080843:5254382839]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [10330529:5405440754]
-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -o eth0 -p tcp -j DROP
COMMIT
# Completed on Tue Dec 16 09:44:54 2008
Я бы советовал попробовать что-то такое:
*filter
:INPUT DROP [14080843:5254382839] — ну раз мы такие злые ;)
:FORWARD DROP [0:0] — ну а нафига правил держать, если мы не маршрутизируем?
:OUTPUT ACCEPT [10330529:5405440754]
-A INPUT -p icmp -j ACCEPT
-A INPUT -i -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT — вот главная тема. Мы закрываем все соединения, инициализированные не с нашей стороны.
-A INPUT -i -j ACCEPT
COMMIT
# Completed on Tue Dec 16 09:44:54 2008
Для того, чтобы это заработало в ядре нужно включить conntrack. Так же советую включить хелперы для всяких FTP — позволит использовать активный FTP и прочее с сервера.
Но вообще… если бы я делал такую конфигурацию… я бы сделал так:
1) Выключил бы forwarding:
echo «net.ipv4.ip_forward = 0» >> /etc/sysctl.conf
# sysctl -p | grep net.ipv4.ip_forward
2) Убил бы все правила в фаерволе, и сделал бы для всех цепочек ACCEPT по умолчанию.
Почему так… а потому, что такие правила бессмысленны. Вот вопрос… если у тебя ни один сервис не слушает на внешней сетевке — какой смысл закрывать INPUT? А если у тебя форвард весь прибивается — какой смысл его вообще включать?
Соображения понятны?
P.S. Если кто-то скажет, что conntrack тормозит — бред. Поднимал маршрутизатор. Комп: Celeron 1.8, Compex сетевка на 100 Мбит… Ставил gentoo. Роутер работал (а может и работает — не знаю, ушел «из той компании»). Когда я его настраивал — через него одновременно пробегало порядка 50 000 соединений (это core-router не маленького московского вуза — МГИЭМ)… индикатор загрузки при таком количестве соединений — редко поднимался выше 0.01… contrack — не тормозит!!! :)
хм, слабо понимаю, но попробую покопать, iptables для меня пока еще дремучий лес.