Linux用户管理案例(第二版)
批量添加用户 1、按照/etc/passwd文件格式编写用户信息文件users.info xiaofang01::1001:503::/home/xiaofang01:/bin/bash #注意不能有空行,不然会报错 2、newusers<users.info #newusers命令导入用户信息文件 3、pwunconv #取消shadowpassword功能 4、以[用户名:密码]的格式编写密码文件passwd.info 5、chpasswd<passwd.info #导入密码文件 6、pwconv #将密码写入shadow文件 【用脚本编程的方式其实更加高效】 限制普通用户su为root 1、groupaddsugroup 2、chmod4550/bin/su //将其他人的权限全部清除 3、chgrpsugroup/bin/su //将su的所属组改变为sugroup 此时:ls-l/bin/su 4、usermod-Gsugrouptest //将用户test加入到sugroup组 用sudo代替su: -在执行sudo命令时,临时成为root -不会泄漏root口令 -仅向用户提供有限的命令使用权限 配置文件:/etc/sudoers[编辑配置该文件命令的visudo],用vi直接修改配置文件/etc/sudoers不会生效 /etc/sudoers文件格式 用户名[%组名]主机名[或ip地址]=命令[要用绝对路径] 案例-授权普通用户可以添加/删除用户[useradd/userdel] 1、visudo 2、xiaofanghadoop=/usr/sbin/useradd,/usr/sbin/userdel [切换到该用户] 3、sudo/usr/sbin/useraddtest #执行useradd命令[加sudo,加绝对路径] 4、输入密码 #xiaofang的密码,而不是root的密码 5、sudo-l #查看当前用户所被授权的只有root才可执行的命令 说明: 1、sudo可以使普通用户以root身份执行命令,而不是只是执行root才能执行的命令 2、编辑/etc/sudoers时,可以使命令精确化 如:guesthadoop=/sbin/shutdown-hnow 只让guest执行-hnow选项,其他任何选项都不能执行 案例-授权一个普通用户全权管理Apache 1、构思好该用户应有的权限: (1)编辑Apache的配置文件 (2)使用Apache的启动脚本 (3)更新网页等 2、实现功能1 法一、改变该文件的所有者chown 法二、改变该文件的所属组,并将w权限授予该组,然后该用户加入该组[比较常用] 法三、visudo法 添加:用户 地址=/bin/vi/etc/httpd/conf/httpd.conf 3、实现功能2 用户主机名 =/etc/rc.d/init.d/httpstart,/etc/rc.d/init.d/httpreload,/etc/rc.d/init.d/httpfullstatus,/etc/rc.d/init.d/httpconfigtest 4、功能实现3 即需要对/var/www/html目录有写权限 #改变该目录的所有者/所属组 检测用户密码强度(破解用户密码) 1、安装破解工具:Johntheripper 下载地址http://www.openwall.com/john/ 2、grepliming/etc/passwd>/test/liming.passwd #提取用户信息 3、grepliming/etc/shadow>/test/liming.shadow #提取用户密码的加密密文 4、/test/john-1.6.6/run/unshadow/test/liming.*>/test/liming.john #合并成一个文件 5、/test/john-1.6.6/run/john/test/liming.john #破解该用户密码 6、/test/john-1.6.6/run/john/etc/shadow #破解所有用户的密码