linux端口转发实现windows挂载同地址多个webdav

内容目录

需求原因

centos6.5 已部署 cloudreve 监听5212
cloudreve 的webdav要在windows上挂载,但是多个文件夹多个密钥,windows同一个地址只能挂载一个
所以需要端口转发挂载多个

实现

在Linux上,可以使用iptablesfirewalld来进行端口转发。以下是如何使用这两种工具实现将5213端口的流量转发到5212端口的步骤。

使用 iptables

  1. 确保 iptables 已安装:

    sudo apt-get install iptables -y
    sudo yum install -y iptables
  2. 添加端口转发规则:

    sudo iptables -t nat -A PREROUTING -p tcp --dport 5213 -j REDIRECT --to-port 5212
  3. 保存配置:

    #centos
    service iptables save
    #或
    sudo iptables-save | sudo tee /etc/iptables/rules.v4

使用 firewalld

  1. 确保 firewalld 已安装并启动:

    sudo apt-get install firewalld -y
    sudo systemctl start firewalld
    sudo systemctl enable firewalld
  2. 添加端口转发规则:

    sudo firewall-cmd --permanent --add-forward-port=port=5213:proto=tcp:toport=5212
    sudo firewall-cmd --reload

验证转发规则

可以使用 nc(netcat)工具来测试端口转发是否生效:

  1. 在目标端口(5212)监听:

    nc -l 5212
  2. 在源端口(5213)发送请求:

    echo "Hello, world!" | nc localhost 5213

如果在监听端口(5212)看到消息“Hello, world!”,说明端口转发配置正确。

其他注意事项

  • 确保防火墙规则允许流量通过相关端口。
  • 如果是云服务器,还需要在云服务提供商的控制台上确保这些端口开放。
  • 如果服务器有多个网卡或复杂的网络设置,可能需要进一步调整iptablesfirewalld规则。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注