[+] SSH przez osobny interfejs

Masz problemy z siecią bądź internetem? Zapytaj tu
kanonier
Posty: 7
Rejestracja: 29 października 2007, 21:24

[+] SSH przez osobny interfejs

Post autor: kanonier »

Dzień dobry.
Mam w komputerze dwa interfejsy sieciowe:
[INDENT]- wlan1
- ppp0[/INDENT]
Chcę doprowadzić do sytuacji, w której połączenia ssh będą trasowane przez ppp0, natomiast cała reszta będzie trasowana przez wlan1 (domyślnie wszystko jest trasowane przez wlan1).

Posługuję się tym poradnikiem (Example 2). W skrócie:
  1. Tworzę i odpowiednio uzupełniam nową tablicę trasowania dla interfejsu ppp0. Nazywam ją "SSH_CONNECTION".
  2. Doda do firewalla następującą regułę

    Kod: Zaznacz cały

     iptables -A OUTPUT -t mangle -p tcp --dport 22 -j MARK --set-mark 1
    
    Dzięki niej wszystkie pakiety protokołu SSH zostaną oznaczone symbolem "1".
  3. Na koniec dodaję następującą regułę

    Kod: Zaznacz cały

    ip rule add from all fwmark 1 table SSH_CONNECTION
    
    Dzięki niej wszystkie pakiety ze znacznikiem "1" powinny być trasowane zgodnie z tablicą SSH_CONNECTION.

    Niestety, jeżeli po wykonaniu tych czynności spróbuję nawiązać jakieś połączenie ssh, to dostaję ,,time-out''.
    Okazuję się jednak, że jeżeli w punkcie trzecim wpiszę:

    Kod: Zaznacz cały

    ip rule add to xxx.xxx.xxx.xxx table SSH_CONNECTION
    
    gdzie xxx.xxx.xxx.xxx, to adres z którym próbuję nawiązać połączenie ssh, to wtedy wszystko działa jak należy i połączenie jest ustanawiane zgodnie z tym co zapisane w tablicy trasowania SSH_CONNECTION.
    Być może ma ktoś pomysł dlaczego opcja ze znacznikiem MARK nie działa?
piroaa
Beginner
Posty: 324
Rejestracja: 11 kwietnia 2008, 14:46

Post autor: piroaa »

Kod: Zaznacz cały

iptables -t mangle -A OUTPUT -j MARK --set-mark 0x01
Plus to:
http://www.trzepak.pl/viewtopic.php?f=18&t=30396
kanonier
Posty: 7
Rejestracja: 29 października 2007, 21:24

Post autor: kanonier »

Problem udało się rozwiązać. Do prawidłowego działania przedstawionej przeze mnie konfiguracji, konieczne jest jeszcze dodanie jednej reguły do firewalla:

Kod: Zaznacz cały

iptables -A POSTROUTING -t nat -o ppp0 -j MASQUERADE
Dla przypomnienia ppp0 to interfejs, po którym ma lecieć tylko ruch ssh.
Moja jako taka wiedza pozwala mi jedynie stwierdzić, że maskarada robi coś z adresem pakietów wychodzących przez interfejs ppp0. Chodzi o to, że bez tej reguły wszystkie pakiety miały adres źródłowy interfejsu wlan1 i konieczne jest ustawienie tam adresu, który jest przyporządkowany interfejsowi ppp0. Ale to tylko taka moja teoria oparta na wiedzy zdobytej w internecie. Jeżeli na forum jest ktoś, kto mógłby to potwierdzić, to będę wdzięczny za jakiś komentarz.
ODPOWIEDZ