ssh端口转发笔记:ssh反向代理(隧道)、动态代理、本地代理

1,718次阅读
没有评论

ssh端口转发笔记:ssh反向代理(隧道)、动态代理、本地代理
缩略词

本机:ssh命令发起方,即运行ssh命令的那台机器。也可简称客户端
远程机:ssh命令连接到的服务器,一般指运行ssh服务的那台机器。也可简称服务端
本地机群:能直接与本机通迅的主机集合,包含本机自身。
远程机群: 能直接与远程机通迅的主机集合,包含远程自身。

动态代理

动态代理一般用于代理服务器,应用场景为:本地机群不能直接访问某些地址/端口,但远程机可以。本机通过建立一个指定本机端口,远程机端口不指定(动态)的连接,让本地机群可以通过该连接去访问那些地址(基于socks4和socks5协议)。

ssh -o ServerAliveInterval=20 -g -Nf -D 6060 proxy@47.44.161.114 #动态代理

参数 说明
-o ServerAliveInterval=20 代表心跳包,ssh在一段时间没数据后会把连接给断开。
-g 允许其他主机连接到本机端口进行转发。
如果无效,要设置本机sshd_config文件:gatewayports yes
-N 不执行远程命令。 仅做端口转发(仅适用于协议版本2)。
-f 将ssh切换到后台
-D 6060 指定以本机哪个端口做为转发端口
proxy@47.44.161.114 以指定帐号连接远程机
反向代理

反向代理一般用于内网穿透,应用场景为:本机在防火墙内,并且防火墙未向外开放本机(或本地网络内其他主机)端口,远程机有向外开放的可用端口,本机通过建立一个指定本机(或本地网络内其他主机)端口和远程机端口的连接(也可以理解成端口映射),让外部应用可以通过远程机端口访问本机(或本地网络内其他主机)端口。

ssh -o ServerAliveInterval=20 -g -Nf -R 5001:localhost:6060 proxy@47.44.161.114 #反向代理

参数 说明
-o ServerAliveInterval=20 代表心跳包,ssh在一段时间没数据后会把连接给断开。
-g 允许其远程机群连接到远程机端口进行转发。
如果无效,要修改远程机sshd_config文件:gatewayports yes
-N 不执行远程命令。 仅做端口转发(仅适用于协议版本2)。
-f 将ssh切换到后台
-R 15001:localhost:6060 反向转发,用值用:分隔为三项,格式为: <远程机端口>:<本地机群>:<端口>。
proxy@47.44.161.114 以指定帐号连接远程机
本地代理

本地代理应用场景一般是两类:一类是应用限制只能访问本机端口,而实际需要访问远程机端口;一类是某个网络环境只能允许一台主机访问远程机端口,而实际是网络区域内多台主机都有这个要求。

ssh -o ServerAliveInterval=20 -g -Nf -L 5001:localhost:6060 proxy@47.44.161.114

参数 说明
-o ServerAliveInterval=20 代表心跳包,ssh在一段时间没数据后会把连接给断开。
-g 允许本地机群连接到本机端口进行转发。
如果无效,要修改本机sshd_config文件:gatewayports yes
-N 不执行远程命令。 仅做端口转发(仅适用于协议版本2)。
-f 将ssh切换到后台
-L 15001:localhost:6060 本地转发,用值用:分隔为三项,格式为: <本机端口>:<远程机群>:<端口>。
示例里第二项localhost,代表的是远程机,用这种写法一般代表远程主机也只能本机访问该端口
proxy@47.44.161.114 以指定帐号连接远程机
连接检测脚本

ssh建立的连接有时候会因为网络原因断开,所以写了个定时任务脚本(基于centos)

#!/bin/sh
### reconnectproxy.sh ###
cd ~
pid=ps aux|grep ssh|grep -E "6060[[:space:]]+proxy@47.44.161.114"|awk '{print $2}'

dt=date
if [ -n “$pid” ]
then

echo ${dt}” INFO:proxy is connected”>>~/chkconn.log

else

echo ${dt}” WARN:proxy is not connected”>>~/chkconn.log
echo ${dt}” WARN:try to reconnect proxy “>>~/chkconn.log
ssh -o ServerAliveInterval=20 -g -Nf -D 6060 proxy@47.44.161.114
fi

再用crontab -e命令将脚本加入任务计划中

1 */5 * * * * sh /root/reconnectproxy.sh

正文完
可以使用微信扫码关注公众号(ID:xzluomor)
post-qrcode
 0
评论(没有评论)

文心AIGC

2024 年 2 月
 1234
567891011
12131415161718
19202122232425
26272829  
文心AIGC
文心AIGC
人工智能ChatGPT,AIGC指利用人工智能技术来生成内容,其中包括文字、语音、代码、图像、视频、机器人动作等等。被认为是继PGC、UGC之后的新型内容创作方式。AIGC作为元宇宙的新方向,近几年迭代速度呈现指数级爆发,谷歌、Meta、百度等平台型巨头持续布局
文章搜索
热门文章
手把手教你用AI 10分钟生成一个APP!零基础也能搞定

手把手教你用AI 10分钟生成一个APP!零基础也能搞定

今日,我将向大家展示DeepSeek的全新玩法——从零开始,利用AI创建一个完整的应用程序。借助DeepSee...
最新评论
ufabet ufabet มีเกมให้เลือกเล่นมากมาย: เกมเดิมพันหลากหลาย ครบทุกค่ายดัง
tornado crypto mixer tornado crypto mixer Discover the power of privacy with TornadoCash! Learn how this decentralized mixer ensures your transactions remain confidential.
ดูบอลสด ดูบอลสด Very well presented. Every quote was awesome and thanks for sharing the content. Keep sharing and keep motivating others.
ดูบอลสด ดูบอลสด Pretty! This has been a really wonderful post. Many thanks for providing these details.
ดูบอลสด ดูบอลสด Pretty! This has been a really wonderful post. Many thanks for providing these details.
ดูบอลสด ดูบอลสด Hi there to all, for the reason that I am genuinely keen of reading this website’s post to be updated on a regular basis. It carries pleasant stuff.
Obrazy Sztuka Nowoczesna Obrazy Sztuka Nowoczesna Thank you for this wonderful contribution to the topic. Your ability to explain complex ideas simply is admirable.
ufabet ufabet Hi there to all, for the reason that I am genuinely keen of reading this website’s post to be updated on a regular basis. It carries pleasant stuff.
ufabet ufabet You’re so awesome! I don’t believe I have read a single thing like that before. So great to find someone with some original thoughts on this topic. Really.. thank you for starting this up. This website is something that is needed on the internet, someone with a little originality!
ufabet ufabet Very well presented. Every quote was awesome and thanks for sharing the content. Keep sharing and keep motivating others.
热评文章
手把手教你用AI 10分钟生成一个APP!零基础也能搞定

手把手教你用AI 10分钟生成一个APP!零基础也能搞定

今日,我将向大家展示DeepSeek的全新玩法——从零开始,利用AI创建一个完整的应用程序。借助DeepSee...