Hvordan kan jeg holde passord usynlig når jeg kjører en kommando som et SSH-argument?
Å holde passordene godt sikret er noe vi alle trenger å ta på alvor, men hva gjør du hvis et bestemt program eller en app viser passordet ditt i vanlig øye mens du skriver det? Dagens SuperUser Q & A-innlegg har løsningen på et frustrert leserens passordproblem.
Dagens Spørsmål & Svar-sesjon kommer til oss med høflighet av SuperUser-en underavdeling av Stack Exchange, en fellesskapsdrevet gruppering av Q & A-nettsteder.
Spørsmålet
SuperUser leser user110971 ønsker å vite hvordan du holder passord usynlig når du kjører en kommando som et SSH-argument:
Hvis jeg kjører denne kommandoen og begynner å skrive MySQL-passordet, er passordet synlig på skjermen:
- ssh bruker @ server 'mysql -u bruker -p'
Hvordan kan jeg forhindre dette? Hvis jeg logger inn via SSH og utfører MySQL-kommandoen, fungerer alt bra.
Hvordan kan du holde passord usynlig når du kjører en kommando som et SSH-argument?
Svaret
SuperUser-bidragsyter Toby Speight har svaret for oss:
Hvis du oppgir en ekstern kommando for å kjøre, tillater ikke SSH a tty, slik at fjernkommandoen ikke kan deaktivere ekko. Du kan tvinge SSH til å gi en tty bruker -t alternativ:
- ssh -t bruker @ server 'mysql -u bruker -p'
Ekvivalent alternativ (for -o eller for config-filen) er RequestTTY. Jeg vil advare mot å bruke den i config-filen fordi den kan ha uønskede effekter for ikke-interaktive kommandoer.
Har du noe å legge til forklaringen? Lyder av i kommentarene. Vil du lese flere svar fra andre tech-savvy Stack Exchange-brukere? Sjekk ut hele diskusjonstråden her.
Bilde Kreditt: Linux Skjermbilder (Flickr)