저는 autossh를 사용하여 역방향 SSH 터널에 연결하고 있습니다. 저는 시작부터 실행합니다.
그런데 가끔 터널이 무너지는 문제에 부딪혔습니다.
터널이 실제로 작동하는지 확인하고 그렇지 않은 경우 모뎀을 다시 시작하는 등의 다른 작업을 수행하는 스크립트를 만들었습니다.
터널이 작동하는지 확인할 수 있는 유일한 방법은 autossh 명령을 다시 사용하여 응답을 확인하는 것입니다.
autossh -M 0 -N -q -o ServerAliveInterval=20 -o ServerAliveCountMax=3 [email protected] -i id_rsa -R 13238:localhost:22 -v
나는 이 autossh 명령을 사용할 때마다 새로운 자동 프로세스가 시작된다는 것을 알았습니다. 현재 많은 autossh 프로세스가 실행되고 있습니다. 이것은 분명히 좋지 않습니다.
두 가지 질문이 있습니다:
1) autossh 명령을 다시 사용하지 않고도 터널이 작동하는지 확인하는 더 좋은 방법이 있습니까? (다른 방법을 찾을 수 없습니다)
2) 제가 생각한 또 다른 옵션은 스크립트에서 사용되지 않는 프로세스를 종료하고 autossh 프로세스를 하나만 갖는 것이었습니다. 그런데 autossh라는 프로세스가 여러 개인 경우 해당 프로세스의 pid를 어떻게 찾을 수 있을까요?