• 账号安全及应用


    一、账号安全控制

     1.1系统账号清理

    用户设置为无法登陆

    锁定账户

    删除账户

    设定账户密码,本质锁定

    锁定配置文件-chattr:

    -a 让文件或目录仅供附加用途。只能追加

    -i 不得任意更动文件或目录。

    1.2密码安全控制

    chage

    1.3历史命令

    history:查看历史命令,默认一千条

    history -c    清空历史命令

    二、切换用户

    2.1用户切换su命令

    su命令可以切换用户身份,并且以指定用户的身份执行命令。

    pam_rootok.so  root不需要密码

    pam_wheel.so   只有wheel组才可以切换

    $ su root   切换至root用户

    wohami   显示当前登录的用户

    2.2查看su命令的操作日志,绝对路径:/var/log/secure

    这里可以用less或tail查看,这里推荐tail

    2.3用户提权  sudo

    命令格式     sudo   [选项]   命令

    选项

    功能

    -V显示版本编号
    -l显示出自己的权限
    -k将会强制使用者在下一次执行sudo时需要输入密码(无论多久)
    -p可以更改问密码的提示语,其中%u会代换为使用者的账号名称,%h会显示主机名称
    -u  用户名指定用户的权限
    -s执行环境变数中的SHELL所指定的shell

    2.3.1编辑配置文件的绝对路径

    vim /etc/sudoers

    2.3.2配置详解

    1.root字段:用户名或UID,%组名或%GID

    2.第一个ALL字段:IP地址或主机名,ALL代表任意主机

    3.第二个ALL字段:用户字段,用户名或UID,ALL代表任意用户

    4.第三个ALL字段:命令字段(绝对路径)可以是,命令名(command name),文件夹里的命令(directory),可以编辑sudoers这个文件(sudoedit),变相变成管理员。

    2.3.4sudo 子目录

    如果将所有提权都放在配置文件/etc/sudoers下不便于管理,可以通过在/etc/soduers.d/下创建子目录,可以更好地管理sudo的授权规则

    三、PAM安全认证流程

    PAM提供了灵活和可定制的用户身份验证框架,使系统管理员能够根据需要配置和管理身份验证方式。

    3.1PAM相关文件

    模块文件目录:/lib64/security/*.so

    特定模块相关的设置文件:/etc/security/

    man  8  +模块名:查看帮助

    3.2PAM工作原理

    PAM认证遵循顺序   Service(服务)---PAM(配置文件)---pam_*.so

    这里查看su的PAM配置文件做实例,cat  /etc/pam.d/su

    3.2.1第一模块类型

    1.auth:账号的认证和授权,用户名

    2.Account:账户的有效性,与账户管理相关的非认证类的功能,如:用来限制/允许用户对某个服务的访问时间,限制用户的位置(例:root用户只能从控制台登录)

    3.Password:用户修改密码时密码复杂度检查机制等功能

    4.Session:用户会话期间的控制,如:最多打开的文件数,最多的进程数等

    5.-type:表示因为缺失而不能加载的模块将不记录到系统日志,对于那些不总是安装在系统上的模块有用

    3.2.2第二模块类型Contrl Flags,PAM验证类型的返回结果

    1.required验证失败时依然继续,但返回Fail

    2.requisite验证失败则立即结束整个验证过程,返回Fail

    3.sufficient验证成功则立即返回,不再继续,否则忽略结果并继续

    4.optional不用于验证,只显示信息(通常用于session类型)

    3.2.3第三列要调用的功能或参数

    PAM验证

    3.2.4shell模块

    功能检查有效shell
    帮助命令格式man pam  shells
    案例不允许使用/bin/csh的用户本地登录
    模块

    pam_shells.so只允许规定的shell类型通过,是在/etc/shells文件中存在的类型通过

    四、*limit

    ulimit  -a:查看全部内核

    vim /etc/sysctl.conf:专门用来修改内核参数的

    内核参数:

    只读:只用于输出信息

    五、grub加密

    /etc/grub.d-目录

    00_header设置grub默认参数
    10_linux系统中存在多个linux版本
    20_ppc_terminfo设置tty控制台
    30_os_prober设置其他分区中的系统(硬盘中有多个操作系统时设置)
    40_custom和41_custom用户自定义的配置

    5.1GRUB 2  加密

    由于GRUB 2负责引导linux系统,其作为系统中的第一道屏障的安全性非常重要,对GRUB 2进行加密可以实现安全性。

    GRUB 2密码支持以下两种格式:

    明文密码:密码数据没有经过加密,安全性差

    PBKDF2加密密码:密码经过PBKDF2哈希算法进行加密,在文件中存储的是加密后的密码数据,安全性较高。

  • 相关阅读:
    Express-05
    数据库常见面试题--MySQL
    unity 使用小技巧(个人认为还算适用的)
    go 线程限制数量v1 --chatGPT
    关于ComfyUI的一些Tips
    AcWing算法基础课笔记 ------ 第三章 搜索与图论
    解决vulhub漏洞环境下载慢卡死问题即解决docker-valhub漏洞环境下载慢的问题
    渗透学习—靶场篇—墨者学院—SQL注入漏洞测试(参数加密)
    静态pod 创建使用示例详解
    [随笔] 具有产品意识的工程师
  • 原文地址:https://blog.csdn.net/dinzhen_zhenzhu/article/details/137965883