Linux通过端口转发来实现访问内网服务的图文步骤详解


本文摘自PHP中文网,作者黄舟,侵删。

可以通过端口映射的方式,来通过具有公网的云服务器 ECS 访问用户名下其它未购买公网带宽的内网 ECS 上的服务。端口映射的方案有很多,比如 Linux 下的 SSH Tunnel、rinetd,Windows 下的 portmap 等,本文简要介绍 rinetd,和 ssh tunnel 的配置方法。

说明:本文相关配置和说明仅用于示例和操作指引,阿里云不对相关操作结果及由此产生的问题负责。

rinetd 配置方法


如果是 Ubuntu 系统,可以直接使用如下指令安装:

1

apt-get install rinetd -y

下面介绍源代码安装配置方法:

1. 下载解压 rinetd 软件包:

1

wget http://www.boutell.com/rinetd/http/rinetd.tar.gz&&tar -xvf rinetd.tar.gz&&cd rinetd

2. 修改编译配置:

1

sed -i ‘s/65536/65535/g’ rinetd.c# 修改端口范围,否则会报错

3. 编译安装:

1

mkdir /usr/man&&make&&make install

4. 创建配置文件:

1

2

3

4

cat >>/etc/rinetd.conf <>/etc/rc.local         

# allow 192.168.2.

# deny 192.168.1.

# bindadress bindport connectaddress connectport0.0.0.0 3306 example.rds.aliyuncs.com 3306logfile /var/log/rinetd.logendecho rinetd >>/etc/rc.local

5. 使用:

rinetd 启动后,就已经可以通过云服务器的 3306 端口连接到处于内网模式的 example rds 数据库了。除了这个场景,其它的内网端口转发配置也类似。不过,由于FTP 协议端口是随机的,所以无法通过此方法实现转发。

另外,配置文件中可以对某个 IP 或者 IP 段进行允许/拒绝,藉此提高内网端口的安全性。

SSH Tunnel 配置方法


通过putty 和 有公网 IP 的 ECS 之间建立 SSH 隧道,然后通过本地端口转发,实现在客户 PC 终端上对内网 ECS 和 RDS 的直接访问,为客户的远程管理提供了巨大的方便。

阅读剩余部分

相关阅读 >>

常用Linux指令大全

Linux日志在哪里

Linux下的计划任务――只执行一次的定时任务

Linux可用更新源

Linux绿色是什么文件

如何所有可能的实例状态中批量获取实例状态信息

Linux总结一些常见的命令

使用ftp命令和scp命令在Linux系统下远程下载文件方法

Linux怎么查看版本命令

Linux中改变文件所有者的命令是什么

更多相关阅读请进入《Linux》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...