Passar para o conteúdo principal
Todas as coleçõesComputadores, Servidores e MáquinasLinux
Como Configurar o Terminal do Linux para o Acesso Direto de Computadores SSH
Como Configurar o Terminal do Linux para o Acesso Direto de Computadores SSH
Atualizado há mais de 2 semanas

Neste artigo, vamos aprender a adicionar o terminal como software padrão para acesso direto para computadores com conexão SSH dentro do VaultOne.

Pré-requisitos

Antes de começar, você precisa de:

  • Sistema Linux

  • Acesso ao Terminal

  • Computador/Servidor configurado para conexão SSH no VaultOne

Instalação

Primeiro passo: Adicionar o script handler

No diretório home do usuário, crie um diretório chamado vaultone-handler:

mkdir ~/vaultone-handler

Após, navegue para dentro da pasta e crie um arquivo chamado vaultone-ssh- handler.sh

touch ssh-handler.sh

Altere as permissões do arquivo para que possa ser executado pelo usuário.

chmod u+x ssh-handler.sh

Abra o arquivo com o editor de sua preferência e adicione o conteúdo abaixo no arquivo e salve o arquivo.

#!/bin/bash

open_terminal() {
  local term_cmd=""

# Detecta o terminal disponível e define o comando correspondente
if command -v gnome-terminal &> /dev/null; then
  term_cmd="gnome-terminal -- $1"
elif command -v konsole &> /dev/null; then
  term_cmd="konsole -e $1"
elif command -v xfce4-terminal &> /dev/null; then
  term_cmd="xfce4-terminal -- $1"
elif command -v xterm &> /dev/null; then
  term_cmd="xterm -e $1"
elif command -v urxvt &> /dev/null; then
  term_cmd="urxvt -e $1"
elif command -v lxterminal &> /dev/null; then
  term_cmd="lxterminal -e $1"
elif command -v mate-terminal &> /dev/null; then
  term_cmd="mate-terminal -- $1"
elif command -v terminology &> /dev/null; then
  term_cmd="terminology -e $1"
else
  echo "No compatible terminals found. Please install a terminal"
exit 1
fi

eval "$term_cmd" &
}

main() {
   if [[ "$1" != "ssh://"* ]]; then
       echo "Is not valid SSH URL"
exit 1
fi

  local url=${1#ssh://}

   local user_pass=${url%%@*}

   local host_port=${url%%*@}
   local host=${host_port%%:*}
   local port=${host_port##*:}
  [ "$port" == "$host_port" ] && port=''

   local cmd="$host"
   [ -n "$user" ] && cmd="$user@$cmd"
   [ -n "$port" ] && cmd="$cmd -p $port"
  cmd="ssh $cmd -o StrictHostKeyChecking=no -o UserKnownHosts

  open_terminal "$cmd"

}

main "$1" 

Segundo passo: Adicionar a configuração do SSH Protocol Handler

Navegue para pasta ~/.local/share/applications/ e crie o arquivo SSH-Handler.desktop

cd ~/.local/share/applications/
touch SSH-Handler.desktop

Altere as permissões do arquivo para que possa ser executado pelo usuário.

chmod u+x SSH-Handler.desktop

Depois, abra o arquivo com o editor de sua preferência e adicione o conteúdo abaixo no arquivo. Antes de salvar o arquivo, altere a palavra seu-usuario, presente na linha Exec= , para o seu usuário.

[Desktop Entry]
Type=Application
Name=SSH Handler
Exec=/home/seu-usuario/vaultone-handler/ssh-handler.sh %u
Icon=utilities-terminal
StartupNotify=false
MimeType=x-scheme-handler/ssh

Terceiro passo: Registrar o Protocol Handler no sistema

Para que o sistema possa identificar os links ssh:// e execute o script, registre o script como um Protocol Handler para SSH.

xdg-mime default SSH-Handler.desktop x-scheme-handler/ssh

Passo 4: Conectar em computador via SSH usando Acesso Direto

Com todos passos anteriores configurados, vamos ao VaultOne e conectar em um servidor via SSH.

Selecione o seu servidor e clique em Conectar

Screenshot 2024-06-12 at 18.26.08.png

Depois clique em Acesso Direto

Screenshot 2024-06-12 at 18.27.02.png

Por fim, clique em Abrir

Screenshot 2024-06-12 at 18.27.48.png

Um terminal deverá abrir conectando o seu computador ao Bastion do seu conector, já configurado para conectar-se ao computador selecionado. Siga os passos para autenticação dentro do bastion para concluir a conexão com o computador.

Screenshot 2024-06-12 at 18.28.38.png

Dúvidas? Entre em contato com [email protected]

Respondeu à sua pergunta?