Bir kullanıcıyı (ve uygulamalarını) bir ağ arayüzüyle sınırlandırabilir miyim?


15

Aslında bunu uygulamak için iki senaryo var:

  1. Çok Koltuklu Masaüstü: hem internet ağ geçitlerine sahip iki ağ bağlantısı hem de her birinde bant genişliği yoğun görevler yapan iki hesap. Onları bölmek istiyorum, böylece bir hesap sadece eth0, ikinci hesap sadece eth1 kullanıyor.

  2. Sunucu: Bir sunucuda iki IP adresim var ve posta kullanıcısının yalnızca ikinci IP'den (eth0: 1 diğer adı) e-posta gönderdiğinden emin olmak istiyorum

İkincisi muhtemelen bu arayüz üzerinden e-posta trafiğini yönlendirmek için IPTabled (sadece nasıl yapacağımı bilmiyorum) olabilir, ancak birincisi her türlü trafikle uğraşacaktır, bu yüzden kullanıcı tabanlı olmalıdır. Kullanıcı tabanlı bir çözüm varsa, bunu her iki yerde de uygulayabilirim.

Yanıtlar:


6

Iptables owner modülünü ve belki de akıllı paket yönetimini kullanmak isteyeceksiniz .

owner Bu modül, yerel olarak oluşturulan paketler için paket oluşturucunun çeşitli özelliklerini eşleştirmeye çalışır. Yalnızca ÇIKIŞ zincirinde geçerlidir ve o zaman bile bazı paketlerin (ICMP ping yanıtları gibi) sahibi olmayabilir ve bu nedenle hiçbir zaman eşleşmeyebilir.

--uid-owner userid Paket verilen etkin (sayısal) kullanıcı kimliğine sahip bir işlem tarafından oluşturulmuşsa eşleşir.

--gid-owner groupid Paket verilen etkin (sayısal) grup kimliğine sahip bir işlem tarafından oluşturulmuşsa eşleşir.

--pid-owner processid Paket verilen işlem kimliğine sahip bir işlem tarafından oluşturulmuşsa eşleşir.

--sid-owner sessionid Paketin verilen oturum grubundaki bir işlem tarafından oluşturulup oluşturulmadığıyla eşleşir.


Daha sonra yönlendirme tablosunda kullanabileceğiniz işareti ayarlamak için iptables komutunu kullanabilirsiniz. MARK ve CONNMARK hedeflerine bakın. Iproute, onun 'ip kuralı fwmark X ekleyin ...' Ben aslında, eğer iproute2 tek başına yapabilirse ben
şaşırmazdım

3
Sahip eşleştirmesi ile kapsamlı çalışmalar yapan biri olarak, bunun her zaman istenen sonucu vermeyeceğini söyleyebilirim. Yani, tüm paketlerin beklediğiniz gibi bir sahibi yok. ICMP ve ESP bakılmaksızın kaynak uygulamanın bir çekirdek (veya kök) aittir türleridir ve edecek değil eşleştirileceğini -m owner. TCP ve UDP ile oldukça güvenilirdir, ancak diğer türler o kadar güvenilir değildir. Bu % 100'e ulaşmanın tek güvenilir yolu VM'ler veya kapsayıcılardır.
Bahama


1

Bunun ilk nokta için mümkün olduğundan emin değilim. Kullanıcının kullanıcı kimliğine dayalı olarak bazı yönlendirme işlemleri yapmak istiyorsunuz. En son kontrol ettiğimde bu olasılığı görmedim.

İkinci nokta için, kullanmak istediğiniz iptables değil iproute2 ( tüm doküman için http://lartc.org/howto/ ve http://www.policyrouting.org/iproute2.doc.html ). Eski olduğu düşünülüyorsa ifconfig / route komutlarının yerine kullanılır. iproute2 paketlerin kaynağına göre yönlendirilmesine izin verir. İstediğin bu

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.