Comandos A-Z

Como manter sessões SSH remotas em execução após a desconexão

Como manter sessões SSH remotas em execução após a desconexão

SSH (Secure Shell) é o sistema de rede criptografado de ponta a ponta que permite aos usuários obter acesso remotamente do cliente ao servidor ou sistema. Por causa de seu sistema de segurança de criptografia assimétrica, é muito seguro acessar o servidor, mesmo de uma rede de cliente insegura. Mas, às vezes, devido à inatividade ou sinal de rede ruim, o acesso remoto SSH pode ser desconectado. Seja qual for o motivo, como administrador do Linux, é um trabalho vital manter as sessões e processos SSH em execução após a desconexão.

Razões pelas quais as sessões SSH são desconectadas


Resumindo, erro de proxy de túnel SSH, tempo limite de rede, uso da porta de rede errada ou mesmo não estar logado em seu sistema como usuário root também pode fazer com que você se desconecte da administração remota SSH. Neste post, vamos discutir as perguntas mais frequentes sobre SSH; como manter sessões SSH e processos em execução após a desconexão ocorrer.

1. Continue executando sessões SSH usando o tela Comando


O tela comando é o comando mais usado e útil para administração SSH. O tela comando pode resolver problemas de nome de host para endereços IPv4 e IPv6. Com funcionalidades raiz, o tela comando pode sair ou descartar uma sessão da extremidade do cliente para a extremidade do servidor. Se você é um novato no Linux SSH, aqui estão algumas CLI que podem ajudá-lo a instalar e encontrar manuais do tela comando.

Para Ubuntu:

tela de instalação do apt $ sudo

Para OpenSUSE:

Tela de instalação do $ sudo zypper

Para Arch Linux:

tela $ sudo pacman -S

Para Red Hat Enterprise Linux:

tela de instalação $ sudo yum

Depois de terminar a instalação, comece a monitorar a tela inicial do sistema.

$ screen $ screen --help

Depois de ter o acesso, SSH no servidor, você deseja obter acesso remotamente. Se você está planejando um longo trabalho noturno em sua estação, mas não quer desligar seu cliente SSH, você pode usar o tela comando. Isso pode desligar sua sessão de tela, mas não se preocupe, as tarefas que você iniciou serão concluídas.

Para desligar a tela, pressione Ctrl-A e depois Ctrl-D do seu teclado. Você pode fazer login para monitorar o andamento do trabalho a qualquer momento a partir do seu terminal. Para reconectar ou conectar com o existente com a sessão, use a seguinte CLI.

$ screen -r screen -D -r

2. Continue executando sessões SSH usando o tmux Ferramenta


O tmux ou multiplexador de terminal é uma ferramenta muito popular e útil para programadores e administradores de sistema que permite aos usuários alternar entre programa e programa no mesmo terminal. Para manter as sessões SSH em execução em segundo plano, tmux pode ser uma solução muito rápida. Ele pode desanexar e reconectar aplicativos onde os processos são mantidos em execução em segundo plano. Aqui está a instrução de instalação de tmux para distros Linux.

Para Arch Linux:

$ sudo pacman -S tmux

Para Red Hat Enterprise Linux:

$ sudo yum install tmux

Para Ubuntu:

$ sudo apt-get install tmux

Para OpenSUSE:

$ sudo zypper install tmux

Depois de instalar tmux, Comece o sessão tmux usando comandos de terminal. Não vai demorar muito para ser instalado. Depois de terminar a instalação, você pode começar com tmux. Para iniciar tmux, basta digitar tmux no terminal.

$ tmux

Se você precisar executar mais de um multiplexador de terminal para manter todas as sessões SSH em execução em segundo plano, nesse caso, você pode encontrar dificuldades para alternar entre tmux para tmux. Aqui estão as linhas de comando para mudar uma da outra.

$ tmux detach $ tmux attach $ tmux attach -t 2

Para verificar todos os tmux tela use o tmux Lista comando.

