zmień domyślną nazwę użytkownika, gdy ssh na inny komputer [duplikat]

15

Kiedy sshmiędzy różnymi jednostkami mogę pominąć moją nazwę użytkownika ( tom) i po prostu wpisać

ssh pc_name

zamiast

ssh tom@pc_name

Podoba mi się ta funkcja i mam w zwyczaju z niej korzystać.

Niestety na jednym z moich komputerów wybrałem nazwę użytkownika tommy. Za każdym razem, gdy łączę się z tym komputerem, zapominam pisać tommy@creative_pci zastanawiam się, dlaczego moje hasło nie działa. Czy istnieje sposób, aby powiedzieć ssh, jakiej nazwy użytkownika użyć, gdy nazwa użytkownika zostanie pominięta?

Edycja: Właśnie znalazłem następujące pytanie, które jest podobne: Jak zmusić ssh do zalogowania się jako właściwy użytkownik? Nie pojawiło się to podczas moich pierwszych poszukiwań.

Tomek
źródło

Odpowiedzi:

29

Pewnie:

$ ssh -l tommy

zaloguje cię jako Tommy.

Możesz także ustawić ten trwały dla każdego hosta, mając taki rekord w ~ / .ssh / config:

Host creative_pc
User tommy
HostName creative_pc # put the full host name here or the IP if it is static

to po prostu robisz:

$ ssh creative_pc # this is the string from Host setting

i domyślnie logujesz się tam jako Tommy

vtest
źródło
1
Idealna odpowiedź. @Tom - jeśli chcesz uzyskać więcej informacji, jest to omówione na stronie podręcznika ssh: linuxmafia.com/pub/os2/stahl-ssh/snafu-mirror/ssh.html
James T Snell
Dla tych, którzy chcą domyślnego użytkownika logowania dla WSZYSTKICH zdalnych serwerów. Użyj „*” jako symbolu wieloznacznego hosta (host *).
Langusten Gustel
1
Dla siebie mam w pliku pojedynczą linię użytkownika, która ustawia ją globalnie. Host nie jest wymagany.
Robert
Uważam, że pole „HostName” jest opcjonalne. To było dla mnie. Dzięki za wskazówkę!!
macetw
superuser.com/questions/64996/… jest jedyną właściwą odpowiedzią.
hopeseekr
6

Mam dużą listę serwerów, więc użyłem aliasu powłoki, aby ustawić domyślnego użytkownika dla wszystkich hostów. Umieść poniżej linię na ~ / .bashrc:

alias ssh="ssh -l default_user"

Nadal możesz ustawić innego użytkownika, używając -l:

ssh server -l other_user

Zacząłem używać dzisiaj, wydaje się, że działa dobrze na Ubuntu 12.

Cassiano Roloff
źródło
Oto o wiele lepszy sposób: superuser.com/questions/64996/…
hopeseekr 20.09.19