(我是新手!)我正在運行一個運行 CentOS 的虛擬伺服器。我正在嘗試運行一個偵聽連接埠 37760 的伺服器。
netstat -lptu
顯示正在偵聽的連接埠列表,以及
tcp 0 0 localhost.localdomain:37760 *:* LISTEN 15006/node
是條目之一。但是,當我在瀏覽器中訪問 ip:37760 時,連接逾時!
我確信這是非常明顯的,但是一些幫助將會非常有幫助!
謝謝
答案1
輸出netstat
顯示node
僅在本機上偵聽,因此您需要在該虛擬控制台上使用瀏覽器並導航至或更新要偵聽所有位址localhost:37760
的任何配置。node
答案2
您的本地防火牆很有可能阻止連線。
檢查您的本機iptables
防火牆。您可以透過執行以下命令來查看目前狀態:
iptables -vnL
這將產生如下所示的輸出:
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
9192K 3593M ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
18 740 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0
1763K 180M ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0
6124 367K ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
這四個規則是這樣的:
- 允許與現有連線關聯的流量
- 允許 ICMP 流量。
- 允許所有流量透過環回接口
- 允許 TCP 連接埠 22 (ssh) 上的新連接
您可以在 中看到持久狀態/etc/sysconfig/iptables
。如果您需要 GUI 配置機制,則可以使用該system-config-firewall
工具,或者您可以利用此機會了解有關防火牆配置如何從命令列工作的更多資訊。
答案3
CentOS 預設會轉IP表並透過 SELinux 執行相當嚴格的安全策略。如果您嘗試從另一台電腦存取該端口,預設的 IPTables 設定會刪除除 SSH 之外的所有傳入連線。如果您不擔心安全性,您可以簡單地運行
sudo service iptables stop
完全關閉 IPTables。
在 CentO 上,另一件可能阻礙你的事情是SELinux。這充當進程和檔案系統上的第二層安全性,並防止某些伺服器預設擁有提供檔案服務的權限,因為它們無權存取提供檔案服務的目錄。您在這裡有幾個選擇。
1) 透過更改設定來關閉 SELinux,/etc/selinux/config
如下所示:
SELINUX=disabled in /etc/selinux/config
2) 更可取的是,用於audit2allow
檢查 SELinux 是否阻止您的伺服器,如果是,則產生新的安全性原則以允許該伺服器。看到這個中央作業系統維基條目以及這部落格條目。
最後,如果您在虛擬機器上執行,請確保您的虛擬機器具有網路存取權限和使用底層硬體的 NIC 設定的權限。