您的位置:首页 > 其它

Day 26 用户管理

2018-08-13 16:22 393 查看
Day 26 用户管理

第1章 回顾 如何彻底关闭iptables 和 SElinux

1.1 关闭iptables

1. 临时关闭/etc/init.d/iptables stop 重启后失效/etc/init.d/iptables status 查看状态Iptables: firewall is not running.2. 永久关闭——重启生效Chkconfig iptables off 关闭Chkconfig |grep iptables 查看状态

1.2 SElinux

1. 永久关闭SElinuxDisabled selinux 彻底关闭2. 临时关闭 SElinuxGetenforce 现在selinux是否运行Setenforce 0 关闭 Setenforce 1 开启

1.3 面试题:如何让一个脚本开机自启动

写入/etc/rc.local (Centos 7 给 /etc/rc.d/rc.local 加上执行权限)或者加入chkconfig开机自启动

1.4 如何通过chkconfig 管理开机自启动

1. 脚本要存放在/etc/init.d下[root@CJY ~]# vim /etc/init.d/oldboyd
2. 脚本要有执行权限chmod +x /etc/init.d/**.sh
3. 要增加chkconfig要求的格式# chkconfig: 2345 99 98
运行级别 启动顺序 关闭顺序
4. 加入到chkconfig管理与检查chkconfig --add **.shchkconfig |grep **.sh[root@CJY ~]# chkconfig --add oldboyd
You have new mail in /var/spool/mail/root
[root@CJY ~]# chkconfig |grep oldboyd
oldboyd 0:off 1:off 2:on 3:on 4:on 5:on 6:off

1.5 找出/etc/init.d/下面的文件中 包含chkconfig:的行

[root@CJY ~]# grep --color 'chkconfig:' /etc/init.d/* |column -t
/etc/init.d/abrt-ccpp:# chkconfig: 35 82 16
/etc/init.d/abrtd:# chkconfig: 35 82 16
/etc/init.d/abrt-oops:# chkconfig: 35 82 16
/etc/init.d/acpid:# chkconfig: 345 26 74
/etc/init.d/atd:# chkconfig: 345 95 5
/etc/init.d/auditd:# chkconfig: 2345 11 88
/etc/init.d/blk-availability:# chkconfig: 12345 25 75
/etc/init.d/cpuspeed:# chkconfig: 12345 13 99
/etc/init.d/crond:# chkconfig: 2345 90 60
/etc/init.d/haldaemon:# chkconfig: 345 26 74
/etc/init.d/ip6tables:# chkconfig: 2345 08 92
/etc/init.d/iptables:# chkconfig: 2345 08 92
/etc/init.d/irqbalance:# chkconfig: 2345 13 87
/etc/init.d/lvm2-lvmetad:# chkconfig: 12345 02 99

第2章 用户管理:

2.1 用户和用户组

UID ×××号码GID 户口本号码用户分类root 0 虚拟用户 1-499 命令解释器/sbin/nologin 服务/程序 运行所需要的用户普通用户 500+

2.2 创建用户useradd

-u指定uid
-s shell 命令解释器 (默认是/bin/bash)/sbin/nologin
-M不创建家目录 (sM)
-g
指定用户组名称

2.2.1 #添加一个用户lidao999 uid为999 禁止 登录系统不创建家目录

[root@oldboyedu50-lnb ~]# useradd -u 999 -s /sbin/nologin -M lidao999
[root@oldboyedu50-lnb ~]# grep lidao /etc/passwd
lidao999:x:999:999::/home/lidao999:/sbin/nologin
[root@oldboyedu50-lnb ~]# ll /home/lidao999
ls: cannot access /home/lidao999: No such file or directory
#创建一个uid为999的虚拟用户 lidaoxxxx

2.3 userdel 默认不会删除用户老家

-r 删除用户的老家 与邮箱
通过注释 /etc/passwd 用户所在行

2.4 passwd 修改密码

2.4.1 交互式设置

[root@CJY ~]# passwd oldboy
Changing password for user oldboy.
New password:
BAD PASSWORD: it is too simplistic/systematic
BAD PASSWORD: is too simple
Retype new password:
passwd: all authentication tokens updated successfully.

2.4.2 --stdin 非交互式设置密码

#非交互式设置密码
[root@oldboyedu50-lnb ~]# echo 123456|passwd --stdin oldboy
Changing password for user oldboy.
passwd: all authentication tokens updated successfully.

2.5 usermod 修改用户信息

与useradd类似
#附加组 -G
[root@oldboyedu50-lnb ~]# id lidao999
uid=999(lidao999) gid=999(lidao999) groups=999(lidao999)
[root@oldboyedu50-lnb ~]# usermod -G root,oldboy,www lidao999
[root@oldboyedu50-lnb ~]# id lidao999
uid=999(lidao999) gid=999(lidao999) groups=999(lidao999),0(root),500(oldboy),501(www)
#清空附加组
[root@oldboyedu50-lnb ~]# usermod –G ‘’ lidao999
主要组 -g
[root@CJY ~]# usermod -g root lidao999
[root@CJY ~]# id lidao999
uid=999(lidao999) gid=0(root) groups=0(root)

2.6 groupadd 添加用户组

-g gid

2.6.1 添加一个虚拟用户mysql 用户和用户组的uid 666

useradd -u 666 -s /sbin/nologin -M mysql
#groupadd -g 666 mysql
#useradd -u 666 -g mysql -s /sbin/nologin -M mysql

2.7 查询用户信息

id显示用户信息 uid gid 和属于用户组
w显示谁登陆系统 并 在干什么
last所有用户的每次的登录情况
lastlog所有用户最近一次的登录情况

2.8 有关用户的文件和目录

文件
[root@oldboyedu50-lnb ~]# ll /etc/passwd /etc/group /etc/shadow /etc/gshadow
-rw-r--r-- 1 root root 1180 Aug 13 10:14 /etc/passwd #存放用户信息
-rw-r--r-- 1 root root 614 Aug 13 10:16 /etc/group #用户组信息 每个用户组里面有什么用户?
---------- 1 root root 873 Aug 13 10:49 /etc/shadow #用户密码信息
---------- 1 root root 501 Aug 13 10:16 /etc/gshadow #用户组密码信息
目录/etc/skel 每个新用户的家目录的模板
[root@oldboyedu50-lnb ~]# ll -a /etc/skel/
total 20
drwxr-xr-x. 2 root root 4096 Jul 10 18:21 .
drwxr-xr-x. 78 root root 4096 Aug 13 11:08 ..
-rw-r--r--. 1 root root 18 Mar 23 2017 .bash_logout #用户退出的时候 运行里面的命令
-rw-r--r--. 1 root root 176 Mar 23 2017 .bash_profile #/etc/profile
-rw-r--r--. 1 root root 124 Mar 23 2017 .bashrc #/etc/bashrc

2.9 命令行中出现-bash-4.1$这种故障如何解决

模拟故障:
先把/etc/profile中的
PS1的行注释
[wc@oldboyedu50-lnb ~]$ \rm -f .bash*
重新登录:
[root@oldboyedu50-lnb ~]# su - wc
-bash-4.1$
-bash-4.1$
-bash-4.1$

如何解决:
在有故障的用户下面
cp /etc/skel/.bash* ~

2.10 临时成为root sudo

2.10.1 oldboy用户 查看系统日志

1. sudo2. cat(root) suid3. 日志加上 r权限 4. root密码

2.10.2 sudo 尚方大宝剑(让普通用户以root运行某个命令 )

2.10.2.1 root 授予权限

oldboy进行测试
sudo -l #查看当前用户有什么大宝剑
[sudo] password for oldboy:
Sorry, user oldboy may not run sudo on oldboyedu50-lnb.
[oldboy@oldboyedu50-lnb ~]$ #你没有配置sudo
visudo ==== crontab -e
/etc/sudoers /var/spool/cron/root

2.10.2.2 给oldboy用户授权

#root用户 visudo 92行下面
#授予oldboy用户 ls,touch,mkdir
oldboy ALL=(ALL) /bin/ls, /bin/touch, /bin/mkdir

2.10.2.3 #oldboy进行测试

sudo ls /root/

2.10.2.4 #授予oldboy /bin/下所有命令

oldboy ALL=(ALL) /bin/*

2.10.2.5 #授予oldboy/bin/下所有命令,禁止使用vi和rm命令

oldboy ALL=(ALL) /bin/*, !/bin/rm, !/bin/su, !/bin/vi
#授予oldboy 系统所有命令并且不需要输入密码
oldboy ALL=(ALL) NOPASSWD:ALL

2.11 sudo 小结:

1.sudo授予权限精确到命令
2.授权所有 排除 不需要输入密码
3.su与su - 区别
用户审计 行为审计(记录用户操作)
跳板机 堡垒机



1.硬件:齐治堡垒机
2.开源软件:jumpserver
3.自己写:shell脚本
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Day 26 用户管理