Hits: 132

暂时放弃此种方法翻墙:SSH长时间有大流量,会被运营商QoS限速“出国带宽”,且GFW会时不时干扰ssh

https://blog.csdn.net/easylife206/article/details/114324694    使用 AutoSSH 实现自动化跨网络访

https://github.com/st286/SSH-port-forwarding   SSH端口转发

https://hub.docker.com/r/jnovack/autossh

使用 autossh 自动重启 SSH 会话和通道

https://github.com/pixelcat/autossh-tunnel  AutoSSH Tunnel

利用AutoSSH建立SSH隧道,实现内网穿透

利用ssh反向代理以及autossh实现从外网连接内网服务器

https://blog.51cto.com/aaronchou/2146189   使用ssh隧道+privoxy实现Linux全局代理

https://zhuanlan.zhihu.com/p/57630633   SSH 命令的三种代理功能(-L/-R/-D)

  • 正向代理(-L):相当于 iptable 的 port forwarding
  • 反向代理(-R):相当于 frp 或者 ngrok
  • socks5 代理(-D):相当于 ss/ssr
    ssh -D localhost:1080 -p 22 HostB
    localhost只是本地使用,任何IP都可以使用,改为*

首先使用ssh测试实现其功能再用autossh测试,ok后再考虑用docker autossh实现;然后再用docker privoxy实现http代理;

ssh: ssh -D *:1080 -p 22 HostB   测试通过

autossh:autossh -M 5678 -CqTfnN -D 192.168.0.2:7070 freeoa@remote-host       未测试 ( 群晖和威联通 NAS 不能安装 autossh )

-M 5678 负责通过5678端口监视连接状态,连接有问题时就会自动重连
-C 启动数据压缩传输
-q 安静模式运行,忽略提示和错误
-T 不占用shell
-f 后台运行
-n 配合 -f 参数使用
-N 不执行远程命令,专为端口转发度身打造

docker:

https://github.com/valdisxp1/docker-autossh/tree/master/amd64


把root目录下的~/.ssh/ known_hosts删除,用普通用户登录远程主机一次;

ssh-keygen -t rsa -b 4096 -N '' -f id_rsa     生成id_rsa, id_rsa.pub;如果是在/root操作,文件生成在/root/.ssh/目录下,如果在别的目录下操作,生成的文件在目录下;
ssh-copy-id -i ~/.ssh/id_rsa.pub user@your.server 上传到服务器上(群晖无ssh-copy-id命令,id_rsa.pub复制到ubuntu再操作)

docker run -d \
	--restart=always \
	--name Autossh-1 \
	-v /root/.ssh/known_hosts:/root/.ssh/known_hosts \
	-v /root/.ssh/id_rsa:/root/.ssh/id_rsa \
	-e HOST="user@your.server" \
	-e FORWARD="your forwards goes here" \
	-e FORWARD="-D *:5050" \
	-e TRUST="yes" \
	-p 5050:5050 \
	--dns 8.8.8.8 \
	--dns 1.1.1.1 \
	ax2009live/autossh:1.0