$ tmux ls

3. Continue executando sessões SSH usando o Byobu Ferramenta


A ferramenta byobu é usada principalmente para administração remota de SSH e monitoramento na tela no Linux. É um software de código aberto e pode ser usado junto com o tmux ou o tela ferramenta. Você pode ver o status atual, notificações e mensagens com o Byobu ferramenta. Embora o Byobu vem instalado por padrão com o Ubuntu. Mas se isso não acontecer, você pode instalá-lo dentro de sua máquina Linux. Para verificar se Byobu está instalado ou não em seu sistema verificando as outras versões do byobu.

$ byobu --version

Em seguida, habilite o byobu, ele ajudará a manter suas sessões SSH rodando em segundo plano mesmo após a desconexão.

$ byobu-enable

Aqui, os processos de instalação são explicados com CLI.

Para Ubuntu:

$ sudo apt install byobu

Para OpenSUSE:

$ sudo zypper addrepo https: // download.opensuse.org / repositories / utilities / openSUSE_Leap_42.3 / utilitários.repo
$ sudo zypper atualização $ sudo zypper install byobu

Para Arch Linux:

$ yaourt -S byobu $ packer -S byobu

Para Red Hat Enterprise Linux:

$ sudo yum install byobu

Para Fedora:

$ sudo dnf install byobu

Para começar com Byobu, apenas digite byobu no terminal e pressione Enter.

$ byobu

Agora, se você estiver usando o tmux ou o tela, você pode escolher e selecionar entre qualquer um deles para o back-end colaborado.

$ byobu-select-backend

Agora, você pode gerenciar e manter suas sessões SSH em execução em segundo plano após a desconexão, use as teclas de função do teclado do sistema. Para começar a usar o SSH junto com o byobu, pressione CTRL + SHIFT + F2 do seu teclado para habilitar o ambiente SSH. Para mover suas sessões SSH para frente e para trás, você pode usar ALT + UP e ALT + DOWN.

Para desconectar suas sessões SSH pressione F6 do teclado. Agora, se você está procurando desconectar, mas não desconectar a sessão, aqui está. Para desconectar as sessões SSH e ainda se conectar, pressione SHIFT + F6. Aqui está mais um comando de teclado extra para você. Para manter apenas a sessão de tela atual ativa e fechar todas as outras janelas, pressione ALT + F6.

4. Continue executando sessões SSH usando o nohup Comando


O nohup ou o comando 'no hangup' é uma ferramenta alternativa muito útil para a tela ou o tmux. Ele também permite que os usuários mantenham as sessões SSH em execução, mesmo depois de serem desconectados. O nohup comando diz ao sistema para executar todos os processos em segundo plano, evitando que o sinal desligue (SIGHUP).

Para verificar o nohup manuais e opções de seu terminal Linux, digite o seguinte comando no terminal e pressione Enter.

opções de $ nohup

Para verificar as listas de empregos atualmente ativos, use o -eu comando do seu terminal.

$ jobs -l

Agora, para a conexão SSH, para evitar a perda de conexão e manter suas sessões em execução após a desconexão, use as linhas de comando nohup seguidas de seu trabalho. Você também pode obter a lista de saída de seus trabalhos em um arquivo de texto usando o comando cat junto com o comando nohup.

$ nohup ./Olá.sh $ cat nohup.Fora

Para executar um processo em segundo plano, você pode usar o E símbolo logo após o nohup comando. Por exemplo, se eu quiser testar o ping para wordpress-408970-1286763.cloudwaysapps.com em segundo plano, a linha de comando será como a seguinte linha abaixo. E quando você achar que seu trabalho está feito, para ver o resultado, use o pgrep comando.

$ nohup ping ubuntupit.com & $ pgrep -a ping

5. Continue executando sessões SSH usando o repudiar Comando


