Нет доступа к Интернету в Интернете при настройке этих правил iptables

Я прочитал много других сообщений, но не могу понять это.

eth0 мой внешний подключен к модему Comcast. Сервер имеет доступ к Интернету без проблем.

eth1 является внутренним и запущенным DHCP для клиентов. У меня DHCP работает нормально, все мои клиенты могут получить IP-адрес и ping-сервер, но они не могут получить доступ к Интернету.

Я использую ISC-DHCP-SERVER и установил / etc / default / isc-dhcp-server to INTERFACE = "eht1"

Вот мой файл dhcpd.conf , расположенный в / etc / dhcp / dhcpd.conf

ddns-update-style interim;
ignore client-updates;

subnet 10.0.10.0 netmask 255.255.255.0 {
range 10.0.10.10 10.0.10.200;
option routers 10.0.10.2;
option subnet-mask 255.255.255.0;
option domain-name-servers 208.67.222.222, 208.67.220.220; #OpenDNS
#   option domain-name "example.com";
default-lease-time 21600;
max-lease-time 43200;

    authoritative;
}

Я внес изменения * net.ipv4.ip_forward = 1 * в /etc/sysctl.conf

вот мой файл интерфейса:

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

iface eth1 inet static
address 10.0.10.2
netmask 255.255.255.0
network 10.0.10.0

auto eth1

И, наконец, вот мой файл iptables.conf :

# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*nat
:PREROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.0.10.0/24 -o eth0 -j MASQUERADE
#-A PREROUTING -i eth0 -p tcp --dport 59668 -j DNAT --to-destination 10.0.10.2:59668
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth1 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT
-A FORWARD -s 10.0.10.0/24 -o eth0 -j ACCEPT
-A FORWARD -d 10.0.10.0/24 -m state --state ESTABLISHED,RELATED -i eth0 -j ACCEPT
-A FORWARD -p icmp -j ACCEPT
-A FORWARD -i lo -j ACCEPT
-A FORWARD -i eth1 -j ACCEPT
#-A FORWARD -i eth0 -m state --state NEW -m tcp -p tcp -d 10.0.10.2 --dport 59668 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

Я полностью застрял. Я не могу понять, почему клиенты не могут получить доступ в Интернет. Я пропустил сервис? Не работает ли служба? Любая помощь будет принята с благодарностью. Я старался быть настолько тщательным, насколько возможно, но, пожалуйста, дайте мне знать, если я что-то пропустил. Спасибо!

2
задан 16 November 2011 в 06:00

1 ответ

Проблема заключается в моих iptables, хотя я не знаю, где.

iptables --flush
iptables --table nat --flush
iptables --delete-chain
#
#
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m conntrack --ctstate NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth1 -j ACCEPT

Я надеюсь, что это поможет другим! Теперь я должен добавить каждое правило один за другим. Спасибо всем за помощь.

Кроме того, вы должны сохранить свои iptables с помощью iptables-save> /somewhere/iptables.conf (или некоторого имени файла), а затем добавить предварительный iptables-restore & lt; /somewhere/iptables.conf (или что-то еще) в eth0 в /etc/network/interfaces.

Это приведет к тому, что список правил будет загружен до того, как nic будет активен. Убедитесь, что вы повторно сохранили, когда вы вносите изменения в iptables.

4
ответ дан 25 May 2018 в 16:50

Другие вопросы по тегам:

Похожие вопросы: