背景:
家里电脑没有公网ip,人在外面想连接家里的电脑
做法:
购买一台便宜的有公网ip的服务器(70+元)
做法是家里电脑和公网服务器以ssh建立反向连接,这样公网服务器就知道家里的电脑位置,这样再通过公网的服务器来访问家里的电脑即可。
1.在家里电脑,输入以下指令
ssh -f -N -R 10000:localhost:22 public_ip@119.23.29.99
1.1 以public key登陆
1.1.1 生成key
ssh-keygen -t rsa
1.1.2 将id_rsa.pub放到公网的~/.ssh/authorized_keys 600
1.1.3 id_rsa存放到家里电脑的~/.ssh/目录下即可
1.2 监控脚本
#!/bin/bash
while true;do
RET=`ps ax | grep "ssh -f -N -R 10000:localhost:22" | grep -v "grep"`
if [ "$RET" = "" ]; then
echo "restart ssh server"
ssh -f -N -R 10000:localhost:22 public_ip@119.23.29.99
else
echo "ssh server is ok"
fi
sleep 10
done
ssh home_compute_usename@localhost -p 10000
转载地址: