我正在学习 Hadoop,需要通过 ssh 连接到本地主机,以便设置伪分布式系统。我在另一个论坛上看到:
...通过安装 openssh-server 这样做会向互联网开放端口 22,这是有意义的。
我的问题是:
我执行时使用的密码是
sudo *somecommand*
黑客需要破解这个密码才能访问我电脑上的信息吗?还有(再问一个问题)如果是这样的话,我该如何设置一个安全的密码,这样每次使用 sudo 时输入起来就不会很麻烦了?我最好让 sudo 密码简短一些,而“port 22”密码可以写得非常长
答案1
您可以采取一些不同的方法来提高端口 22(SSH 服务器)的安全性。
将其移至其他端口 - 不太可能成为暴力破解脚本攻击的端口。例如 2922 或 31822。
仅允许特定用户访问 SSH。这可以通过 中的 AllowUsers 指令来实现
/etc/ssh/sshd_config
。仅允许特定 IP 地址范围连接到 SSH。这可以通过防火墙软件(例如 ufw)来实现。
使用防火墙限制 SSH 端口的新连接速率,例如,在 ufw 中使用“limit”子句。这可以降低用户尝试暴力破解服务器的速率,尽管 SSH 服务器也有一些自己的方法来处理这种情况。
确保所有具有 SSH 访问权限的用户都有安全密码。字符越多越好。8 个或更多字符是好的,10 个或更多字符更好。在标准键盘上允许使用数字和符号。强调不要使用字典单词、著名名称或简单模式的重要性。
强制使用基于密钥的身份验证,用户在其计算机上生成公钥-私钥对并将公共部分存储在 SSH 服务器上,而不是允许使用密码。