Se você não tem os privilégios de root do sistema, talvez este resolva seu problema. O repudiar comando pode tornar qualquer tarefa não listada do registro do seu sistema em execução. Assim, ele pode ocultar um processo em andamento para evitar todos os erros de logout automático ou desligamento do sinal (SIGHUP). Você pode realmente usar o comando de gerenciamento de processo diswon para manter suas sessões SSH em execução, ocultando sua tarefa.

Para remover ou ocultar sua tarefa do gerenciador de tarefas, use o comando diswon no terminal.

$ disown 

Para verificar o status atual da tarefa, use o comando shell atual.

shell $ atual

Você também pode definir uma lista de tarefas em um comando de terminal de linha única.

$ disown jobs1 $ disown jobs1 jobs2… jobsn

E para verificar a lista de tarefas, use o -eu comando.

$ jobs -l

Para remover todos os trabalhos atuais da janela, digite o -uma sintaxe seguida pelo comando disown.

$ disown -a

Para remover apenas um ou o trabalho em execução da janela, use o -r sintaxe seguida pelo comando diswon.

$ disown -r

Agora, para SSH, para executar um trabalho em segundo plano após a sessão ser conectada, use o -h sintaxe. Este processo pode manter suas sessões SSH funcionando mesmo após a desconexão.

$ disown -h jobID $ disown -h% 2

Consertando o tempo esgotado Erro de SSH no RHEL


Quando você está conectado ao SSH no Red Hat Enterprise Linux (RHEL), pode ter um problema frequente de tempo limite e perder a conexão. Este problema ocorre devido ao formulário de tempo de resposta inválido tanto do lado do cliente quanto do lado do host. Em seu diretório raiz do Red Hat, você deve encontrar e editar o sshd_config.TXT arquivo para resolver este problema de tempo limite. Assim que terminar, você pode recuperar sua conexão SSH mesmo depois de ser desconectado.

Lá dentro do sshd_config.TXT, arquivo você encontrará duas opções nomeadas como ClientAliveInterval e ClientAliveCountMax, você precisa editar esses arquivos de log para maximizar o tempo de resposta do servidor para o cliente. O intervalo de tempo limite é calculado multiplicando os valores de ClientAliveInterval e ClientAliveCountMax.

Tudo que você precisa é editar o tempo de duração desses dois valores de acordo com o seu sistema e a duração da resposta da rede. Permite que você queira maximizar o tempo de 10 minutos para o final do intervalo do cliente e 5 vezes para a contagem do cliente, então seu registro de texto dentro do sshd_config.TXT arquivo será como abaixo. E então, reinicie o SSH.

ClientAliveInterval 10m ClientAliveCountMax 5

Pensamentos finais


Para um administrador de sistema, manter sessões e processos SSH em execução é um trabalho crucial para satisfazer o cliente e cumprir a tarefa. Ficar desconectado e perder sessões frequentes é muito chato e incômodo. Portanto, nesta postagem, tentamos discutir e ilustrar as razões pelas quais as sessões SSH são desconectadas e também descrevemos todos os métodos possíveis sobre como manter as sessões SSH em execução após a desconexão.

Se você já passou pelo incômodo de desconectar uma sessão SSH e sabe como isso pode ser irritante, compartilhe sua experiência conosco. E também comente se você tiver algo a acrescentar ou perguntar algo relacionado a esta postagem na seção de comentários. Não se esqueça de compartilhar esta postagem com seus amigos nas redes sociais.

Como mostrar a sobreposição de OSD em aplicativos e jogos Linux em tela cheia
Jogar jogos em tela cheia ou usar aplicativos em modo de tela cheia sem distração pode cortar você das informações relevantes do sistema visíveis em u...
Top 5 cartas de captura de jogos
Todos nós vimos e amamos streaming de jogos no YouTube. PewDiePie, Jakesepticye e Markiplier são apenas alguns dos melhores jogadores que ganharam mil...
Como desenvolver um jogo no Linux
Uma década atrás, poucos usuários de Linux preveriam que seu sistema operacional favorito um dia seria uma plataforma de jogos popular para videogames...