我最近在Ubuntu服务器上安装了Webmin ,但是我无法正常工作。 我问了一个最近关于保存iptables的问题 ,但事实certificate,你不需要“保存”iptables的更改。
无论如何,打开端口后仍然无法让Webmin工作:
iptables -A INPUT -p tcp -m tcp --dport 10000 -j ACCEPT
看来这个命令不是开放端口10000,还是Webmin有一个单独的问题。 如果我运行iptables -L我看到如下所示的行,但没有端口10000:
ACCEPT tcp -- anywhere anywhere tcp dpt:5555 state NEW ACCEPT tcp -- anywhere anywhere tcp dpt:8002 state NEW ACCEPT tcp -- anywhere anywhere tcp dpt:9001 state NEW
但是,有一条线:
ACCEPT tcp -- anywhere anywhere tcp dpt:webmin
任何想法为什么Webmin不工作? IP地址工作正常,我们可以查看服务器上的网站,但https://[ip]:10000/ (或http)不起作用。
我设法解决这个在这个页面上的build议,通过添加规则到列表的开始,而不是结束。 如果您追加它,则在所有stream量都被删除之后,这条规则就会生效。
这个命令做到了:
iptables -I INPUT 1 -p tcp --dport 10000 -j ACCEPT
尝试更改port并在\ etc \ webmin \ miniserv.conf中侦听
例:
port=1000 listen=1000
然后重新启动webmin:
/etc/init.d/webmin restart
现在使用:
https://iporhost:1000/
在安装了webmin的服务器(例如http [s]://127.0.0.1:10000)上本地工作? 如果你不想安装一个graphics浏览器来testing这个,只需用wget或者其他的东西来试试。
输出中的dpt:webmin部分仅仅意味着/ etc / services中的端口10000上存在webmin项,iptables会查找它以提供更有意义的输出(服务types而不是主机名)。
还要确保webminconfiguration为从远程地址侦听。 这是在webminconfiguration> IP访问控制下。
也许阻止/转发在路由器上? 在每个路由器上都不是一个通用的端口…我只是因为DMZ而打开了它。 你也没有提到你如何连接。 我的企业防火墙阻止除端口80和443之外的任何东西,所以要从他们的系统访问我必须将其更改为他们允许的端口。
作为另一个可能的解决scheme(因为你没有提到这个…),如果可能的话,VPN到你的networking。 VPN应该允许连接。
我不得不修改上面的答案,包括-i选项,它允许你指定规则应该应用到哪个接口。 当我运行没有选项的规则时,它没有出现在iptables -L但是在指定接口之后,它像一个魅力一样工作。
从iptables -h文档:
[!] --in-interface -i input name[+] network interface name ([+] for wildcard)
因此,要将规则应用于任何以太网接口,您可以执行以下操作:
iptables -I INPUT 1 -p tcp --dport 10000 -i eth + -j ACCEPT
或者,要听一个特定的以太网接口(例如eth1),你应该这样做:
iptables -I INPUT 1 -p tcp --dport 10000 -i eth1 -j ACCEPT
现在, iptables -L应该显示在输出的顶部,您将能够访问webmin的Web界面。 HTH。
你可以试试
Sudo service webmin restart