linux下禁止root ssh远程登录和添加允许新用户登录ssh

简介: 禁用ssh root登录
######### 1. 添加用户 ###########
useradd -d /eisc -m eisc                                # 创建普通用户: 用户名 和 用户组、密码 都是 eisc   用户目录是 /eisc
echo "请输入用户的密码"
passwd eisc                                             # 给testuser 用户设置密码
# groupadd eisc                                 # 新建test工作组
# useradd -g eisc eisc                          # 新建testuser用户并增加到testgroup工作组
                                                                # 注::-g 所属组 -d 家目录 -s 所用的SHELL
# usermod -G groupname username # 给已有的用户增加工作组
NR=`cat -n /etc/sudoers | grep root | grep ALL | awk -F" " '{print $1}'`
                                                                        # 定义一个变量NR,命令查看 root 的行号
sed -i "$NR a\eisc   ALL=(ALL)     ALL" /etc/sudoers
                                                                        # 授权规则是分配权限的执行规则
######### 2. 禁用root 用户登录 ###########
NR=`cat -n /etc/ssh/sshd_config | grep "#PermitRootLogin" | awk -F" " '{print $1}' | sed "s/ //g"`
                                                                        # Permit [pərˈmɪt] 允许 ;  login [ˈlɔɡˌɪn] 登录; 
                                                                        # 获取root允许登录规则的行号
sed -i "/PermitRootLogin/d" /etc/ssh/sshd_config
sed -i "$NR a\PermitRootLogin no" /etc/ssh/sshd_config 
                                                                        # 在变量NR 行 (root 规则的下一行)加入禁止登录规则
######### 3. 添加和允许用户登录 ###########
NR=`cat -n /etc/ssh/sshd_config | grep "ListenAddress" | awk -F" " 'NR==1{print $1}' `
                                                                        # 获取ssh 允许用户登录的位置
sed -i "/AllowUsers/d" /etc/ssh/sshd_config     # 先删除这个规则,再添加
sed -i "$NR a\AllowUsers admin eisc" /etc/ssh/sshd_config
                                                                        # Allow [əˈlaʊ] 允许用户登录 : admin eisc 两个用户,多个用户用空格隔开
/usr/sbin/sshd -T                                               # sshd 保存配置
/bin/systemctl restart sshd.service                     # 重启 sshd 服务
yum install -y net-tools                                        # 端口查看工具
netstat -ntlp                                                   # 查看运行的端口
exit
 lastlog                                                                # 查看登录情况
sshd -t                                                                 # sshd 检查
目录
相关文章
|
20天前
|
Web App开发 存储 Linux
Linux(33)Rockchip RK3568 Ubuntu22.04上通过SSH运行Qt程序和关闭Chrome的密钥提示
Linux(33)Rockchip RK3568 Ubuntu22.04上通过SSH运行Qt程序和关闭Chrome的密钥提示
59 0
|
1月前
|
域名解析 网络协议 Ubuntu
虚拟机ip不停地变每次使用ssh不好登录?有手就行!
虚拟机ip不停地变每次使用ssh不好登录?有手就行!
29 1
|
21天前
|
Linux 网络安全 数据安全/隐私保护
SSH工具连接远程服务器或者本地Linux系统
SSH工具连接远程服务器或者本地Linux系统
20 0
|
8天前
|
存储 安全 Linux
|
14天前
|
监控 安全 Linux
【专栏】Linux SSH 的安全对于远程管理至关重要,这几个小妙招安排上!
【4月更文挑战第28天】在数字化时代,Linux SSH 的安全对于远程管理至关重要。增强 SSH 安全包括:使用强密码,调整 SSH 配置文件,尤其是端口号和认证方式;采用密钥认证代替密码;限制登录用户,禁止密码登录;使用防火墙限制访问;定期更新系统和软件。此外,通过日志监控、入侵检测系统及及时应对攻击来提升安全监控。保持对安全知识的学习和更新,结合最佳实践,是保障 SSH 安全的关键。记得安全是个持续过程,时刻保持警惕!
|
21天前
|
Linux 网络安全
Linux(16)ssh_exchange_identification: read: Connection reset by peer问题
Linux(16)ssh_exchange_identification: read: Connection reset by peer问题
19 0
|
5天前
|
网络安全 数据安全/隐私保护
银河麒麟v10系统SSH远程管理及切换root用户的操作方法
银河麒麟v10系统SSH远程管理及切换root用户的操作方法
|
7天前
|
安全 Linux 网络安全
|
12天前
|
Linux Shell 数据安全/隐私保护
|
14天前
|
监控 前端开发 安全
【专栏】介绍了前端工程师如何掌握SSH命令,包括SSH协议的基础知识、命令行操作如登录、文件传输、目录管理和进程管理
【4月更文挑战第29天】本文介绍了前端工程师如何掌握SSH命令,包括SSH协议的基础知识、命令行操作如登录、文件传输、目录管理和进程管理。在前端开发中,SSH用于部署项目、协同后端开发及服务器监控。文章还强调了使用密钥认证、配置别名及安全注意事项,并提醒开发者面对问题时如何解决。学习和熟练运用SSH是前端工程师适应复杂项目需求的关键。