ROOT免密
希望 root 用户可以无需密码登录,你可以进行以下配置:
步骤 1:备份 PAM 配置文件
首先,备份现有的 PAM 配置文件,以防出现问题时可以恢复:
sudo cp /etc/pam.d/login /etc/pam.d/login.bak
步骤 2:修改 PAM 配置文件
使用文本编辑器编辑 PAM 配置文件:
sudo vi /etc/pam.d/login
在文件的开头添加或修改以下内容,以便仅对 root 用户启用无密码登录:
auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
auth sufficient pam_succeed_if.so user = root
auth required pam_unix.so
添加的 pam_succeed_if.so 行表示如果用户是 root,则认证通过,不需要密码。
步骤 3:确保 /etc/securetty 包含你想要的终端
确保 /etc/securetty 文件中包含你希望 root 用户可以无密码登录的终端,例如 tty1、tty2 等。打开并编辑 /etc/securetty 文件:
sudo vi /etc/securetty
确保文件中包含类似以下内容:
tty1
tty2
tty3
tty4
tty5
tty6
ttyS0
步骤 4:重启系统
完成上述修改后,重启系统:
sudo reboot
这样,当你使用 root 用户登录时,不会要求输入密码。非 root 用户仍然需要输入密码进行登录。
注意事项
- 安全性警告:即使只为 root 用户配置无密码登录,仍然存在安全风险。确保此设置仅在受信任和安全的环境中使用。
- 恢复配置:如果遇到任何问题,可以使用备份的 PAM 配置文件恢复:
sudo cp /etc/pam.d/login.bak /etc/pam.d/login
ROOT自动登录:
步骤 1:创建getty@tty1.service.d目录
首先,创建一个目录来放置我们自定义的服务配置文件:
sudo mkdir -p /etc/systemd/system/getty@tty1.service.d
步骤 2:创建override.conf文件
在该目录中创建一个override.conf文件:
sudo vi /etc/systemd/system/getty@tty1.service.d/override.conf
在文件中添加以下内容:
[Service]
ExecStart=
ExecStart=-/sbin/agetty --autologin root --noclear %I $TERM
Type=idle
这段配置将使得在tty1终端上自动登录root用户。
步骤 3:重启getty服务
为了使更改生效,需要重新加载systemd配置并重启getty服务:
sudo systemctl daemon-reload
sudo systemctl restart getty@tty1.service
可选步骤:禁用SELinux的影响
如果你的系统启用了SELinux,它可能会阻止自动登录。为了避免这种情况,你可以临时设置SELinux为宽容模式:
sudo setenforce 0
为了永久修改SELinux配置,你需要编辑配置文件:
sudo vi /etc/selinux/config
将以下行修改为:
SELINUX=permissive
步骤 4:重启系统
完成上述步骤后,重启系统:
sudo reboot
系统重启后,root用户应该会自动登录到tty1终端。
注意事项
- 安全性警告:自动登录root用户会极大地降低系统的安全性。请确保此设置仅在受信任的环境中使用,例如单用户模式或隔离网络。
- 仅限控制台登录:这种方法仅适用于本地控制台(如tty1)。如果需要远程自动登录(例如SSH),建议使用SSH密钥对而不是自动登录root。
隐性问题:
SSH连接时无法连接成功,也就是说这两种方法仅限控制台登录:这种方法仅适用于本地控制台(如tty1)。如果需要远程自动登录(例如SSH)还是需要输入原本密码,或选择SSH密钥登入和修改SSH服务的配置
5517

被折叠的 条评论
为什么被折叠?



