Alternatif I:
Arabirim ağ geçidini zorlamak için ld_preload kullanma https://github.com/Intika-Linux-Network/App-Route-Jail
Bir uygulamayı belirli bir ağ arayüzü kullanmaya zorla
Ağ arabiriminin hangi ağ geçidini kullandığını bulmamız gerekir, o zaman bu ağ geçidini hapse atılan uygulamamıza zorlar ve böylece uygulamayı belirli bir ağ arabirimine bağlanmaya zorlar
- Arabirim ağ geçidi nasıl bulunur (burada ağ geçidini bulmak için birçok çözüm vardır, burada kullanılan ağ geçidini bulmaya izin veren bazı komutlar vardır)
$ route
$ route -n
$ ip rule list
$ ip route show
$ netstat -rn
$ cat /etc/network/interfaces
$ cat /etc/sysconfig/network-scripts/ifcfg-eth0
$ traceroute www.google.com
$ ip route show 0.0.0.0/0 dev eth0
Uygulama ağ geçidi başına
git clone https://github.com/Intika-Linux-Network/App-Route-Jail.git
cd Approute-Utils
chown 755 make.sh
./make.sh
- Gelecekteki işaretli paketler için (hapsedilmiş uygulama için) bu örnekte
192.168.1.1
zorunlu ağ geçidi olarak kullanılan bir rota ekleyin , bu rota kuralı diğer uygulamaları etkilemeyecektir, bu manipülasyon örneğin bir sistem önyüklemesinde sadece bir kez yapılmalı, örneğin bu çözümü her gün kullanın
ip rule add fwmark 10 table 100
ip route add default via 192.168.1.1 table 100
- Hapse atmak istediğiniz uygulamayı başlatın
MARK=10 LD_PRELOAD=./mark.so firefox
- Wan IP adresini test etme
MARK=10 LD_PRELOAD=./mark.so wget -qO- ifconfig.me
Alternatif II:
Firejail https://firejail.wordpress.com/ , bir uygulamayı belirli bir ağ kullanmaya zorlayabilir, ancak uyumluluk sınırlıdır.
firejail --dns=8.8.8.8 --net=eth0 --ip=192.168.1.1