10Sep
SSH oferece mais do que apenas um ambiente terminal seguro e remoto. Você pode usar o SSH para tunelar seu tráfego, transferir arquivos, montar sistemas de arquivos remotos e muito mais. Essas dicas e truques ajudarão você a tirar proveito do seu servidor SSH.
SSH não apenas se autentica em uma conexão criptografada - todo o seu tráfego SSH é criptografado. Se você está transferindo um arquivo, navegando na web ou executando um comando, suas ações são privadas.
SSH Tunneling
O tunelamento SSH permite que um servidor SSH remoto funcione como um servidor proxy. O tráfego de rede do seu sistema local pode ser enviado através da conexão segura para o servidor SSH.Por exemplo, você pode direcionar seu tráfego de navegação na web através de um túnel SSH para codificá-lo. Isso impedirá as pessoas em redes públicas Wi-Fi de ver o que você está navegando ou ignorando o site e os filtros de conteúdo em uma rede local.
Claro, o tráfego fica sem criptografia quando sai do servidor SSH e acessa a Internet. Para um servidor web que você acessa através do túnel, sua conexão parecerá ser proveniente do computador que executa o servidor SSH, não o sistema local.
No Linux, use o seguinte comando para criar um proxy SOCKS na porta 9999 em seu sistema local:
ssh -D 9999 -C usuário @ host
'
O túnel estará aberto até sua conexão SSH terminar.
Abra seu navegador da Web( ou outro aplicativo) e configure o proxy SOCKS para acessar 9999 e localhost. Use localhost porque a entrada do túnel está sendo executada em seu sistema local.
Também cobrimos usando PuTTY para configurar um túnel SSH no Windows.
Transferências de arquivos SCP
O comando scp, ou cópia segura, permite transferir arquivos entre um sistema remoto executando um servidor SSH e seu sistema local.
Por exemplo, para copiar um arquivo local para um sistema remoto, use a seguinte sintaxe:
scp Arquivo /path/to/local/ usuário @ host: arquivo /path/to/destination/
Para copiar um arquivo em um servidor SSH remoto para o sistema local, use essa sintaxe em vez disso:
scp -r usuário @ host: arquivo /path/to/remote/ Arquivo /path/to/destination/
Você também pode configurar o acesso scp sem senha e usar o scp para transferir arquivos de scripts internos.
Montagem de Diretórios Remotos
Você pode montar uma pasta remota sobre SSH e acessá-la como qualquer outro diretório em seu sistema, ignorando o tedioso processo do scp para transferências de arquivos.
Se você estiver usando o Ubuntu ou outro ambiente de trabalho baseado no GNOME com o gerenciador de arquivos do Nautilus, inicie o gerenciador de arquivos, clique no menu Arquivo e selecione Conectar ao Servidor.
Você será solicitado a inserir os detalhes do servidor SSH e suas credenciais.
Os arquivos no sistema remoto aparecerão no seu gerenciador de arquivos.
Outros ambientes de desktop Linux podem ter opções semelhantes para montar facilmente um diretório em SSH.
Se você não tem acesso a uma GUI ou prefere usar um utilitário de terminal, você pode usar sshfs para montar o sistema SSH remoto como um sistema de arquivos em seu computador.
Preservando sessões de terminal
Toda vez que você efetuar o login com SSH, você receberá uma nova sessão de terminal. Quando você desconecta, sua sessão será fechada. Se preferir preservar uma sessão de terminal entre sessões SSH, use a tela GNU ou um utilitário alternativo.
Depois de iniciar sessão no sistema remoto, execute o comando da tela para iniciar uma sessão de tela. Execute comandos dentro da sessão de tela e pressione Ctrl-a e, em seguida, d para se separar da sessão de tela.
A sessão de tela e os comandos que correm dentro dele continuam a ser executados em segundo plano. Para voltar a se conectar à sessão de tela mais tarde, execute o comando -r .
SSH pode aceitar comandos para serem executados quando você efetua login, para que você possa se conectar a um servidor SSH e reconectar-se a uma sessão de tela com um único comando:
ssh -t usuário @ tela do host -r
Se você tem acesso local ao sistemaexecutando o servidor SSH, você pode se mover entre acessar a sessão de tela localmente e remotamente.
Visualizando impressões digitais chave
Quando você se conecta ao seu servidor SSH de outro sistema, você verá uma mensagem de aviso se o sistema ainda não conhecer sua chave. Esta mensagem ajuda a garantir que o sistema remoto não seja representado por outro sistema.
No entanto, você pode ter problemas para lembrar a string longa que identifica a chave pública do sistema remoto. Para tornar a impressão digital da chave mais fácil de lembrar, habilite o recurso "chave do host visual".
Você pode ativar isso no seu arquivo de configuração SSH ou simplesmente especificá-lo como uma opção ao executar o comando SSH.Por exemplo, execute o seguinte comando para se conectar a um servidor SSH com VisualHostKey habilitado:
ssh -o VisualHostKey = sim usuário @ host
Agora você só precisa se lembrar da imagem, não uma longa string.
Você tem outras dicas para compartilhar? Deixe um comentário e avise-nos.