首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IPTABLES如何将21到2100的转发移出

问IPTABLES如何将21到2100的转发移出
EN

Server Fault用户
提问于 2019-02-12 15:43:51
回答 2查看 334关注 0票数 0

我有一个脚本,它通过FTP在另一个服务器上发布文件,但是这个脚本只允许您使用端口21。在目标服务器上,唯一的FTP端口是2100。

是否可以使用源服务器上的IPTABLES将输出连接转发到端口21到2100?

这样,在源服务器上运行的脚本将在端口21上尝试FTP,IPTABLES将此转发到端口2100,目标服务器将接受。

如果可能的话,这条规则能否只适用于特定的目标IP?

谢谢。

EN

回答 2

Server Fault用户

发布于 2019-02-12 15:55:11

您必须使用nat重定向。

示例:

代码语言:javascript
复制
iptables -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080
票数 0
EN

Server Fault用户

发布于 2019-02-12 16:13:58

虽然理论上可以使用iptable来实现,但我不建议这样做。这可能会带来比解决更多的麻烦。

我的建议是:

  1. 如果可以的话,去掉ftp。它是一种旧的、不安全的协议,它将被sftp (通常使用端口22/tcp)或至少是ftps (带有ssl的ftp)所替代。
  2. 使用ftp服务器上的标准端口。很少有充分的理由更改服务的默认端口,除非同一服务器承载多个ftp服务器实例。
  3. 修改脚本以连接到此特定服务器上的端口2100。大多数ftp客户端允许您指定目标端口。
  4. 如果上述任何一个都不可能,您可以像这样使用iptables命令(用FTP服务器的IP替换1.2.3.4 ):iptables -t nat -A OUTPUT -d 1.2.3.4 -p tcp -m tcp --dport 21 -j DNAT -to-目的1.2.3.4:2100

请注意,FTP被动模式在端口22/tcp上使用反向连接,这肯定不适用于这个iptables规则。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/953561

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档