Skip to content

Jak sprawić, by hasła były niewidoczne podczas uruchamiania polecenia jako argumentu SSH?

29 de lipiec de 2021
keep passwords invisible when running a command as an ssh argument 00

Dbanie o dobre zabezpieczenie naszych haseł to coś, co wszyscy musimy traktować poważnie, ale co zrobić, jeśli konkretny program lub aplikacja wyświetla hasło w widocznym miejscu podczas wpisywania? Dzisiejszy post z pytaniami i odpowiedziami dla SuperUser zawiera rozwiązanie problemu hasła sfrustrowanego czytelnika.

Dzisiejsza sesja pytań i odpowiedzi przychodzi do nas dzięki uprzejmości SuperUser — pododdziału Stack Exchange, społecznościowej grupy witryn internetowych z pytaniami i odpowiedziami.

Pytanie

Czytnik SuperUser user110971 chce wiedzieć, jak zachować niewidoczne hasła podczas uruchamiania polecenia jako argumentu SSH:

Jeśli uruchomię to polecenie i zacznę wpisywać hasło do MySQL, hasło będzie widoczne na ekranie:

  • ssh użytkownik@serwer 'mysql -u użytkownik -p’

Jak mogę temu zapobiec? Jeśli zaloguję się przez SSH i wykonam polecenie MySQL, wszystko działa dobrze.

Jak zachować niewidoczność haseł podczas uruchamiania polecenia jako argumentu SSH?

Odpowiedź

Współtwórca SuperUser Toby Speight ma dla nas odpowiedź:

Jeśli podasz zdalne polecenie do uruchomienia, SSH nie przydzieli tty, więc polecenie zdalne nie może wyłączyć echa. Możesz zmusić SSH do dostarczenia tty używając -T opcja:

  • ssh -t użytkownik@serwer 'mysql -u użytkownik -p’

Równoważna opcja (dla -o lub dla pliku konfiguracyjnego) jest Żądanie TTY. Ostrzegałbym przed użyciem go w pliku konfiguracyjnym, ponieważ może mieć niepożądane efekty dla nieinteraktywnych poleceń.

Masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych doświadczonych technologicznie użytkowników Stack Exchange? Sprawdź pełny wątek dyskusji tutaj.

Źródło obrazu: Zrzuty ekranu z Linuksa (Flickr)

Czy ten post był pomocny?