ssh实现转发,只要用到以下两条命令:
ssh -CfNg -L 6300:127.0.0.1:1080 anyside@192.168.1.119
ssh -CfNg -R 1080:127.0.0.1:6300 anyside@192.168.1.119
不论是做跳板,还是加密隧道,还是加密其他的网络连接也都是这两条命令。
视具体情况而定,有时只要用到其中一条,有时两条都要用到。
倒序解释:
-CfNg
C 表示压缩数据传输
f 表示后台用户验证,这个选项很有用,没有shell的不可登陆账号也能使用.
N 表示不执行脚本或命令
g 表示允许远程主机连接转发端口
-L 本地转发
ssh -CfNg -L 6300:127.0.0.1:1080 anyside@192.168.1.119
表示:
1、本机(运行这条命令的主机)和远程主机192.168.1.119建立加密隧道,anyside是远程主192.168.1.119 的账号。
2、在本机上打开6300端口.用 netstat -an|grep 6300 可看到 127.0.0.1:6300 或 127.0.0.1.6300
3、把本机的6300端口映通过加密隧道射到192.168.1.119的1080端口.
简单说,本机的6300端口就是远程主机192.168.1.119的1080端口。
-R 远程转发
ssh -CfNg -R 1080:127.0.0.1:6300 anyside@192.168.1.119
1、本机(运行这条命令的主机)和远程主机192.168.1.119建立加密隧道,anyside是远程主机192.168.1.119上的账号。
2、在远程主机192.168.1.119上打开1080端口.
3、把本机的6300端口映通过加密隧道射到192.168.1.119的1080端口.
注:本机的6300端口可直接看作远程主机192.168.1.119的1080端口。
举个实用的例子:
有A、B、C 3台服务器,A,C有公网IP,B是某IDC的服务器无公网IP。A希望同过B连接C的80端口,A<=>B<=>C
在B上执行如下命令即可:
[root@B root]# ssh -CfNg -L 6300:127.0.0.1:80 userc@C
[root@B root]# ssh -CfNg -R 80:127.0.0.1:6300 usera@A
服务器A和服务器C之间,利用跳板服务器B建立了加密隧道。在A上连接127.0.0.1:80,就等同C上的80端口
需要注意的是:
服务器B上的6300端口的数据没有加密,可被监听,
例:
#tcpdump -s 0 -i lo port 6300
禁用ssh设置的转发
ssh -x 127.0.0.1
分享到:
相关推荐
Secure Shell (SSH)是一种加密协议,可以在不安全...X11- forwarding是一个安全的shell特性,它允许通过现有的SSH shell会话转发X11连接,用于在服务器上运行X11程序,而ssh-client通过用户的X11-server显示图形窗口。
通过以上步骤,您可以在Windows 10家庭版上使用Xshell5通过SSH隧道转发X11协议,从而在本地查看远程Linux服务器上的图形界面应用程序。这种方法不仅节省了服务器资源,还极大地提高了开发效率和便利性。希望这篇文档...
介绍了基于SSH的端口转发应用场景以及配置
vnc-ssh 通过SSH端口转发从远程安全地连接到VNC(向localhost打开)安装在主机中,使用-localhost选项打开VNC服务器。 vncserver -localhost -geometry {vnc screen resolution} :{display number} 将您的客户端ssh...
通过SSH转发Unix套接字 例子 在所有示例中, 表示远程主机。 转发远程 Docker 套接字 sudo forward_socket \ --local_user $( id -un ) \ " ssh -i $HOME /.ssh/id_rsa $( id -un ) @<host> " \ /var/run/docker...
1.SSH的三种端口转发机制 2.端口转发的实际应用以及需求
如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。最早的时候,互联网通信都是明文通信,一旦被截获,内容就暴露无疑。1995年,...
你可能已经熟悉使用ssh 命令访问远程系统。ssh 命令背后所使用的协议允许终端的输入和...一种方法是使用“端口转发port forwarding”,它允许你在进行 ssh 会话时安全地连接网络端口。本文向你展示了它是如何工作的。
ssh 可以用来进行远程登录和加密的数据传输,主要对登陆认证以及两种端口转发进行了说明
`sshuttle`可以让你的本机TCP流量通过SSH隧道转发,而无需任何配置更改,特别适合在不支持SSH端口转发的网络环境中使用。 通过Python实现SSH端口转发,能够帮助开发者在不安全的网络环境中安全地访问远程服务,同时...
python ssh资料 手册 转发 隧道 远程执行命令 监控 登陆 免密
例如,使用以下命令将本地的 3306 端口转发到远程主机的 3306 端口:`ssh -L 127.0.0.1:3306:127.0.0.1:3306 root@192.168.13.142`。 远程转发 远程转发能够将远程服务器的某个端口转发到本地网络服务器的某个端口...
详细介绍SSH端口转发的概念和原理,具体阐释其过程,举例说明如何通过SSH端口转发实现外网远程控制内网PC
在本文中,我们将探讨如何使用 Win 10 自带的 OPENSSH 通过 SSH 协议远程连接 MySQL 服务器, 并使用 ODBC 连接到远程 MySQL 服务器。 SSH 协议 SSH(Secure Shell)是一种安全的网络协议,用于远程登录和管理网络...
本文将详细介绍如何使用 SSH 实现本地远程端口转发,并提供了详细的配置步骤和示例。 一、什么是 SSH 端口转发? SSH 端口转发是一种技术,允许用户将远程服务器的端口转发到本地机器上,实现远程服务器的本地访问...
SSH还有其他高级特性,如端口转发,允许将本地端口的数据流通过SSH隧道转发到远程服务器,增强网络通信的安全性。此外,SSH还可以用于自动化运维脚本,如使用`expect`脚本自动化处理交互式登录过程。 总的来说,SSH...
实战 SSH 端口转发 ...学会在非安全环境下使用端口转发来加密网络应用,保护个人隐私以及重要商业信息。同时也能够用此技术解决工作中一些常见问题,例如解决防火墙及网络应用本身带来的一些限制。
"SSH.NET-develop.zip_SSH.net_VI1Q_ssh"这个压缩包很可能是SSH.NET库的一个开发版本或示例代码集合,供开发者学习和使用。 "VI1Q"可能是一个特定的版本标识或者与项目相关的密钥,而"ssh"标签则明确了这个包与SSH...
**步骤2:** 在客户端通过SSH命令创建本地转发隧道。具体命令如下: ```bash ssh -L 3308:192.168.125.130:3306 root@192.168.125.129 ``` 解释一下该命令中的参数含义: - `-L`: 表示创建本地转发隧道; - `3308`:...