서버와 연결이 끊긴 터미널도 작동이 가능한가요?

kochung   
   조회 1987   추천 0    

안녕하세요?

SSH로 서버에 접속하여 일하고 있는 사람입니다.

터미널에 입력이 없으면,

터미널 자체적으로 연결을 끊어버리고 inactive되어

더 이상 타이핑이 불가능해진다는 사실까지는

이해를 하고 있습니다.


그런데 아주 가끔씩 터미널에 아무런 입력이 없이도

터미널이 active한 것처럼 보여서

엔터를 치면 다음줄에 프롬프트도 뜹니다.

근데 막상 실제 명령어를 입력하면,

터미널이 inactive해지면서 타이핑이 불가능합니다.

그래서 새로 터미널을 열어서 서버에 접속해서 보면,

서버와의 연결은 이미 몇 시간전에 끊겼더라구요.


제가 궁금한 사항은

"서버와의 연결이 끊긴 상태에서도

원격 터미널에 엔터를 치면,

새로운 줄에 프롬프트가 뜰 수 있는가"하는 것입니다.


리눅스 초보라서 단순히 생각해 보면,

전혀 불가능한 일이라고 여겨지거든요.

그래서 고수님들의 조언을 듣고 싶습니다.


감사드립니다.

짧은글 일수록 신중하게.
Noname1 2022-10
OS상에 TCP 기본 keepalive 타임아웃이 600초인반면
NAT을 수행하는 방화벽은 어떨지 모르겠네요. (방화벽이 tcp세션 처리하는 방법을 알고있진않아서 몰름)

SSH에서 송신측이 됐든 수신측이 됐든간에 어느한쪽이 데이터를 보내지않으면
SSH 터미널이 기본적으로 keepalive를 하는둥 안하는둥하네요..
 
그러면 ssh에 연결해두고 600초동안 가만히 놔둔상태에서
무언가 작업하려고 키를입력하는 TCP 송신을 했지만
서버측에서는 이미 닫힌 세션(소켓)이니 중단패킷을 리턴하여
이때 터미널이 꺼졌다!!

라고 밖에 생각이 안되네요.

요즘 ssh서버는 tcpkeepalive페켓을 보내는거같은데 그렇지 않은 서버도 있는것같고..
방화벽(공유기등)에서 장기간 데이터가 안흘럿다고 세션을 지워버린것으로 추측되네요
제온프로 2022-10
텔넷 접속 프로그램을 바꾸세요..
오동작 하는 것입니다.
그 프로그래머가 잘 못 짠것이죠..
레인보우7 2022-10
Putty TCP 프로그램 예외처리 알려지지 않은 버그?인것 같아보입니다.
터미널 엔터동작은 putty에서 잘못알고 내려지는 판단인것 같습니다. 소스코드가 github에 있긴하네요.

다른 SSH터미널 프로그램중에 쓸만한거 몇개 골라서 누가 오래 버티나 동시에 롱런 연결 비교테스트해보시고
동일증상이면 중간 경유루트네트워크장치나 서버쪽을 점검해보시는게 좋을듯 합니다.

대부분 ssh서버 세션타임아웃 설정을 보니까 무제한연결이 기본으로 되어 있네요.
SSH 터미널간 증상이 다르면 Putty 버그가 맞을것 같습니다.

서버에서 세션타임아웃이 무제한 연결 상태더라도,  터미널에서 아무작업이 없더라도,
주기적으로 나 살아 있음하고 알림 신호를 계속 줘야 세션이 온전히 유지될듯 하네요.
tcp_keepalive 설정이 그작업을 해주는것 같습니다.


QnA
제목Page 342/5723
2015-12   1760231   백메가
2014-05   5233806   정은준1
2021-10   2004   witbox
2020-07   2005   승우아빠
2023-02   2005   박문형
2022-04   2005   ginyunas
2021-10   2005   영산회상
2024-06   2005   김승훈
2022-06   2005   영산회상
2022-01   2006   드고
2023-08   2006   치킨좋아요
2024-03   2007   머라카는데
2023-06   2007   Sikieiki
2023-11   2007   galaxyfamily
2024-01   2007   NiteFlite9
2021-07   2007   김준유
2023-01   2007   짱님
2023-05   2007   유호준
2023-06   2008   류승완
2021-10   2008   미친감자
2020-07   2008   네이쳐
2023-07   2008   삐돌이슬픔이