Cum pot păstra parolele invizibile când se execută o comandă ca argument SSH?
Păstrarea parolelor bine securizate este ceva pe care trebuie să le luăm cu toții în serios, dar ce faceți dacă un anumit program sau aplicație vă afișează parola în mod clar, pe măsură ce o tastați? Postul de astăzi SuperUser Q & A are soluția la o problemă de parolă a cititorului frustrat.
Sesiunea de întrebări și răspunsuri din ziua de astăzi vine de la amabilitatea SuperUser - o subdiviziune a Stack Exchange, o grupare bazată pe comunitate a site-urilor web Q & A.
Intrebarea
Cititorul de utilizatori SuperUser user110971 dorește să știe cum să păstreze parolele invizibile când executați o comandă ca argument SSH:
Dacă execut această comandă și încep să introduc parola MySQL, parola este vizibilă pe ecran:
- ssh utilizator @ server 'mysql -u user -p'
Cum pot preveni acest lucru? Dacă mă conectez prin SSH și execut comanda MySQL, atunci totul funcționează bine.
Cum puteți păstra parolele invizibile când executați o comandă ca argument SSH?
Răspunsul
Contribuabilul Super Utilizer Toby Speight are răspunsul pentru noi:
Dacă furnizați o comandă la distanță pentru a rula, SSH nu alocă a tty, astfel încât comanda de la distanță nu poate dezactiva ecou. Puteți forța SSH să ofere a tty folosind -T opțiune:
- ssh -t utilizator @ server 'mysql -u utilizator -p'
Opțiunea echivalentă (pentru -o sau pentru fișierul de configurare) este RequestTTY. Aș fi avertizat să nu-l folosiți în fișierul de configurare deoarece poate avea efecte nedorite pentru comenzi non-interactive.
Aveți ceva de adăugat la explicație? Sunați în comentariile. Doriți să citiți mai multe răspunsuri de la alți utilizatori de tehnologie Stack Exchange? Check out discuția completă aici.
Credit de imagine: Imagini de ecran Linux (Flickr)