O PuTTY é um ótimo front-end do Windows, sem mencionar a necessidade de um cliente SSH em primeiro lugar. No Linux, OS X e na maioria dos outros ambientes baseados em UNIX-y, o SSH geralmente é puramente linha de comando, mas ainda incrivelmente poderoso.
O cliente SSH permite armazenar uma quantidade incrível de propriedades com base em um determinado nome de host, mesmo padrões globais, no arquivo do cliente "ssh_config". Este arquivo não existe por padrão (de acordo com os comentários sobre a pergunta), mas deve ser escrito em ~/.ssh/config
.
Esse caminho equivale a:,
~
seu diretório pessoal, e expande no meu sistema para /Users/jason
.
.ssh
, o ponto inicial o torna oculto. Se você estiver no Terminal e no seu diretório pessoal, basta executar cd .ssh
e inseri-lo.
config
é o nome do arquivo, é um arquivo de texto sem formatação com parâmetros de configuração.
Uso esse arquivo para controlar os túneis que sempre uso, a chave privada necessária para a conexão, o nome de usuário (se for diferente do meu nome de usuário local), etc.
Veja a página de manual, ou man ssh_config
em sua própria máquina, que conterá a versão mais apropriada, ou você pode visualizá-la online no site do OpenBSD .
Alguns exemplos de conteúdo do meu arquivo de configuração ssh são:
ControlMaster auto
ControlPath ~/.ssh/sockets/master-%r-%h-%p
VisualHostKey yes
Host serve
Hostname 8.8.8.8
User jason
IdentityFile ~/.ssh/id_rsa
LocalForward 5901 localhost:5901
Espaço em branco é uma preferência puramente pessoal, não é necessário, exceto para separar Chaves de Valores.
As três primeiras linhas são propriedades globais, elas afetam todas as conexões SSH. A segunda seção é uma configuração específica do host.
A Host
linha especifica a tag do host que você usará ao invocar ssh
. Ex. ssh serve
. Ao executar isso, ele carrega todas as propriedades listadas até a próxima Host
linha.
Como serve
não é necessariamente um nome DNS, especifique o Hostname
que ele realmente deve conectar (não, na verdade não é o meu). User
é auto-explicativo e existe apenas para ser explícito, e esse IdentityFile
é o caminho para o arquivo de Chave Privada que ele usa para se conectar.
Por fim, LocalForward
configura uma regra de encaminhamento de porta que eu envio através do túnel SSH.
As várias sintaxes estão todas documentadas na página do manual.
Não há mecanismo para definir uma senha de texto sem formatação. A entrada de senha é SEMPRE interativa ao configurar a conexão SSH. Se você quiser login automaticamente, configurar autenticação de chave privada . Armazenar senhas em texto simples é sempre estúpido.
Eu uso isso com grande efeito. E a melhor parte? Todas as suas configurações SSH são incrivelmente portáteis, é apenas um arquivo que você precisa fazer backup / manter e mover entre sistemas! Não é tão portátil para o Windows, mas quem realmente gosta de lidar com o registro?
ssh_config
(~/.ssh/config
), mas vou manter meu pescoço afastado e entender que editar um arquivo de texto sem formatação com um formato definido não é para todos. Eu dou muito crédito ao PuTTY por sua configuração (e muita tristeza também, é verdade).