阻止从外部访问应用程序的特定端口影响对本地主机脚本的访问

我已经build立了一个运行特定端口6423的应用程序“phanthomjs”,我希望它可以在本地在本地运行的脚本访问,而不能从外部访问。

phantomjs--webdriver=6324

我当前的脚本使用TCP并运行在同一个盒子上,我们使用服务器名称作为localhost来连接到应用程序。

有没有办法在Redhat Linux中阻止从外部访问这个端口?

如果您的应用程序仅在本地主机上侦听,则不能从外部联系。 如果你可以configuration一个“绑定”地址,那么把127.0.0.1。 要检查它是否有效,请inputlsof -i -n -P :6423 (或6324 …)。 在输出中你应该看到一行以

 TCP 127.0.0.1:6423 (LISTEN) 

如果你看到

 TCP *:6423 (LISTEN) 

那么你的应用程序正在监听任何端口,因此可以从互联网上联系。

如果你不能让你的应用程序仅在127.0.0.1上进行监听,你将需要使用iptables。

绑定到localhost时,不需要阻止对端口的访问:只有本地进程可以访问它,其他主机不能访问它。

要validation价格仅绑定到localhost而不是绑定到外部networking接口,请运行以下命令:

 netstat -ntl | grep 6423 

如果在输出中看到类似于127.0.0.1:6423东西,那么您可以确定该服务不能从其他主机访问,只能由本地进程访问。

另一方面,如果您看到诸如*:6423或networking上可访问的IP地址之类的东西,则该服务可访问,您需要调整configuration以绑定到localhost