第1章 复习:

1.1 定时任务

1.1.1 1.定时备份

1.1.2 2.定时执行命令

1.1.3 3.书写排错流程

1.1.4 4.企业故障案例: 定时任务没有定向到空或追加到文件

1.1.5 5.企业故障案例: 书写重启tomcatjava程序)定时任务

 

 

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

2.1 /etc/rc.local

 (Centos 7 /etc/rc.d/rc.local 加上执行权限)

2.2 Chkconfig

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

2.3.1 脚本存放在/etc/init.d/

2.3.2 脚本要有执行权限

chmod +x /etc/init.d/oldboyd

 

2.3.3 增加chkconfig要求的格式

# chkconfig: 2345 99          98

             启动顺序    关机顺序

[root@oldboyedu50-lnb ~]# cat /etc/init.d/oldboyd

# chkconfig: 2345 99 98

echo oldboy

 

2.3.4 加入到chkconfig管理与检查

[root@oldboyedu50-lnb ~]# chkconfig --add oldboyd

[root@oldboyedu50-lnb ~]# chkconfig |grep oldboy

oldboyd         0:off   1:off   2:on    3:on    4:on    5:on    6:off

 

2.4 小结:

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

1./etc/rc.local

2.chkconfig

3.如何通过chkconfig管理

1)脚本/etc/init.d/  有执行权限

2)符合chkconfig格式

# chkconfig: 2345 99 99

3)添加到chkconfig管理并检查

2.4.1 回顾:

如何彻底关闭 iptables   selinux

 

 

 

第3章 用户管理:

3.1 用户分类:

UID 

root         0  

虚拟用户     1-499 命令解释器/sbin/nologin

             服务/程序 运行所需要的用户

 

普通用户     500

 

 

 

3.2 命令

3.2.1 Useradd

Useradd命令用于Linux中创建新的系统用户

 

语法:

 

Useradd (选项)(参数)

 

选项:

-u <uid>  指定用户uid

-s<shell > 命令解释器 (默认是/bin/bash)

        /sbin/nologin  虚拟用户  

-M      不创建家目录  (sM)

-g       指定用户组名称

 

举例

#添加一个用户lidao999 uid999 禁止 登录系统不创建家目录 

[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

 

 

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

userdel命令用于删除给定的用户,以及与用户相关的文件。若不加选项,则仅删除用户帐号,而不删除相关文件

 

语法

Userdel (选项)(参数)

 

 

 

选项

-f:强制删除用户,即使用户当前已登录;

-r:删除用户的同时,删除与用户相关的所有文件。

删除用户的老家  与邮箱

 

3.2.3 passwd   修改密码

passwd 命令用于设置用户的认证信息,包括用户信息、密码过期时间等

 

选项

--stdin    非交互式设置密码 

passwd   一问一答  交互式

 

举例:

#非交互式设置密码

[root@oldboyedu50-lnb ~]# echo 123456|passwd --stdin oldboy

Changing password for user oldboy.

passwd: all authentication tokens updated successfully.

 

 

3.2.4 usermod  修改用户信息

useradd类似

usermod命令用于修改用户的基本信息。Usermod命令不允许你改变正在线上的使用者账号名称

 

选项

 -g<群组>:修改用户所属的群组

-G<群组>:修改用户所属的附件群组

-u<uid>:修改用户的ID

-c<备注>:修改用户账号的备注文字

 

 

 

 

#附加组 -G

[root@oldboyedu50-lnb ~]# id lidao999    #id 显示用户信息,uid,gid和属于的用户组

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

 

3.2.5 groupadd 添加用户组

groupadd 命令用于创建一个新的工作组,新工作组的信息将被添加到系统文件中

 

语法

groupadd (选项)(参数)

 

选项

   -g:指定新建工作组的id

   -r:创建

 

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

useradd -u 666  -s /sbin/nologin  -M  mysql

 

 

#groupadd -g 666 mysql

#useradd  -u 66 -g mysql   -s /sbin/nologin  -M  mysql

 

3.2.7 查询用户信息

id        显示用户信息 uid gid 和属于用户组

w         显示谁登陆系统 并 在干什么

last      所有用户的每次的登录情况

lastlog   所有用户最近一次的登录情况

 

3.3 文件和目录

 

3.3.1 文件

[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    #用户组密码信息

 

 

第4章 目录/etc/skel 每个新用户的家目录的模板

4.1 添加用户过程

useradd  oldboy

4.1.1 创建家目录 修改权限 所有者

4.1.2 /etc/skel下面所有文件 复制到 oldboy家目录中

 

[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

 

4.2 模拟故障:

先把/etc/profile中的

PS1的行注释

 

[root@oldboyedu50-lnb ~]# useradd wc

[root@oldboyedu50-lnb ~]# su - wc

[wc@oldboyedu50-lnb ~]$ ll -a

total 20

drwx------  2 wc   wc   4096 Aug 13 11:19 .

drwxr-xr-x. 5 root root 4096 Aug 13 11:19 ..

-rw-r--r--  1 wc   wc     18 Mar 23  2017 .bash_logout

-rw-r--r--  1 wc   wc    176 Mar 23  2017 .bash_profile

-rw-r--r--  1 wc   wc    124 Mar 23  2017 .bashrc

[wc@oldboyedu50-lnb ~]$ \rm -f .bash*

 

4.3 重新登录:

[root@oldboyedu50-lnb ~]# su - wc

-bash-4.1$

-bash-4.1$

-bash-4.1$

 

4.4 如何解决:

在有故障的用户下面

cp /etc/skel/.bash*  ~

 

 

第5章 临时成为root

sudo

oldboy用户 查看系统日志

1. sudo

2. cat(root) suid

3. 日志加上 r权限

4. root密码

 

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

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

 

#root用户 visudo 92行下面

5.1.1 #授予oldboy用户 lstouch,mkdir

oldboy  ALL=(ALL)      /bin/ls, /bin/touch, /bin/mkdir

 

 

#oldboy进行测试

sudo ls /root/

 

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

oldboy  ALL=(ALL)      /bin/*

 

 

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

oldboy  ALL=(ALL)      /bin/*, !/bin/rm, !/bin/su, !/bin/vi

 

 

5.1.3 #授予oldboy 系统所有命令并且不需要输入密码

 

oldboy  ALL=(ALL)       NOPASSWD:ALL

 

 

5.2 sudo 小结:

1.sudo授予权限精确到命令

2.授权所有 排除  不需要输入密码

3.su与su - 区别

 

 

 

 

5.3 用户审计  行为审计(记录用户操作)

跳板机 堡垒机

 

5.3.1    硬件:齐治堡垒机

5.3.2    开源软件:jumpserver

5.3.3     自己写:shell脚本