SSH 연결은 어떻게 비활성화됩니까?

SSH 연결은 어떻게 비활성화됩니까?

원격 서버에서 프로그램을 실행하기 위해 SSH 연결을 설정했습니다. 프로그램은 10초마다 터미널에 디버그 정보를 인쇄합니다. SSH 창을 오랫동안 열어두면(예: 10시간) SSH 연결이 비활성화됩니까? SSH 세션에서 활동은 어떻게 정의됩니까? 세션을 유지하려면 x초마다 명령을 입력/실행해야 합니까?

답변1

특별한 작업을 수행할 필요는 없습니다. SSH는 비활성으로 인해 연결을 종료하지 않습니다. 따라서 비활성 기간이 정의되지 않았습니다.이내에SSH.

그러나 귀하와 귀하의 서버 사이의 네트워크 경로에 있는 장치 중 하나가 경로를 잃을 수 있으며 일반적으로 한쪽에서의 활동으로 충분하지만 항상 그런 것은 아닙니다("도착 확인 패키지", 승인, 서버에서 서버로 돌아가는 것). TCP를 사용할 때 클라이언트).
양측의 트래픽은 지속적인 연결을 보장하지 않습니다. DSL 모뎀이 있고 공급자가 매일 새 IP 주소를 받기로 결정하면 연결이 끊어집니다.

다음을 삽입하여 클라이언트가 정기적으로 일부 패킷을 보내도록 할 수 있습니다.

ServerAliveInterval 5

또는 10초마다 서버에서 들어오는 트래픽 외에도 5초마다 클라이언트에서 서버로의 트래픽이 발생하도록 할 수 있습니다 /etc/ssh/ssh_config.~/.ssh/config

연결을 재설정하는 DSL 모뎀에 대한 더 간단한 "솔루션"은 다음에서 서버측 소프트웨어를 실행하는 것입니다.tmux또는screen: 연결이 끊어진 경우 SSH를 통해 다시 서버에 접속하거나 발급하면 tmux attach중단 screen -r없이 서버 프로그램을 계속해서 볼 수 있습니다.

tmux/를 사용하는 것은 screen연결이 끊어지는 것에 대해 그다지 걱정하지 않지만 그렇게 하면 서버 프로그램이 중지되는 결과를 가져올 경우 특히 유용합니다. 이를 위해 원본 프로그램의 출력을 file 및 use로 리디렉션할 수도 있지만 tail -f그렇게 하면 (필요한 경우) 서버 프로그램과 쉽게 상호 작용할 수 없습니다. tmux( screen기본 형태에서는) 사용하기 쉽지만 그래픽 터미널의 슬라이더를 사용하여 뒤로 스크롤할 수 없는 등의 부작용이 있습니다. 서버가 버퍼에서 다시 스크롤하도록 하려면 키보드 단축키를 사용해야 합니다. 저것).

연결을 끊는 장치에 대한 보다 유연한 솔루션은 다음을 사용하는 것입니다.mosh. 이는 SSH를 사용하여 일부 비밀 정보를 교환한 다음 IP 주소 중 하나 또는 둘 다 변경되더라도 재연결을 허용합니다. 그러나 이것은 설정하고 작업하는 것이 더 어렵습니다.

귀하의 경우 tmux연결이 실제로 비활성화되면 사용을 시작하고 수동으로 다시 연결합니다.

답변2

또한 SCREEN 명령을 사용하는 것도 정말 도움이 됩니다. 이를 통해 모든 명령을 실행할 수 있으며 SSH 연결에 대해 걱정하지 않아도 됩니다.

관련 정보