Wiem, że jeśli chcę uruchomić tunel SSH
ssh -d 9000 user@userserver
Jest to jedno rozwiązanie dla tunelu dynamicznego otwieranego na porcie 9000 dla użytkownika o nazwie „użytkownik” na hoście „serwer użytkownika”
Jak jednak mogę zautomatyzować ten proces w systemie Ubuntu, aby nie musiałem otwierać terminala przy każdym logowaniu i uruchomieniu tunelu? Chcę być zalogowany SSH.
Wiem, że mogłem utworzyć plik bash, ale czy nie musiałbym przechowywać hasła użytkownika serwera w postaci zwykłego tekstu, ponieważ po pierwszym poleceniu zostałbym o niego poproszony?
sshuttle
do routingu Internetu przez SSH. Nie rozwiązuje problemów z logowaniem bez hasła.sshuttle
można go równieżsshuttle
uruchomić automatycznie (uwaga, do uruchomienia wymagane są uprawnienia administratora).Odpowiedzi:
Skonfiguruj logowanie SSH bez hasła zgodnie z następującą odpowiedzią :
ssh-keygen
(pojawi się monit o podanie hasła, pozostaw puste)ssh-copy-id user@userserver
(wprowadź hasło logowania SSH po raz ostatni)Dodaj wpis startowy dla SSH:
źródło
Co powiesz na użycie konfiguracji klucza ssh, zgodnie z sugestią Source Lab, ale skonfigurowanie klucza za pomocą frazy hasła i upewnienie się, że ssh-agent działa na komputerze, więc należy go wprowadzić tylko raz na sesję logowania.
Jest kilka zalet robienia tego w ten sposób: - Możesz uzyskać zautomatyzowane logowanie bez hasła (oprócz pierwszego rozruchu / logowania) za każdym razem, gdy wydajesz polecenie ssh - Twój klucz ma hasło, więc jest bezpieczniejszy - Używanie kluczy pub / private jest bardzo standard i będą obsługiwane przez większość instalacji serwera SSH
Aby skonfigurować uwierzytelnianie klucza SSH:
Aby użyć ssh-agent / keychain (do buforowania hasła podczas sesji logowania):
Jeśli chodzi o automatyzację tworzenia tunelu podczas uruchamiania, jednym z pomysłów może być utworzenie szybkiego skryptu powłoki, który uruchamia tunel:
Następnie dodaj go jako program startowy (System -> Preferencje -> Aplikacje startowe), i tak powinien działać!
źródło
Napisałem mały skrypt dla tego: https://github.com/PHLAK/Soxy
źródło
/etc/rc.local dodaj ciąg:
źródło