要删除给定端口绑定,pid
可以使用 找到sudo netstat -lnpt
,然后使用 删除kill pid
。由于进程名称已知 (sshd),启动它的非 sudoer 用户可以使用 找到 pid:
$ ps --user user -o pid,comm | grep sshd
8543 sshd
然后将其杀死。因此,对于非 sudoer 用户来说,可以轻松自动删除端口绑定。但是,如果用户启动了多个端口绑定,则上一个命令将返回多个sshd
进程的多个 pid。如果用户只需要删除一个给定的端口绑定,则需要找到哪个 pid 正在监听该端口。
这可能吗 ?
答案1
如果你仍在寻找答案。大多数系统文件都可以由任何用户读取,因此如果你只需运行:
less /etc/ssh/sshd_config
您应该能够读取该文件。它应该包含类似 的内容Port 22
,这是 SSH 正在监听的端口。
端口 22 是 SSH 的默认端口,因此如果该行被注释掉(#Port 22
),那么它也监听端口 22。
答案2
如果您使用 Tectia,则可以使用以下命令检查 ssh-server 监听端口:
grep "port" < /etc/opt/SSHtectia/ssh-server-config.xml
如果有多个 ssh-server 进程,并且每个进程都在监听不同的端口,则可以使用以下命令检查每个进程正在监听哪个端口:
ps -ef | grep "ssh-server"