• 系统安全及应用


    一、基本安全措施

    系统账号清理

    1、 将非登录用户的shell设为/sbin/nologin

      方法一:usermod -s

      方法二:chsh命令,交互式修改

      方法三:chsh -s

    示例:有个用户xuexi

        方法一:usermod -s /sbin/nologin xuexi

          方法二:chsh xuexi

    Changing shell for xuexi.

    New shell [/bin/bash]: /sbin/nologin

    Shell changed.

          方法三:chsh -s /sbin/nologin  xuexi

    除了上述三种方式,也可以直接vi编辑/etc/passwd文件进行修改

    2、锁定长期不使用的账号

      方法一:passwd -l (将在密文前增加2个“!”)解锁passwd -u 查看passwd -S

      方法二:usermod -L(将在密文前增加1个“!”)解锁usermod -U

    示例:tail -5 /etc/shadow  看后5

         方法一:passwd -l xuexi 锁定

         方法二:usermod -L xuexi 锁定

    注意:若用passwd -l命令对某账号进行锁定,若用usermod -U命令解锁,需要进行两次操作才行。

    除了上述两种方法,也可以直接vi编辑/etc/shadow文件进行修改。

    3、删除无用的账号:userdel -r 用户名

    4、锁定账号文件/etc/passwd/etc/shadow

    方法一:i锁(不能追加内容,不能修改)

    锁定:chattr  +i /etc/passwd   /etc/shadow  

    解锁:chattr  -i/etc/passwd   /etc/shadow  

    查看:lsattr  /etc/passwd    /etc/shadowetc

    方法二:a锁(可以追加内容,不能修改)

    锁定:chattr  +a/etc/passwd

    解锁:chattr  -a/etc/passwd

    注意:锁定后即使是超户,也不能修改该文件,即不能创建、删除、修改用户信息。

               只能超户解锁,非超级用户破解不了

    密码安全控制

    1、设置密码有效期

       修改密码有效期:chage -M 天数 用户名

                                   Passwd -x 天数 用户名

    2、设置今后添加用户时的默认密码有效期:

     方法:vi编辑/etc/login.defs文件,修改“PASS_MAX_DAYS”后面的数值

    要求用户下次登录时修改密码:方法:chage -d 0 用户名

    命令历史限制

    1、减少历史的命令条数

    方法一:vi编辑/etc/profile文件,修改“HISTSIZE=”后面的数值

    方法二:export HISTSIZE=数值

    注:/etc/profile  系统全局变量文件,所有和变量相关的我们都应该放在这里进入vim编辑

    全局生效export(让一个变量全局生效)

    2、注销时自动清空历史命令

    方法:vi编辑宿主目录下的“.bash_logout”文件,添加“history -c

    清空历史记录:history  -c

    终端自动注销

    方法一:vi编辑/etc/profile文件,添加“TMOUT=数值”

    方法二:export TMOUT=数值

    示例:方法一:vi编辑/etc/profile文件,添加“TMOUT=600

                  source /etc/pofile(生效操作)

          方法二:export TMOUT=600  闲置600秒后自动注销

    二、切换用户 su 命令

    1、作用:切换用户

    2、格式:su - 目标用户(有“-”初始化环境变量,无“-”环境变量不改变)

    3、查看su操作记录,安全日志文件:/var/log/secure

    三、提升权限sudo命令

    作用:授权普通用户限定使用命令范围的权限

    配置sudo授权

    方法一:添加单个用户的sudo授权

    通过visudo进入配置文件/etc/sudoers,添加内容(用vim进入配置文件是只读模式)

    格式:用户  IP地址=主机名   命令(命令前加“!”表示“除了”此命令)

    给普通用户单独开权限 xuexi  192.168.10.0/24 =    / sbin/fdisk

    授权sbin下所有命令,但是不让使reboot命令:

    给普通用户:xuexi   192.168.10.0/24 =       /sbin/*,!  /sbin/reboot

    让普通用户自己分区,禁止他任何能破坏系统的操作

     xuexi  192.168.10.0/ 24 =     /sbin/*,! /sbin/reboot,!  /sbin/fdisk  /dev/sda*

    指定普通用户看日志xuexi  192.168.10.0/ 24=  /bin/cat  /var/log/messages*,

    /usr/bin/head  /var/log/messages*,/usr/bin/tail  /var/log/messages*,

    /usr/bin/nl  /var/log/messages*,/usr/bin/less  /var/log/messages*,

    /bin/more  /var/log/messages*,/usr/bin/tac  /var/log/messages*

    普通用户 xuexi   192.168.10.0/ 24 =   /sbin/service sshd reload(允许sshd重启)

    不退出不立即生效 ,先写允许,在写拒绝

    普通用户输入sudo -l 查看有没有特殊权限(输入普通用户密码)

    方法二:批量授权(根据实际需求,设置别名)

    设置别名后,添加格式:用户别名  主机别名=命令别名(所有别名均大写)

    查看sudo操作记录

    方法:第一步:visudo添加“Defaults logfile=/var/log/sudo

              第二步:cat/var/log/sudo

    查询授权操作   sudo  -l  

    普通用户输入sudo -l 查看有没有特殊权限(输入普通用户密码)

  • 相关阅读:
    融云技术分享:全面揭秘亿级IM消息的可靠投递机制
    企业微信的IM架构设计揭秘:消息模型、万人群、已读回执、消息撤回等
    喜马拉雅亿级用户量的离线消息推送系统架构设计实践
    uni-app 项目使用 npm 包中的小程序自定义组件
    Leetcode563. 二叉树的坡度
    vue看源码遇到 报错
    windows使用
    mysql 显示行号
    从优秀到卓越
    【面经】阿里蚂蚁金服22秋招-Java后端
  • 原文地址:https://www.cnblogs.com/wangna123/p/9852544.html
Copyright © 2020-2023  润新知