如何在我的 Ubuntu 14.04 虚拟服务器上打开一个端口到运行它的 Mac?

如何在我的 Ubuntu 14.04 虚拟服务器上打开一个端口到运行它的 Mac?

我在 Mac Big Sur 机器上使用 Vagrant 运行虚拟 Ubuntu (14.04) 盒。我想将虚拟机上的端口 1234 开放到我的 Mac。从虚拟机中,我可以看到这些端口正在监听

$ sudo lsof -i -P -n | grep LISTEN
[sudo] password for myuser: 
mysqld    1425   mysql   19u  IPv4  21538      0t0  TCP *:3306 (LISTEN)
sshd      1447    root    3u  IPv4  24616      0t0  TCP *:22 (LISTEN)
sshd      1447    root    4u  IPv6  24618      0t0  TCP *:22 (LISTEN)
redis-ser 1449   redis    5u  IPv4  14782      0t0  TCP *:6379 (LISTEN)
master    1828    root   12u  IPv4  18076      0t0  TCP 127.0.0.1:25 (LISTEN)
master    1828    root   13u  IPv6  18077      0t0  TCP [::1]:25 (LISTEN)
ruby      7514  myuser    7u  IPv4  51854      0t0  TCP 127.0.0.1:1234 (LISTEN)
node      7562  myuser   19u  IPv4  50542      0t0  TCP *:3500 (LISTEN)

但是,我注意到在 Mac 上运行 nmap 时,我无法连接到端口 1234

nmap -sT -p- 10.0.18.25
Starting Nmap 7.92 ( https://nmap.org ) at 2021-10-13 11:16 CDT
Nmap scan report for iad-3456273abcef.mlp.nq.smb.rcn.net (10.0.18.25)
Host is up (0.10s latency).
Not shown: 65531 closed tcp ports (conn-refused)
PORT     STATE SERVICE
22/tcp   open  ssh
3306/tcp open  mysql
3500/tcp open  rtmp-port
6379/tcp open  redis

Nmap done: 1 IP address (1 host up) scanned in 1374.16 seconds

当我尝试在我的机器上运行防火墙规则更新时

$ sudo ufw allow 1234
WARN: uid is 0 but '/usr' is owned by 501
Skipping adding existing rule
Skipping adding existing rule (v6)

我仍然无法从本地计算机访问虚拟服务器的 1234 端口。我还需要做什么才能打开虚拟服务器的 1234 端口?

答案1

那一个例子红宝石正在收听端口 1234用于连接仅限 127.0.0.1。因此,除非您让它接受来自主机的连接,否则端口转发不会发生太大变化。

相关内容