Linux 服务器配置端口转发

解决实际问题,例:应用部署后连接数据库为A,现将数据库迁移至B,在不修改应用配置的情况下,连接A实际访问B

【推荐】Nginx 端口转发

配置文件
stream {
    upstream ssh-proxy {
        server 目标IP:3307;
    }
 
    server {
        listen 3306;
        proxy_pass ssh-proxy;
    }
}

docker-compose.yml
version: '3'
services:
  nginx:
    container_name: nginx
    image: nginx:1.23.2
    restart: always
    ports:
      - "80:80"
      - "3306:3306"
    volumes:
      - ./conf/nginx/nginx.conf:/etc/nginx/nginx.conf
      - ./data/html:/usr/share/nginx/html

防火墙端口转发

参考:https://blog.csdn.net/frdevolcqzyxynjds/article/details/125039385

echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
sysctl -p

## 检查防火墙状态
systemctl status firewalld
## 打开防火墙
systemctl enable firewalld
## 重启防火墙
systemctl restart firewalld
## 再次检查防火墙状态
systemctl status firewalld

## 查看防火墙状态
firewall-cmd --state
## 查看防火墙规则
firewall-cmd --list-all

## 启用网络地址转换 (NAT) 功能
firewall-cmd --add-masquerade --zone=public --permanent
## 重新加载防火墙规则,使更改生效
firewall-cmd --reload

## 重新加载防火墙规则,使更改生效
firewall-cmd --list-all
## 添加端口转发规则,将来自端口 3307 的 TCP 数据流转发到地址 192.162.10.12 上的端口 3307
firewall-cmd --add-forward-port=port=3307:proto=tcp:toport=3307:toaddr=192.162.10.12 --zone=public --permanent
## 重新加载防火墙规则,使更改生效
firewall-cmd --reload
## 查看防火墙规则
firewall-cmd --list-all

三方插件-ncat 端口转发-不推荐,使用过程中,会中断

参考:https://blog.csdn.net/HideInTime/article/details/117779380

netcat(简称nc)被誉为网络安全界的”瑞士军刀“,一个简单而有用的工具,这里介绍一种使用netcat实现端口转发的方法。
(1)安装ncat
yum install nmap-ncat -y
(2)监听本机 9876 端口,将数据转发到 192.168.172.131的 80 端口,&表示后台运行
ncat --sh-exec "ncat 192.168.172.131 80" -l 9876 --keep-open &
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值