Centos 7, VPN, VPS i 2 adres IP


(csrpl) #1

Witam. Rzadko się decyduję na pisanie pytań na forach, gdyż zwykle wszystkie problemy już ktoś poruszał w internecie, niestety nie w tym przypadku. Do rzeczy.
Mam VPSa, który robi już od jakiegoś czasu jako serwer www. Pomyślałem, że fajnie by było sobie go wykorzystać też na VPNa. Zakupiłem więc 2 adres IP u mojego dostawcy usług i dodałem (niestety jako alias, nie mam dostępu rzecz jasna do hypervisora więc nie mogę sobie dodać nowego adaptera sieciowego). Powiedzmy, że nazywa się eth0:1.
Z racji posiadania 2 adresu IP i ogólnej niechęci, żeby ruch wychodził z tego samego adresu co serwer WWW stoi chciałbym puścić cały ruch VPNa przez ten 2 adres. Dodam tylko, że na Centosie siedzi firewalld i nie wchodzi w grę wywalenie firewalld i używanie iptables (takie rozwiązanie sobie wykluczyłem, chcę zrozumieć bardziej jak działa firewalld).
VPN działa. Mogę się łączyć przez ten 2 adres rzecz jasna, ale czego bym nie próbował to ruch ZAWSZE wychodzi z adresu podstawowego.

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to-source [ip_adres_2]

niestety nie ma możliwości zrobienia czegoś takiego (wszystko co znalazłem w internecie dotyczące firewalld z SNAT nie działa).

Jakieś pomysły? Siedzę nad tym pół dnia.


(roobal) #2

Spróbuj tak.
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0:1 -j SNAT --to-source x.x.x.x


(csrpl) #3

@roobal
A w firewalld? Bo tak jak wspomniałem iptables nie śmiga na rhel-owych distro a nie chce wywalać firewalld, żeby korzystać z iptables.


(marcin82) #4

A takie poradniki widziałeś na przykład?


Z czego korzystałeś do tej pory?

SUSEFirewall jak i Firewalld - de facto pochodzący z Fedory można w każdej chwili wyłączyć.


(csrpl) #5

W tym 2 nie ma nic nadzwyczajnego, ot zwykłe MASQUERADE pod koniec, podstawa, bez tego ruch w ogóle nie pójdzie. Pierwszy jest obszerny, ale przeleciałem na szybko i też nie znalazłem nic na temat jak puścić ruch na drugi adres.
No i tak jak pisałem, nie chce wyłączać firewalld.


(csrpl) #6

Udało mi się.

firewall-cmd --permanent --direct --add-rule ipv4 nat POSTROUTING 0 -s 10.8.0.0/16 -j SNAT --to [ip]

Śmiga jak trzeba.


(roobal) #7

Nie znam firewald, póki co, trzymam się klasycznych i sprawdzonych narzędzi.