Linux下禁止root远程登录访问

server/2024/12/14 6:42:11/

开始讲故事

Long long ago, Linux远程访问方式有telnet、ssh两种协议;有人可能还会说vnc和rdp协议方式,后面这两种主要是可视化桌面场景下的,并非主流。

时过境迁,telnet因安全性低逐渐被禁用淘汰,最后就剩下独苗一棵ssh。使用ssh管控设备总该安全了吧!No~你不能直接使用root远程登录设备。

基于上面故事情节,我们只对sshd服务禁用root远程访问展开聊聊。禁用root远程登录的方法很多,总体而言两类:1、sshd自身提供能力;2、基于PAM模块能力。

sshd自身提供能力(最简单)

确保PermitRootLogin no被配置

~]# grep -i Root /etc/ssh/sshd_config   
PermitRootLogin yes

基于PAM(Pluggable Authentication Modules)模块能力

基于PAM可以使用Modules实现相关功能,例如:pam_securetty.sopam_listfile.so。相对简单的是pam_securetty,pam_listfile不太常用(后面我们再出一篇展开讲讲)。

centos7

1、在centos7中pam_securetty默认在/etc/pam.d/login (对telnet或控制台登录有效)中配置

~]# grep -i pam_securetty /etc/pam.d/login 
auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so

2、由/etc/securetty起到白名单作用,该文件不存在,则上述配置失效。

~]# ll /etc/securetty 
-rw-------. 1 root root 221 Apr  1  2020 /etc/securetty

国产Linux(Anolis8)

1、默认pam包中包含pam_securetty,但,不再默认定义到/etc/pam.d/login ;/etc/securetty文件也不存在。

配置禁止root远程访问sshd

1、确保/etc/pam.d/sshd首行配置了pam_securetty.so

~]# grep -i pam_securetty /etc/pam.d/sshd
auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so

2、确保/etc/securetty文件存在且为空

总结

如果PermitRootLogin no和securetty都配置了,肯定也没毛病。如果要临时放开root远程访问就要一一拆除。securetty文件本身是登录设备白名单,不同版本操作系统下对ssh管控设备名不太一样:

~]# who

root     pts/0        2024-12-04 13:48 (192.168.xx.xxx)

如上回显中pts/0就是一种终端设备:/etc/securetty值类型:①tty:终端 ②pts:伪终端 ③console:当前的控制台 ④vc:visual console虚拟控制台 ⑤vt:虚拟终端 ⑥hvc ⑦hvsi ⑧xvc等。

但是,经我测试,在Anolis8中,如果要临时允许root远程ssh,则需要配置ssh到/etc/securetty,而不是pts伪终端。


http://www.ppmy.cn/server/150024.html

相关文章

python数据分析之爬虫基础:requests详解

1、requests基本使用 1.1、requests介绍 requests是python中一个常用于发送HTTP请求的第三方库,它极大地简化了web服务交互的过程。它是唯一的一个非转基因的python HTTP库,人类可以安全享用。 1.2、requests库的安装 pip install -i https://pypi.tu…

大数据常用的算法--常用的分类算法

概述 分类算法是根据数据特征来预测数据的类别。 分类算法是一种监督学习(Supervised Learning)方法,它需要一个已知的类别标签的训练数据集,通过学习这个数据集来预测新的数据点的类别。例如,在电子邮件过滤系统中&am…

(软件测试文档大全)测试计划,测试报告,测试方案,压力测试报告,性能测试,等保测评,安全扫描测试,日常运维检查测试,功能测试等全下载

1. 引言 1.1. 编写目的 1.2. 项目背景 1.3. 读者对象 1.4. 参考资料 1.5. 术语与缩略语 2. 测试策略 2.1. 测试完成标准 2.2. 测试类型 2.2.1. 功能测试 2.2.2. 性能测试 2.2.3. 安全性与访问控制测试 2.3. 测试工具 3. 测试技术 4. 测试资源 4.1. 人员安排 4.2. 测试环境 4.2.…

21 设计模式之中介者模式

一、什么是中介者模式 中介者模式属于行为型设计模式,它的核心思想是:将对象之间的交互交给一个中介者对象来处理,而不是让对象之间直接通信。这样做的好处是减少了类与类之间的耦合,使得系统更加松散,便于维护和扩展。…

新能源汽车安全充电管理方案

摘要:近年来,随着国家碳达峰和碳中和目标的提出,国家节能减排政策实施力度的进一步加大大众的环保意识、环保理念进一步深入人心,同时根据国家战略安全需要,新能源汽车行业异军突起,发展迅猛。随着新能源汽车数量的不断…

实现盘盈单自动化处理:吉客云与金蝶云星空数据对接

盘盈单103v2对接其他入库:吉客云数据集成到金蝶云星空 在企业信息化管理中,数据的高效流转和准确性至关重要。本文将分享一个实际案例,展示如何通过轻易云数据集成平台,将吉客云的数据无缝对接到金蝶云星空,实现盘盈单…

yolov,coco,voc标记的睡岗检测数据集,可识别在桌子上趴着睡,埋头睡觉,座椅上靠着睡,平躺着睡等多种睡姿的检测,6549张图片

yolov,coco,voc标记的睡岗检测数据集,可识别在桌子上趴着睡,埋头睡觉,座椅上靠着睡,平躺着睡等多种睡姿的检测,6549张图片 数据集分割 6549总图像数 训练组91% 5949图片 有效集9&#x…

【Go基础】Go算法常用函数整理

Go算法常用函数整理 使用 Go 语言编写算法题时,掌握一些常用的函数和用法可以大大提高效率。 1. 排序 (slices 包): slices.Sort(x []T): 对切片 x 进行升序排序。需要 Go 1.18 版本。T 需要实现 constraints.Ordered 接口,例如…