Назад | Перейти на главную страницу

CentOS + IPTables

Я пытаюсь настроить сервер CentOS 7 с Squid в качестве прокси-сервера. Прокси-сервер является строго частным и не должен быть доступен никому, кроме меня и двух других серверов, поэтому я решил заблокировать все порты для трех IP-адресов. Я также хотел бы указать, что у меня есть доступ VNC к серверу на случай изменения моего IP. Вот правила таблицы IP, которые я использую для блокировки сервера (где 1.1.1.1 - это просто пример) ...

#!/bin/bash
IPTABLES=/sbin/iptables
MYIP=1.1.1.1

#start and flush
$IPTABLES -F
$IPTABLES -t nat -F
$IPTABLES -X
$IPTABLES -P FORWARD DROP
$IPTABLES -P INPUT   DROP
$IPTABLES -P OUTPUT  ACCEPT

#HTTP traffic
$IPTABLES -A INPUT -p tcp -s $MYIP --dport 80 -j ACCEPT

#SSH traffic
$IPTABLES -A INPUT -p tcp -s $MYIP --dport 22 -j ACCEPT

#FTP traffic
$IPTABLES -A INPUT -p tcp -s $MYIP --dport 21 -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $MYIP --dport 20000:20050 -j ACCEPT

#SQUID traffic
$IPTABLES -A INPUT -p tcp -s $MYIP --dport 3128 -j ACCEPT

#loopback
$IPTABLES -A INPUT -i lo -p all -j ACCEPT

Проблема в том, что когда я выполняю эти правила, Squid перестает работать. Он пытается подключиться, но в конечном итоге возвращает ошибку Squid с сообщением «Время ожидания подключения». Несмотря на то, что весь OUTPUT-трафик разрешен, yum и wget также перестают работать, поэтому я предполагаю, что он не разрешает исходящий трафик?

Может кто-нибудь помочь мне, где я ошибаюсь, пожалуйста?