Używam ~/.ssh/config
pliku, dzięki czemu mogę łatwo wprowadzić ssh myserver
i podać poprawną nazwę użytkownika, port, nazwę hosta, plik tożsamości itp.
Jednak w przypadku wielu serwerów pierwszą rzeczą, którą robię, jest su -
zalogowanie się jako root. Mogę zrobić to wszystko w jednej komendy w linii poleceń tak: ssh myserver -t su -
. Czy jest coś, co mogę dodać do mojego ~/.ssh/config
pliku, co zrobi to za mnie? Chcę być w stanie to zrobić ssh myserver-root
i to samo, co ssh myserver -t su -
?
Wiem o PermitRootLogin
tym, to jest wyłączone dla tego serwera i niechętnie go włączam. Wolałbym raczej sprawdzić, czy można to zrobić za pomocą ssh po stronie klienta.
Użyj mocy Luke!
użyj
RequestTTY force
w swoim~/.ssh/config
dla pożądanego hosta.btw. jest to również omówione tutaj /unix/27713/ssh-config-way-to-spectify-pseudo-tty-allocation-and-command-execution-like-sc/294468#294468
źródło
Dlaczego nie dodać skryptu do katalogu na swojej ścieżce (lub jego aliasu) o nazwie rssh, np .:
To jest po prostu:
źródło
Nie znalazłem żadnej opcji konfiguracji dla alokacji pseudo-tty w źródle OpenSSH.
Ale mogę dać poradę dotyczącą PermitRootLogin, ustaw ją na:
I zezwalaj tylko na logowanie użytkownika root za pomocą kluczy SSH
źródło
Co powiesz na dodanie czegoś takiego w ~ / .bashrc po stronie serwera?
źródło
Najlepszą odpowiedzią jest prawdopodobnie kombinacja rkthkr i jrg . Użyj,
PermitRootLogin
aby wymagać klucza, a następnie umieść klucz zecommand
słowem kluczowym tylko w pliku autoryzowanych kluczy użytkownika root.źródło