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建議關閉!
