knowledge-base

我的知识库 / Linux / Linux-安全登录

Linux-安全登录

202305291417259

我们都知道

很遗憾,如果你的系统没有做特殊等登陆配置,那么其他人便可以利用 ssh ip:22 root/暴力密码 来破解登入你 的 linux 系统,一旦被他破解,你的系统就可以为他所用了。

但是,我们可以通过以下三种方式来避免发生这类安全问题。

1. 禁用 root 账号登录

禁用 root 账号,那么我们就必须创建其他登录账号,这里建议账号名不要为 admin 这类常见用户名。

adduser dp

此时创建的用户不能使用 sudo 权限,考虑将用户加入 sudo 组

usermod -a -G sudo dp

并且,为了避免使用 sudo 权限需要时不时的输入密码的麻烦,进行免密设置。在 /etc/sudoers 文件中新增行。

dp ALL=(ALL) NOPASSWD: ALL

打开 /etc/ssh/sshd_config 文件,找到 PermitRootLogin 项,修改该项成如下:

PermitRootLogin no

保存配置后,重启 ssh 服务:

systemctl restart ssh

至此,root 账号已经被禁用远程登录了。

2. 更改 ssh 远程端口

弃用 22 端口,使用 0~65535 范围内随机端口作为 ssh 端口。

要做的是修改 /etc/ssh/sshd_conf 文件,找到 Port 项,修改该项成如下:

Port 39855

保存配置后,重启 ssh 服务:

service ssh restart

至此,服务器 ssh 远程端口已经修改为 39855,不能再使用 22 端口登陆系统了。

3. 使用密钥文件登录

本地创建密钥文件:

ssh-keygen -t rsa -C [email protected] -f ~/.ssh/id_rsa_poneding

以上命令会默认在 ~/.ssh 目录下生成 id_rsa_poneding 私钥文件和 id_rsa_poneding.pub 文件,将 id_rsa_poneding.pub 文件内容追加到服务器 ~/.ssh/authorized_keys 文件中即可。


« Linux 启用 crontab 日志

» shell 命令间隔符