Eu uso o ~/.ssh/config
arquivo para que eu possa entrar facilmente ssh myserver
e ele fornecerá o nome de usuário, porta, nome do host, arquivo de identidade etc.
No entanto, para muitos servidores, a primeira coisa que faço é entrar su -
para fazer login como root. Eu posso fazer isso tudo em um comando na linha de comando da seguinte forma: ssh myserver -t su -
. Existe algo que eu possa adicionar ao meu ~/.ssh/config
arquivo que faça isso por mim? Eu quero ser capaz de fazer ssh myserver-root
e fará a mesma coisa que ssh myserver -t su -
?
Eu sei PermitRootLogin
, isso está desativado para este servidor e estou relutante em ativá-lo. Prefiro ver se existe uma maneira de fazer isso usando ssh no lado do cliente.
Use a força Luke!
use
RequestTTY force
no seu~/.ssh/config
para o host desejado.btw. isso também é discutido aqui /unix/27713/ssh-config-way-to-spectify-pseudo-tty-allocation-and-command-execution-like-sc/294468#294468
fonte
Por que não adicionar um script a um diretório no seu caminho (ou um apelido para ele) chamado rssh como:
Então é apenas:
fonte
Não encontrei nenhuma opção de configuração para alocação de pseudo-tty na fonte OpenSSH.
Mas posso dar uma dica sobre o PermitRootLogin, defina-o como:
E permita apenas logins raiz com chaves ssh.
fonte
Que tal adicionar algo assim em ~ / .bashrc no lado do servidor?
fonte
A melhor resposta é provavelmente uma combinação de rkthkr e jrg . Use
PermitRootLogin
para exigir uma chave e, em seguida, coloque a chave apenas com acommand
palavra - chave no arquivo raiz_de_usuário autorizado.fonte