Na moim komputerze korzystam z OpenVPN, które używają interfejsu tun0. Chcę, aby sshd nasłuchiwał tylko na tym interfejsie.
Wiem, że mogę podać adres IP, na którym chcesz nasłuchiwać
/etc/ssh/sshd_config
z
ListenAddress 0.0.0.0
dyrektywa. Ale mój adres IP się zmieni, więc nie mogę tutaj wybrać adresu IP, który zawsze jest prawidłowy. Wiem, że mogę uruchomić demona tylko wtedy, gdy VPN jest włączony - to nie jest problem.
Jak sprawić, aby sshd nasłuchiwał tylko na określonym interfejsie (tun0)?
tun0
?Odpowiedzi:
Nie możesz tego zrobić bezpośrednio, ponieważ sshd rozpoznaje tylko adresy IP. Możesz być w stanie zrzucić coś za pomocą skryptu openvpn up
Zobacz także
--down
opcję czyszczenia i odpowiednie części dokumentacji szczegółowo opisujące zabezpieczenia skryptu itp.Przekonasz się, że adres IP urządzenia tun jest przekazywany do skryptu jako zmienna środowiskowa. Również sshd przyjmuje opcje w wierszu poleceń formularza
-o opcja Można użyć do podania opcji w formacie użytym w pliku konfiguracyjnym. Jest to przydatne do określania opcji, dla których nie ma oddzielnej flagi wiersza polecenia. Aby uzyskać szczegółowe informacje na temat opcji i ich wartości, zobacz sshd_config (5)
Więc możesz użyć
Prawdopodobnie masz jakąś metodę poza pasmem, aby porozmawiać ze swoim VPS, aby kiedy to się zepsuło, możesz skontaktować się z serwerem.
źródło
-o ListenAddress=$(ip addr | awk '/inet/ && /tun0/{sub(/\/.*$/,"",$2); print $2}')