138 端口是 NETBIOS 名称服务器 (NBNS) 使用的 UDP 端口。该端口用于在 Windows 网络中解析计算机名称到 IP 地址。在 Linux 系统中,NBNS 协议通常不需要,因此关闭 138 端口可以提高安全性。
关闭 138 端口的步骤
禁用 systemd 服务
对于使用 systemd 作为 init 系统的 Linux 发行版,可以通过以下步骤禁用 NBNS 服务:
sh
sudo systemctl disable nmbd
sudo systemctl stop nmbd
禁用 sysvinit 服务
对于使用 sysvinit 作为 init 系统的 Linux 发行版,可以通过以下步骤禁用 NBNS 服务:
sh
sudo service nmbd stop
sudo chkconfig nmbd off
防火墙阻止
除了禁用 NBNS 服务外,还建议使用防火墙阻止对 138 端口的访问。这有助于防止外部攻击者利用未经授权的 NBNS 通信。
防火墙配置命令因系统而异。以下是一些常见命令:
* **UFW:** sudo ufw deny 138/udp
* **iptables:** sudo iptables -A INPUT -p udp --dport 138 -j DROP
验证关闭
要验证 138 端口是否已关闭,可以使用以下命令:
sh
sudo netstat -pnltu | grep 138
如果命令没有输出,则表示 138 端口已关闭。