Sha*_*ani 5 ssh security password 12.04
可能重复:
如何审核用户并访问我服务器上的 SSH 尝试?
我最近不得不将我的 Ubuntu 12.10 根密码泄露给我的一位朋友,以便他可以通过 SSH 进入我的系统并向我发送一些文件。现在他是我的朋友,我信任他,所以我毫不犹豫地分享了我的密码。然后我确实改变了它。
但它让我震惊,我如何查看远程登录到我的系统的其他用户执行的所有命令(显然不是我的朋友。我的意思是一般)。他们可以在多大程度上访问我的数据(尤其是我的密码,例如我使用 Last Pass 那么他们也可以访问我的帐户密码吗?
另外,当我允许某人远程登录我的系统时,我应该采取哪些预防措施,以及如何跟踪他们使用的各种命令或他们在我的系统中所做的更改。除了检查 /var/log/auth.log 文件之外,是否还有一些简单的方法可以在有人登录我的系统时获得通知?
在 AskUbuntu 上阅读这个问题并检查我的 VPS后,我遇到了一个类似的问题,结果发现有无数的暴力尝试。就在那时我决定采取行动。
现在根据我链接到的问题,如果您想通过 ssh 在您的计算机上看到失败的登录尝试(可能是暴力尝试或其他任何方式),请尝试输入以下内容:
grep sshd.\*Failed /var/log/auth.log | less
Run Code Online (Sandbox Code Playgroud)
如果输出由多行组成,则意味着多次暴力尝试,特别是如果它们发生在较短的时间间隔内,您可能需要执行以下操作:
为此,请使用您喜欢的编辑器打开位于/etc/ssh/sshd_config 的文件,如下所示vim /etc/ssh/sshd_config。
1. 尝试将 ssh 从端口 22 移出:现在找到以下行:
# What ports, IPs and protocols we listen for
Port 22
Run Code Online (Sandbox Code Playgroud)
并注释掉端口 22,并使用您可能喜欢的任何端口。例子:
# What ports, IPs and protocols we listen for
# Port 22
Port 28934
Run Code Online (Sandbox Code Playgroud)
Please remember that ports below 1024 need special (root) permission.我不知道这会如何干扰它,但我只是说。
2. 禁用通过 ssh 的 Root 登录:由于 root 用户名是可预测的,并且提供对系统的完整访问权限,因此通过 SSH 提供对此帐户的不受限制的访问是不明智的。找到PermitRootLogin行并将其设置为no。
PermitRootLogin no
Run Code Online (Sandbox Code Playgroud)
3. 禁用密码身份验证:生成并使用 SSH 密钥登录系统。如果没有启用密码,攻击者将需要猜测(或窃取)您的 SSH 私钥才能访问您的服务器。这是非常非常困难的事情。继续找到显示“PasswordAuthentication”的行并将其设置为“no”
PasswordAuthentication no
Run Code Online (Sandbox Code Playgroud)
!警告!在此之前,请参阅此处的指南,了解如何设置证书身份验证。
注意:进行更改后,请使用sudo /etc/init.d/ssh restart. 要通过 ssh 连接到另一个端口,请使用:ssh username@hostname.com -p <port_number>。
请查看本指南,了解如何设置极其强大且有效的防火墙,该防火墙集成到 Linux IPTables中。
我个人使用并很快想到的一个是Fail2Ban。Fail2ban 将监视您的日志文件以查找失败的登录尝试。当某个 IP 地址超过最大身份验证尝试次数后,它将在网络级别被阻止,并且该事件将被记录/var/log/fail2ban.log。要安装它:sudo apt-get install fail2ban
有一个名为 的 Linux 命令history,它允许您查看到目前为止已经输入了哪些命令。尝试history在终端中输入以查看到目前为止的所有命令。如果您是root ,这可能会有所帮助。
要搜索特定命令,请尝试:history | grep command-name
列出ssh 之后的所有命令:fc -l ssh
您还可以使用 vi 编辑命令(还没有尝试过 vim,尽管我认为它也有效):fc -e vi
您还可以删除历史记录:history -c
注意:如果您不喜欢该命令,您的主目录 ( )history中还有一个名为.bash_history(如果您使用的是 bash)的文件,您可以通过该文件查看在 bash shell 中键入的所有内容。cd ~cat
| 归档时间: |
|
| 查看次数: |
1237 次 |
| 最近记录: |