iptables ve RETURN hedefi


16

RETURNBir iptables komutunda hedefin ne yaptığını anlamıyorum .

Şüphe bu kılavuzda şöyle yazıyor:

Zincir, bir paketin sırayla kontrol edildiği bir dizi kuraldır. Paket kurallardan biriyle eşleştiğinde, ilişkili eylemi yürütür ve zincirdeki kalan kurallara göre denetlenmez.

Peki, bir paket bir kuralla eşleşiyorsa ve diğer kuralları kontrol etmeyi durduruyorsa neden ihtiyacım var RETURN?

Örneğin bunu internette buldum:

iptables -A PREROUTING -t mangle -i wlan0 -s 192.168.1.10 -j MARK --set-mark 30;
iptables -A PREROUTING -t mangle -i wlan0 -s 192.168.1.10 -j RETURN;

Neden ihtiyacım var RETURN? Bir paket ilk kurala uyuyorsa, otomatik olarak diğer kuralları yürütmeyi durdurur.

Yanıtlar:


34

Onlar çarpana kadar paketler bir zincir çapraz ACCEPT, DROP, REJECT, veya RETURN. Bir maç bir fesih eylemi içermedikçe bir maçta durmazlar. Örneğinizde, ilk kurala uyan bir paket işaretlenecek, ancak daha sonra ikinci kural tarafından incelenecek (ve muhtemelen işlenecektir).

Tamamen referans olması için, kılavuz sayfasından ilgili bölümler :

Güvenlik duvarı kuralı, bir paket ve hedef için ölçütleri belirtir. Paket eşleşmezse, zincirdeki bir sonraki kural incelenir; Bu eşleşmesinin, sonra bir sonraki kural kullanıcı tanımlı bir zincirin adı veya özel değerlerden biri olabilir hedef değeri ile belirtilir ACCEPT, DROP[ REJECT], QUEUEya da RETURN.

  • ACCEPT paketin geçmesine izin vermek anlamına gelir.
  • DROP paketi yere düşürmek, yani atmak ve herhangi bir yanıt göndermemek anlamına gelir
  • [ REJECTeşleşen pakete yanıt olarak bir hata paketini geri göndermek için kullanılır: aksi takdirde eşdeğerdir, DROPbu nedenle sona eren bir TARGET olup kural geçişini sonlandırır.]
  • QUEUE paketi kullanıcı alanına geçirmek anlamına gelir.
  • RETURNbu zinciri geçmeyi durdurmak ve önceki (çağıran) zincirdeki bir sonraki kurala devam etmek anlamına gelir. Yerleşik bir zincirin sonuna ulaşılırsa veya hedefli yerleşik bir zincirdeki bir kural RETURNeşleşirse, zincir ilkesi tarafından belirtilen hedef paketin kaderini belirler.

Özel endişenize yanıt olarak, rehberinizin yanıltıcı olduğunu söyleyebilirim. "İlişkili eylem" beş terminal eylemden biri olmadığı sürece, paketler RETURN, sonunda örtük olana ulaşıncaya kadar zincir boyunca akmaya devam edecektir .


Mümkünse bu cevabı bir kereden fazla iptal ederim.
JakeRobb

Kullanıcı tanımlı zincirler için varsayılan eylemin RETURN olduğunu belirtmek gerekir.
stark

@stark son cümle böyle değil mi?
roaima

1
Ah, şimdi DROP'u daha iyi anlıyorum. Bu da neden bu masanın altında bacak alanım olmadığını açıklıyor.
Jonathan Neufeld
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.