网站建设的行业代码是多少,队徽logo在线设计,十大高端全屋定制,wordpress短代码页面Linux主机用户登陆安全配置
在Linux主机上进行用户登录安全配置是一个重要的安全措施#xff0c;可以防止未经授权的访问。以下是如何创建用户hbu、赋予其sudo权限#xff0c;以及禁止root用户SSH登录#xff0c;以及通过ssh key管理主机用户登陆。
创建用户hbu
使用具有…Linux主机用户登陆安全配置
在Linux主机上进行用户登录安全配置是一个重要的安全措施可以防止未经授权的访问。以下是如何创建用户hbu、赋予其sudo权限以及禁止root用户SSH登录以及通过ssh key管理主机用户登陆。
创建用户hbu
使用具有root权限的账户或者通过sudo登录到你的Linux主机通过useradd命令创建新用户hbu并设置密码。
# 创建用户
sudo useradd -m hbu
# passwd命令为新用户设置密码。
sudo passwd hbu备注如果采用root用户则不需要加sudouseradd创建用户命令中的参数-m选项会自动为用户创建主目录。
赋予用户sudo权限
1.备份sudo配置文件/etc/sudoers
sudo cp /etc/sudoers /root/sudoers.bak2.编辑sudoers配置文件
sudo visudo3.添加配置项
# User privilege specification
root ALL(ALL:ALL) ALL
hbu ALL(ALL:ALL) NOPASSWD:ALL4.保存并退出。 在visudo中你可以按CtrlX然后按Y保存修改。
备注visudo默认采用nano编辑器如果不熟悉操作命令可以先为配置文件/etc/sudoers增加写权限,然后修改配置内容保存修改并退出最后取消/etc/sudoers写权限
禁止root用户ssh登陆
在Linux系统中出于安全考虑不直接允许root用户通过SSH远程登录。相反用户可以使用一个普通用户账户并通过sudo命令来执行需要root权限的命令。这样既可以提高安全性又能保持系统管理的灵活性。
以下是一些禁止root用户通过SSH登录的方法
方法1修改sshd配置
1.打开SSH配置文件
sudo vim /etc/ssh/sshd_config2.在文件中找到或添加以下行
PermitRootLogin no保存并关闭文件。
3.重启SSH服务以使更改生效
sudo systemctl restart sshd
# 或者
sudo service ssh restart方法2使用PAMPluggable Authentication Modules限制
1.创建一个PAM配置文件来限制root登录
sudo nano /etc/pam.d/sshd_root_disable2.在文件中添加以下内容
auth required pam_access.so listroot deny3.修改SSH配置文件指向新的PAM配置文件
sudo nano /etc/ssh/sshd_config
#添加或修改以下行
UsePAM yes
AccountRequiredPam root_disable保存并关闭文件。
4.重启SSH服务
sudo systemctl restart sshd
# 或者
sudo service ssh restart配置用户hbu免密登陆
在Linux系统中配置SSH免密登录主要涉及到生成SSH密钥对然后将公钥添加到远程服务器的~/.ssh/authorized_keys文件。配置wa完成后用户就可以无密码登录到远程服务器。
以下步骤适用于大多数基于Linux的操作系统。
1.生成SSH密钥对
首先在本地机器上生成SSH密钥对。打开终端执行以下命令
ssh-keygen -t rsa -b 2048-t rsa指定密钥类型为RSA。 -b 2048 指定密钥长度为2048位这是推荐的长度。
执行上述命令后系统会询问保存密钥的位置默认为~/.ssh/id_rsa和输入密码可选。如果你不需要密码保护密钥直接按回车即可。
2.将公钥复制到远程服务器
生成密钥对后使用ssh-copy-id将公钥id_rsa.pub添加到远程服务器的~/.ssh/authorized_keys文件中。
# ssh-copy-id 用户名远程服务器地址
ssh-copy-id user192.168.1.1003.配置SSH免密登录可选
为了确保每次都能免密登录你可以在本地机器的~/.ssh/config文件中添加以下配置
Host 远程服务器别名HostName 远程服务器地址User 用户名IdentityFile ~/.ssh/id_rsaStrictHostKeyChecking no将远程服务器别名替换为你自定义的名称例如my_server将远程服务器地址和用户名替换为实际的服务器地址和用户名。这样你就可以使用别名来免密登录了
# ssh 远程服务器别名
sshl my_server注意: 确保远程服务器的.ssh目录和authorized_keys文件的权限设置正确。 如果在添加公钥后仍然无法免密登录检查是否禁用了密码认证在/etc/ssh/sshd_config中设置PasswordAuthentication no并确保SSH服务已重新启动。 本地配置使用StrictHostKeyChecking no可以避免首次连接时出现主机密钥验证的提示但这会降低安全性。建议仅在信任网络中使用此设置。