监听端口 22

监听端口 22

有没有办法监听我服务器上的 22 端口,看看是否有人在通过 ssh 进入我的服务器时提交了命令?或者更确切地说,输出提交了哪些命令(以及连接的 IP 地址),就像“实时”日志一样?

答案1

假设它是一个 Linux 机器,要查看尝试的 SSH 连接,请尝试:

tail -f /var/log/auth.log

答案2

您无法监听端口(SSH 已经在监听端口),也无法监听流量(流量已加密)。不过您可以启用流程会计. 这会记录每个进程的运行情况以及运行该进程所用的处理器时间。

它主要用于向使用大型机系统的人们收取费用,但现在仍然存在,并且对于安全审计来说非常方便。

此 FAQ.org 条目告诉您有关如何打开它的所有信息:http://www.faqs.org/docs/Linux-mini/Process-Accounting.html

当然,不要忘记阅读那些有用的会计命令的手册页。

答案3

sshd配置文件中,您可以将调用的 shell 更改为记录所有内容的包装器;也许script。我从未尝试过这样做,而且很难使其防篡改。

答案4

您无法直接监听端口,因为 ssh 在设计上是加密的(安全外壳)

没有标准的方法,但是添加

HISTFILE=/tmp/`whoami`-log

如果您的用户不太聪明,那么系统 bashrc 或类似的东西可能会起作用。

如果您关心用户在您的机器上做什么,您应该考虑诸如 FreeBSD 的 jails 或某种形式或受限的 shell 之类的替代方案。

相关内容