Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Strony: 1





Cenzor wirtualnego świata
Próbuję właśnie sobie skonfigurować VPN po SSH. Generalnie rzecz biorąc, to udało mi się przepchnąć cały ruch po SSH i wszystko działa jak należy. Teraz chciałem ten cały mechanizm wpiąć na jedno polecenie ifup. Wtedy po wydaniu "ifup tun9" na kliencie, tunel by został zestawiony, a trasy odpowiednio skonfigurowane. Problem w tym, że by mi ten VPN działał tak jak chcę to muszę dodać min. trasę typu:
ip route add 11.22.33.44/32 via 192.168.1.1
Ten 11.22.33.44, to jest adres zewnętrzny mojego serwera, zaś 192.168.1.1 to adres bramy domyślnej klienta na jego zewnętrznym interfejsie sieciowym
Jeśli dodałbym do pliku /etc/network/interfaces ten powyższy wpis, to podniesienie interfejsu tun9 oczywiście zadziała ale tylko dla tej konkretnej konfiguracji sieciowej. Gdy wpiąłbym się do innej sieci, która będzie miała inną bramę, to wtedy trzeba by znowu edytować plik /etc/network/interfaces i ten wpis dostosować.
Pytanie jest zatem, jak adres tej bramy domyślnej ustalić, by wykorzystać go w konfiguracji interfejsów w pliku /etc/network/interfaces ?
Ostatnio edytowany przez morfik (2016-12-11 14:09:15)
Offline







Podobno człowiek...;)








interfaces ma uchwyty pre-up, ip-up, post-up, pre-down, ip-down, ale i tak chyba łatwiej to ogarniesz, jak całość odpalisz skryptem, w którym całość komend naskrobiesz z palca.
W takim przypadku adres IP to może być zmienna wytargana z dowolnego testu.
np zewn IP:
MOJEIP=$( curl checkip.dyndns.org 2>/dev/null |sed -e 's/.*Current IP Address: //' -e 's/<.*$//');
A to do ssh Andkowego, kiedy ma losowy mac i IP:
declare ANDEKIP=$(arp -a -n | grep -v incomplete | grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)")
Wersja tymczasowa.
Adres bamy wytargasz z polecenia ifconfig, ip albo route.
np tak:
https://www.cyberciti.biz/faq/how-to-find-out-the-i … play-ip-only/
Ostatnio edytowany przez Jacekalex (2016-12-11 14:01:17)
Offline





Cenzor wirtualnego świata
W sumie to mi ten SSH-VPN sprowadził się do:
iface tun9 inet static
pre-up ssh -S /var/run/ssh-vpn-tunnel-control -M -f -w 9:9 root@11.22.33.44 -p 22 'ifdown tun9; ifup tun9'
pre-up sleep 5
address 10.100.0.2
pointopoint 10.100.0.1
netmask 255.255.255.255
up ip route add 10.100.0.0/24 via 10.100.0.2
up ip route add 11.22.33.44/32 via 192.168.1.1
up ip route add 0.0.0.0/1 via 10.100.0.1 dev $IFACE
up ip route add 128.0.0.0/1 via 10.100.0.1 dev $IFACE
down ip route del 10.100.0.0/24 via 10.100.0.2
down ip route del 11.22.33.44/32 via 192.168.1.1
down ip route del 0.0.0.0/1 via 10.100.0.1 dev $IFACE
down ip route del 128.0.0.0/1 via 10.100.0.1 dev $IFACE
post-down ssh -S /var/run/ssh-vpn-tunnel-control -O exit root@11.22.33.44 -p 22No i do tego prosta konfiguracja interfejsu tun9 na serwerze. Całość działa bez problemu ale nadal nie wiem jak ten 192.168.1.1 dobrać dynamicznie. xD
Offline







Podobno człowiek...;)








Zmień 192.168.1.1 na zmienną, którą wytargasz z jakiegoś testu.
Nie wiem, co prawda, czy w interfaces to łyknie, ale w mniejszym lub większym skrypcie pójdzie bez problemu.
Offline





Cenzor wirtualnego świata







Podobno człowiek...;)








Do czasu Ipv6 (od roku do 5 lat) powinno wystarczyć. xD
PS:
ip route show | grep default |awk '{print $3}'tak jest ładniej, choć też lamerstwo. ;P
A tak jest prawidłowo:
ip route show | awk '$1 =="default" {print $3}'xD
Ostatnio edytowany przez Jacekalex (2016-12-11 14:12:00)
Offline





Cenzor wirtualnego świata
Strony: 1