SSH转发的妙用(代理)
之前自己自建vpn,搭建好了就弄个镜像备份,丢过几次备份的镜像,来来回回捣鼓烦了,最后都是用一建部署脚本,还部署了squid,电脑google用vpn,squid给linux主机的docker等应用做临时代理,在国内仓库失效时用用。vultr主机稳定性一般,延迟还高,ZC一紧可能就要找新ip,一个月还要5刀,感觉不如良心云,一个月才2块钱,稳定延迟还低流量也够用。但是关了自建vpn吧squid就没的用了,灵机一动,想到了利用本机代理与ssh转发 1.开启目标主机ssh转发 vi /etc/ssh/sshd_config AllowTcpForwarding yes # 允许TCP转发(必须开) GatewayPorts yes # 允许外部访问转发端口(可选,根据需求) 2.重启ssh systemctl restart sshd 3.本机建立ssh通道,将目标主机7897转发到本机7897端口 # 目标机监听端口:转发host:转发端口 目标用户@目标host ssh -R 7897:10.22.2.102:7897 root@10.22.2.106 4.目标主机访问测试 curl -x http://127.0.0.1:7897 google.com # 正常打印 <HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8"> <TITLE>301 Moved</TITLE></HEAD><BODY> <H1>301 Moved</H1> The document has moved <A HREF="http://www.google.com/">here</A>. </BODY></HTML> 5.配置会话http代理,docker pull可生效 export http_proxy=http://127.0.0.1:7897 export https_proxy=http://127.0.0.1:7897 export no_proxy="localhost,api.k8s.local,127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,.svc,.cluster.local,.ewhisper.cn,<nodeCIDR>,<APIServerInternalURL>,<serviceNetworkCIDRs>,<etcdDiscoveryDomain>,<clusterNetworkCIDRs>,<platformSpecific>,<REST_OF_CUSTOM_EXCEPTIONS>"