![tmux为什么要绑定外部可访问的端口?](https://linux22.com/image/678484/tmux%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E7%BB%91%E5%AE%9A%E5%A4%96%E9%83%A8%E5%8F%AF%E8%AE%BF%E9%97%AE%E7%9A%84%E7%AB%AF%E5%8F%A3%EF%BC%9F.png)
我正在对 Ubuntu 14.04 机器上监听外部接口的服务进行快速审核,并且 tmux 正在绑定 TCP *:50994 和 *:59147,如 所述netstat -l
。
我可以从网络上的另一台计算机连接到此端口(除非有任何防火墙设置),但我找不到任何关于它为何绑定外部端口的文档。这样做的目的是什么?有没有办法阻止它?
答案1
它是 tmux,是一个 Unix 套接字。Tmux 显然使用服务器套接字来允许运行独立的 tmux 服务器。man tmux
不使用任何标志运行 tmux
tmux
$ ss -l |grep tmux
u_str LISTEN 0 128 /tmp/tmux-1000/default 62749 * 0
然后运行 tmux-S /tmp/tmux.sock
并查看套接字路径的变化。
$ ss -l |grep tmux
u_str LISTEN 0 128 /tmp/tmux.sock 62765 * 0
注意,它不是 TCP。这可以通过使用标志-t
(tcp) 和-l
(listening)来判断
$ ss -tl
(returns no lines but the headers)
答案2
你使用 tcsh 吗?https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=204429有一个类似的问题,在 tcsh 上启动 tmux 会导致 dns 查询。