我在 Ubuntu 9.10 上运行 apache2,我想通过端口 10045 公开特定站点。
我的第一反应是去 ufw 并打开该端口。我已经这样做了,如果我在 ufw 中列出规则,我会得到以下结果:
Status: active
To Action From
-- ------ ----
80/tcp ALLOW 192.168.1.0/24
443/tcp ALLOW Anywhere
22/tcp ALLOW 192.168.1.0/24
9418/tcp ALLOW Anywhere
10045/tcp ALLOW Anywhere
但如果我运行 nmap 我会得到这个:
Starting Nmap 5.00 ( http://nmap.org ) at 2010-08-02 18:15 BST
Interesting ports on myserver (192.168.1.65):
Not shown: 996 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
9418/tcp open unknown
如果我专门检查 10045:
PORT STATE SERVICE
10045/tcp closed unknown
如果我尝试访问该网站,则只会超时。
我要做什么才能打开端口?
答案1
closed
意味着没有服务正在监听该端口。
您是否检查过 Apache 是否确实在监听它?检查一下netstat -ltpn
,看看 10045 是否被列为受 Apache 绑定。
您是否在 Apache 配置中添加了正确的 Listen 指令?之后您是否重新启动了它?
答案2
我遇到了同样的问题。真是浪费了 2 个小时。重点是我确实启动了带有 ubuntu 16 的 vagrant machine。然后我确实安装了 couchdb 2.1 并尝试从外部访问 couch。(curl 192.168.33.10:5984)Curl 说连接被拒绝。但 nmap 说
(env27) [codertarasvaskiv@lodestone trash]$ nmap -Pn 192.168.33.10 -p 5984
Starting Nmap 7.60 ( https://nmap.org ) at 2018-03-13 12:22 EET
Nmap scan report for 192.168.33.10
Host is up (0.00052s latency).
PORT STATE SERVICE
5984/tcp closed couchdb
Nmap done: 1 IP address (1 host up) scanned in 6.56 seconds
因此,我确实尝试使用 ufw 帮助打开端口。在 192.168.33.10 上(sudo ufw allow 5984)并重新启动 ufw 服务。
ubuntu@client:~$ sudo ufw status
Status: active
To Action From
-- ------ ----
22 ALLOW Anywhere
5984 ALLOW Anywhere
22 (v6) ALLOW Anywhere (v6)
5984 (v6) ALLOW Anywhere (v6)
但这并没有帮助。Nmap 也说“端口已关闭”
所以我的解决方案是:我编辑了 /opt/couchdb/etc/local.ini 并更改了 [chttp] 部分下的 bind_addres = 0.0.0.0。这确实有效。Nmap 现在显示端口已打开。
PORT STATE SERVICE
5984/tcp open couchdb