将Ubuntu服务器设置为路由器


Answers:


2

将Linux配置为路由器的第一步是启用IP转发:

$ echo "1" > /proc/sys/net/ipv4/ip_forward

现在OS可以在接口之间路由数据包。

接下来使用iptables网络过滤器来创建交通规则。

我建议您使用前端iptablesNetfilter来配置路由器并管理接口规则和策略。

如果您更喜欢GUI,请在此页面上查看其他一些有用的答案。

如果你想破解命令行并体验原力的真正力量,那么试试一下优秀的Shorewall前端iptablesnetfilter,它可以让你轻松配置你的路由器。然而,随着您了解有关路由的更多信息,Shorewall将允许越来越细粒度的配置和数据包级网络流量控制。

shorewall包可以在Ubuntu存储库中找到(选择shell或Perl包)。Shorewall网站提供了很多文档和有用的教程,适用于多种场景。基本的2-或3-接口示例应该可以帮到您。


我也想设置岸墙。如果我遵循这种方法,我是否需要首先在/ etc / network / interfaces中设置所有NIC?shorewall docs根本就没有提到它。其他一些教程确实展示了它。昨天我花了几个小时试图让12.04满意这个文件并在玩重启猜测游戏后放弃了基本上排除了我尝试的一切。(我尝试了一些路由器发行版,但我需要一些复杂的东西。)
保罗

@Paul Ubuntu的网络管理器可能正在尝试控制这些NIC并覆盖/ etc / network / interfaces/etc/resolv.conf文件。是的,您必须在配置shorewall之前在OS级别配置NIC。我建议你安装ubuntu-server发行版或卸载network-manager
venzen 2013年

这应该有帮助(有或没有NM):< askubuntu.com/questions/196640 / ... >
venzen 2013年

@Paul心灵分享问题的原因以及你是如何解决的(简要)?
venzen 2013年

我不确切地知道我做错了什么; 我在新的虚拟机中设置了一个新的Ubuntu 12.04,事情进展得更顺利。我使用的最终/ etc / interfaces文件记录在另一个问题中
保罗

1

最简单的方法是使用iptables在Ubuntu社区网站上阅读iptables。您还可以使用firestarter之类的东西来获得更好的GUI体验。

就个人而言,我建议使用专用网关发行版,如ipcop,m0n0wall或一体化系统,如ClearOS或Untangle。它将简化防火墙的管理,并为您提供其他一些功能(同样,内置简单功能)。


谢谢你的回答!我目前唯一的问题是其他网络接口(总共三个,两个端口网卡上有两个,一个集成到主板中)未列在下面/etc/network/interfaces。我怎样才能让它们被列出?在Ubuntu的设置过程中正确显示了它们。
wowpatrick 2011年

@wowpatrick我认为提出一个全新的问题对你有利,因为这与上面提到的问题完全不同。试试Ubuntu Stack Exchange网站:askubuntu.com
Wesley
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.