Ping: sendmsg: Arch GNU / Linux'a iptables kurduktan sonra işleme izin verilmiyor hatası


16

Dün ev sunucum, HP Proliant Mikro Sunucu olarak yeni bir bilgisayar aldım. Arch Linux, 3.2.12 çekirdeği ile üzerine kuruldu.

İptables (1.4.12.2 - geçerli sürüm AFAIK) yüklendikten ve net.ipv4.ip_forwardanahtarı 1 olarak değiştirdikten ve iptables yapılandırma dosyasında iletmeyi (ve yeniden başlatmayı) etkinleştirdikten sonra, sistem ağ arabirimlerinin hiçbirini kullanamaz. Ping başarısız oluyor

Ping: sendmsg: operation not permitted

Iptables'ı tamamen kaldırırsam, ağ iletişimi uygundur, ancak Internet bağlantısını yerel ağla paylaşmam gerekir.

eth0 - NIC anakart üzerinde tümleşik wan (Broadcom NetXtreme BCM5723).

eth1 - pci-express yuvasında lan NIC (Intel 82574L Gigabit Ağı)

Iptables olmadan çalıştığı için (sunucu internete erişebilir ve iç ağdan ssh ile giriş yapabilirim), iptables ile ilgisi olduğunu varsayalım. Iptables ile fazla deneyimim yok, bu yüzden bunları referans olarak kullandım (elbette birbirinden ayrı ...):

wiki.archlinux.org/index.php/Simple_stateful_firewall#Setting_up_a_NAT_gateway

revsys.com/writings/quicktips/nat.html

howtoforge.com/nat_iptables

Önceki sunucumda, nat kurmak için revsys rehberini kullandım, bir cazibe gibi çalıştı.

Daha önce böyle bir şey yaşayan var mı? Neyi yanlış yapıyorum?

Yanıtlar:


24

Hata mesajı:

Ping: sendmsg: operation not permitted

sunucunuzun ICMP paketleri göndermesine izin verilmediği anlamına gelir. Sunucunuzun yapılandırılan bir veya daha fazla arabirim üzerinden trafik göndermesine izin vermeniz gerekir. Bunu şu şekilde yapabilirsiniz:

  1. OUTPUTZincir politikasını ACCEPT, kutunuzdan giden tüm trafiğe izin verecek şekilde ayarlayın :

    sudo iptables -P OUTPUT ACCEPT
    
  2. OUTPUTZincir politikasını ayarlayın DROPve ardından ihtiyacınız olan trafik türüne seçici olarak izin verin.

Bu sadece zincir için değil tüm zincirler için geçerlidir OUTPUT. INPUTzinciri, kutunuzun aldığı trafiği kontrol eder. FORWARDzincir, kutunun içinden iletilen trafikle ilgilenir.


Ping sadece bir örnektir, udp paketleri veya tcp paketleri
gönderemedi

Yine de aynı fikir geçerlidir
Khaled

Söylediklerini denedim, aynı sonuçlar. Eski sunucudan kurallar var, bu kısmen çalışıyor. Herhangi bir istemci, etki alanı adlarını arayabilir, hatta ping atabilir, ancak web'e göz atamaz. Geçici çözüm olarak bir proxy yükledim (sunucudaki bağlantı iyi olduğu için sunucuya bağlantı gibi), ancak birçok hizmet bu şekilde çalışmıyor (Trillian, Skype).
estol

Çıktı zinciri politikasını kabul edecek şekilde ayarlama komutu nedir ??
Joseph Astrahan

4
@JosephAstrahan:sudo iptables -P OUTPUT ACCEPT
Khaled

2

Bana göre, Debian 9'da, sadece yeniden yüklemeye yardımcı oldu ping:

apt-get install --reinstall iputils-ping 

Ayrıca yum upgrade iputils.x86_64"fiziksel" işletim sistemini bir VM'ye klonladıktan sonra CentOS 7 (aslında paketin yükseltilmesi) üzerinde çalıştı - bunun önemli olup olmadığından emin değilim.
yahol
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.