내가 열면
ssh -L 8888:localhost:80 myhost
여러 번 클라이언트에서 http : // localhost : 8888 / 페이지를 열면 시작된 많은 SSH 세션 데이터 중 어느 것이 전송됩니까?
최신 정보
두 번째 SSH를 실행했을 때 메시지를 받았습니다.
bind: Address already in use
channel_setup_fwd_listener_tcpip: cannot listen to port: 8008
bind: Address already in use
channel_setup_fwd_listener_tcpip: cannot listen to port: 8888
Could not request local forwarding.
즉, 전달은 첫 번째 SSH를 통해서만 발생하고 닫으면 전달이 중지됩니다. 즉, 세션을 자유롭게 생성하고 삭제할 수 있습니다.
이에 대한 해결책이 있습니까?
SSH 연결을 공유하면이 문제를 피할 수 있습니다. 다음과 같은 추가
Host myhost
ControlMaster auto
ControlPath ~/.ssh/master-%r@%h:%p
ControlPersist 2h
당신에게 ~/.ssh/config
; 이렇게하면 2 시간 동안 지속되는 임시 연결 공유가 가능합니다. 그런 다음 포트 전달을 활성화 할 때마다 전달 된 포트는 마스터 SSH 연결이 열려있는 한 활성 상태로 유지됩니다. 위의 구성을 사용하면 마지막 SSH 연결이 닫힌 후 2 시간이 걸립니다. ControlPersist
마지막 SSH 연결로 닫 도록 줄을 삭제할 수도 있습니다 (하지만 연결 ssh
을 끊을 때 첫 번째 명령은 실제로 종료되지 않고 다른 모든 SSH 연결이 닫힐 때까지 기다립니다). 두 경우 모두를 실행하여 연결을 강제로 닫을 수 있습니다 ssh -O exit myhost
.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다