tunnel.sh
ssh 터널을 계속 유지하기 위해 다른 사람들이 작성한 다음 스크립트를 사용합니다 .
#!/bin/bash
export SSH_HOST=tim@server
if [ ! -f /tmp/.tunnel ]
then
echo "Creat SSH tunnel"
ssh -f -D 9999 $SSH_HOST "if [ -f ~/.tunnel ]; then rm ~/.tunnel; fi; while [ ! -f ~/.tunnel ]; do echo > /dev/null; done" &
touch /tmp/.tunnel
else
echo "Close SSH tunnel"
ssh $SSH_HOST "touch ~/.tunnel"
rm /tmp/.tunnel
fi
exit
지속적인 ssh 터널을 만들려면 방금 발행하십시오 tunnel.sh
. tunnel.sh
다시 발행 할 때까지 터널이 닫히지 않습니다 .
ssh 터널이 실제로 성공적으로 생성되었는지 어떻게 확인할 수 있는지 궁금합니다.
터널의 주요 용도는 서버와 동일한 LAN에있는 일부 프린터로 문서를 인쇄하는 것이며 LAN 내에서만 프린터에 액세스 할 수 있습니다. 터널을 생성 한 후에는 인쇄시 아무런 문제가보고되지 않지만 실제로는 인쇄되어 있지 않기 때문에 문서가 실제로 인쇄되었는지 확인할 수 없습니다.
터널 덕분에 LAN에 있기 때문에 외부 IP가 서버와 같아야한다고 생각했습니다. 그러나 실제로 그들은 동일하지 않습니다 (나는 그것들을 발견했습니다 wget -q -O - checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//'
). 왜 궁금해? 터널이 활성화 된 상태에서 인터넷의 일부 웹 사이트에 연결하면 서버가 나와 서버 간의 터널로 인해 연결의 인터넷 웹 사이트와 중간 지점이 아닌가?