linux系统——系统安全及应用(1)

  • 如果服务器中的用户已经固定,不需要更改,可以采取锁定账号配置文件的方法:使用chattr命令,分别加“+i”“-i”来锁定,解锁文件,lsattr命令可以查看文件锁定情况 。(在账号文件被锁定的情况下,内容不允许改变,所以无法添加,删除账号 ,也不能更改用户的密码,登录shell,宿主目录等属性信息)(扩展:chattr “+a”“-a”选项,+a:选择不允许用户编辑文件内容,但允许用户追加;-a:则允许用户编辑。)

  • 如果不希望某个用户登录系统可以在创建该用户时加上“-s”选项+/sbin/nologin。例如:useradd  用户名 -s  /sbin/nologin
密码安全控制
  • 在不安全的网络环境中,为了降低密码被猜出或暴力破解的风险,用户应定期修改密码,避免长期使用一个密码。管理员可以设置密码的最大有效时间,密码过期的用户登录时会被要求重新设置密码,否则就拒绝登录
  • 要求由批量创建的用户初次登录时必须自设新密码
  • 修改/etc/pam.d/system-auth设置密码错误多少次结束会话
命令历史,自动注销
  1. xshell远程的历史命令机制为用户提供便利,但也给用户带来了潜在的风险。只要获得用户的命令历史文件,该用户的命令操作就一览无余,如在命令行中输入了明文密码,可能对服务器的安全存在巨大隐患。为防止此隐患,我们可以通过修改/etc/perofile文件中的HISTSIZE的值限制历史记录的条数,该操作可以影响系统中所有新登录的用户。如设置最多50条: 
  2. 还可以修改用户宿主目录中的~/.bash_logout文件,设置用户退出Bash环境以后,所有记录的历史命令将自动清空

2.用户切换与提权

su命令——切换用户

su命令后面跟上想要切换到的用户名,例如su username。这将使你切换到指定的用户,但并不会加载该用户的完整环境变量和配置文件。 su -命令则会加载目标用户的完整环境,包括其家目录、shell配置文件

sudo命令——提升执行权限

sudo命令允许普通用户以其他用户(通常是root用户)的身份执行命令。它在安全控制中起到重要作用,因为它提供了权限管理的灵活性,同时避免了直接以root用户登录带来的安全风险。通过配置sudoers文件,可以精细控制哪些用户可以执行哪些命令,以及是否需要输入密码等。

条件:

使用sudo命令前,需要由超级管理员预先进行授权,sudo的配置文件为/etc/sudores,文件的默认权限为440.需使用专门的visudo进行编辑,虽然也可以用vi进行编辑,但保存时必须执行:W!命令来强制执行,否则系统将提示为只读文件而拒绝保存。

授权格式为:user MACHINE=COMMANDS

授权配置文件包括用户,主机,命令三个部分,即授权那些人在哪些人在哪些主机上执行那些命令:

用户(user):直接授权指定的用户名,或采用“%组名”的形式(授权一个组的所有用户)

主机(MACHINE):使用此配置文件的主机名称,此部分主要是方便在多个主机间共用同一个sudores文件,一般设为localhost或者实际的主机名即可。

命令(COMMANDS):允许授权的用户通过sudo方式执行的特权命令,需填写命令程序的完整路径,多个命令之间以逗号“,”进行分隔。

%组名 ALL=NOPASSWD:ALL设置该组内用户无需验证密码即可执行任何命令。

同时为多个用户,在多个主机上授权相同的命令时,可以以起别名的方式进行:分别通过关键字User_Alias,Host_Alias,Cmnd_ALies来进行设置。(别名必须为大写)如:

User_Alias   大写别名=用户1,用户2,用户3…

Host_Alias   大写别名=主机1,主机2,主机3…

Cmnd_Alias  大写别名=命令位置1,命令位置2,命令位置3…

用户别名   主机别名=命令别名

系统引导和登录控制

1.开关机安全控制

调整BIOS引导设置
  1. 将第一优先引导设备(First Boot Device)设为当前系统所在磁盘
  2. 禁止从其他设备(如光盘,U盘,网络等)引导系统,对应的项设为“Disabled”
  3. 将BIOS的安全级别改为“setup”,并设置好管理密码,以防未授权的修改
限制更改GRUB引导参数
  1. 通过备份GRUB引导参数,可以对一些系统问题进行修复,但从系统安全的角度考虑,为防止任何人都可以修改GRUB引导参数,可以为GRUB设置一个密码,只有提供正确密码才允许修改引导参数;为GRUB设置密码建议采用“grub2-mkpasswd-pbkdf2”命令生成,表现为经过PBKDF2算法加密的字符串,生成密码后再/etc/grub.d/00_hearder配置文件中,添加对应的用户,密码等配置,具体添加内容如下:
  2. 使用grub2-mkconfig命令生成新的grub.cfg配置文件

命令:grub2-mkconfig -o /boot/grub2/grub.cfg  //生成新的grub文件

2.终端及登录控制

在Linux服务器中默认开启6个tty终端(也通过自行配置开启更多),允许任何用户进行本地登录。

禁止root用户登录

在Linux系统中,通过login程序读取/etc/securetty文件,决定允许root用户能登录那些终端,如果想禁止root登录某个终端,只需注释或者删除/etc/securetty文件对应的执行即可。

禁止普通用户登录

当服务器正在进行备份或者调试等维护工作时,可能不希望再有新的用户登录系统,这时候,只需要简单建立/etc/nologin文件即可。login程序如果检测到此文件存在,则拒绝普通用户登录系统(实际是利用了shutdown延迟机关的限制机制),当删除此文件或重新启动主机以后,恢复正常。

弱口令检测,端口扫描

1.弱口令检测——John the Ripper

下载并安装John the Ripper

John the Ripper的官方网站是http://www.openwall.com/john/,可在此网站获得稳定版源码包

以源码包john-1.8.0.tar.gz为例,解压候可以看到是三个目录——doc手册文档,run运行程序,src源码文件,doc/README链接的说明文件;切换到src子目录并执行“make clean linux-x86-64”命令,即可执行编译过程;编译完成后,run子目录下会生产一个名为john的可执行程序及相关的配置文件,字典文件等,可复制到任何位置使用。

检测弱口令账号

在安装有John的服务器中,只需执行run目录下的John程序,将待检测的shadow文件作为命令行参数,可以直接对/etc/shadow文件进行弱口令分析检测,其他服务器可以对shadow文件进行复制,传递给John进行检测,检测时间过长可以使用Ctrl+C终止。检测的结果密码在前用户名在后保存在john.pot文件中,可以结合“–show”选项进行查看

使用密码字典文件

John the Ripper默认提供的字典文件为password.lst,并列出除了3000多个常见的弱口令,有必要用户可以自行添加密码组合,完善字典,使用John程序时,可以结合“–wordlist=”选项来指定字典文件的位置,以便对指定密码文件进行暴力分析。

2.网络扫描——NMAP

安装NMAP软件包

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点!真正的体系化!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

以上网络安全知识点!真正的体系化!**

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值