nginx TCP代理

1. nginx stream 模块

nginx从1.9.0版本以后,便新增了一个stream模块,用来实现四层协议的转发、代理或者负载均衡等;

stream模块默认并没有编译到nginx中,源码编译安装nginx时, ./configure –with-stream即可!

2. 实现四层正向代理

操作环境:

  • yum安装的nginx;
  • nginx版本为1.16.1;
  • 操作系统:centos 7.2

使用yum安装的nginx,默认自带了stream模块!

编辑nginx配置文件时,注意stream字段与http字段属于同一级字段!本人不习惯在nginx的主配置文件中进行编辑,但是主配置文件需要适当进行修改,自行修改!

$ vim /etc/nginx/conf.d/ssh.conf
stream { 
    upstream ssh {
    server  192.168.41.21:22;
  }

  server { 
    listen       8080;
    proxy_pass ssh;
    proxy_connect_timeout 1h;
    proxy_timeout 1h;
    }
}
$ ssh centos@192.168.3.102 -p 8080
# 进行测试,测试登录的密码是192.168.41.21的密码!

scp指定端口进行传输:

$ scp -P10086  zp.tar root@111.222.123.01:
# 指定的端口是10086

如果测试不成功,也有可能是防火墙的原因,根据实际情况添加防火墙规则,SELinux建议关闭

posted @ 2020-11-22 22:59  吕振江  阅读(1072)  评论(0编辑  收藏  举报
浏览器标题切换
浏览器标题切换end