Unit 5/etc/passwd //用户信息配置文件一共七个属性用户:密码:uid:gid:说明:家目录:用户使用的shell(和系统对话打开的shell)//etc/shells(系统法shell)/etc/group //组信息配置文件组名:组密码:组ID:组内其它 新建一个用户;linuxmkdir /home/linux //新建用户家目录chown linux:linux /home/linux //vim /etc/passwd //添加新用户信息vim /etc/group //添加组信息su - linux //切换用户 如何查看组信息id student //查看student组的信息组信息的一些参数-u //用户的uid-g //用户初始组id -G //用户所有所在组id -n //显示名字而不是id数字 -a //显示所有信息修改用户建立时候的默认参数时,需要修改配置文件“/etc/login.defs”userdel -r linux //删除linux用户信息useradd linux //添加linux用户信息***每次添加用户操作之前,必须先删除用户的所有信息useradd -g 2000 linux //添加用户时指定初始组ID为2000时,此ID必须存在,如果不存在,需要先添加一个初始组的IDgroupadd -g 2000 linux //添加初始组ID为2000,添加完成后,再添加指定初始组ID为2000的用户linux。监控用户信息,组信息watch -n 1 'tail -n 3 /etc/passwd /etc/group ;echo ========ls /home/' //监控/etc/passwd文件和/etc/group文件的后三行。 列出/home下的用户名 修改用户的信息的几个参数:usermod -c “hahaha” linux //更改说明为“hahaha” -d /home/linux westos //指定用户家目录 -s /bin/tcsh linux //默认与系统交互所使用的shell类型 -G ID 组名 //指定用户附加组usermod -u 2000 linux //修改用户UIDusermod -g 72(此ID 必须存在) linux //修改用户初始组IDusermod -G 72 linux //修改用户所有组IDusermod -G "" linux //删除用户所有组usermod -c “说明” linux // 修改说明usermod -d /home/westos linux //修改用户家目录 usermod -md /home/linux linux // 更改家目录指定及加目录名称usermod -s /bin/csh //更改shell为/bin/cshusermod -L innux //冻结帐号usermod -U linux //解锁
---------------------------------------------------------如何在不交互的情况下为用户修改密码stdin echo admin|passwd --stdin admin //此命令就是将输出的admin经过管道符转译后设置为admin用户的密码。
----------------------------------------------------------
***用户权力下放***(1)在系统中,超级用户可以下放普通用户不能执行的操作给普通用户下放权力的配置文件:/etc/sudoers(2)格式:获得权限用户 主机名称=(获得的用户身份) 命令(3)执行下放权限命令sudo 命令 //第一次执行sudo需要输入当前用户密码visudo命令编写/etc/sudoers文件:##Allow admin to create users on desktop8.example.com(主机名)//以#开头的行为注释,并不执行。admin(用户名) desktop8.example.com(主机名)=(root)(用户以什么身份执行) /user/bin/useradd(用户所执行的操作) //主机名的查看用hostname执行useradd操作时命令行需进行调用。sudo useradd westos(此为要添加的用户名)如果想要在执行时不输入密码。则需要再修改/etc/sudoers文件admin(用户名) desktop8.example.com(主机名)=(root)(用户以什么身份执行) NOPASSWD: /user/bin/useradd(用户所执行的操作) //表示用户调用sudo命令的时候不需要自己密码 usermod -L //锁定用户,密码前加! -U //解锁密码passwd -l //锁定用户,密码前加!!。锁定更彻底***用户认证信息的控制***chage -d 0 admin //"0"代表修改密码前所使用的天数。即首次使用admin登陆系统系统会提示修改密码。chage -d 2 admin //"2"表示密码的最短使用天数。即两天之后才可更改密码。chage -m 2 admin //修改密码的最短有效期为两天,chage -M 999 admin //修改最长有效期为999天chage -W 3 admin //修改警告期为三天。chage -I 2 admin //修改非活跃天数为两天。chage -E "YY-MM--DD" admin //修改密码到期日。 监控用户密码信息watch -n 1 tail -n 1 /etc/shadow //**/etc/shadow的最后一行为用户admin的密码信息。用这条命令来监控此密码信息。 ----------------------------------------- Unit6一.文件的权限***查看文件的属性***ls -l filename(文件名)执行ls -l /etc 后,会列出如下文件total 1528drwxr-xr-x. 3 root root 97 Dec 23 19:39 abrt-rw-r--r--. 1 root root 18 Dec 23 19:45 adjtime-rw-r--r--. 1 root root 1518 Jun 7 2013 aliases-rw-r--r-- 1 root root 12288 Dec 23 11:46 aliases.dbdrwxr-xr-x. 2 root root 4096 Dec 23 19:43 alternatives-rw-------. 1 root root 541 Apr 21 2015 anacrontab-rw-r--r--. 1 root root 55 Sep 16 2014 asound.conf-rw-r--r--. 1 root root 1 Jun 22 2015 at.denydrwxr-xr-x. 2 root root 31 Dec 23 19:40 at-spi2drwxr-x---. 3 root root 41 Dec 23 19:39 audispdrwxr-x---. 3 root root 79 Dec 23 11:46 audit-rw-r--r--. 1 root root 12706 Sep 17 2015 autofs.conf-rw-------. 1 root root 232 Sep 17 2015 autofs_ldap_auth.conf-rw-r--r--. 1 root root 795 Sep 17 2015 auto.masterdrwxr-xr-x. 2 root root 6 Sep 17 2015 auto.master.d-rw-r--r--. 1 root root 524 Sep 17 2015 auto.misc-rwxr-xr-x. 1 root root 1260 Sep 17 2015 auto.net-rwxr-xr-x. 1 root root 687 Sep 17 2015 auto.smbdrwxr-xr-x. 4 root root 94 Dec 23 19:42 avahi***表示文件类型的参数***drwxr-xr-x. 3 root root 97 Dec 23 19:39 abrt //“d”代表此文件类型为目录-rw-r--r--. 1 root root 18 Dec 23 19:45 adjti //“-”代表文件类型为普通文件lrwxrwxrwx. 1 root root 22 Dec 23 19:45 chrony.conf -> chrony.conf-found // “l”代表文件类型为连接文件当然还有其他的一些表示文件类型的参数:c //代表字符设备s //代表套接字p //管道b //快设备l //连接d //目录- //普通文件***文件的权限***“r” //读权限“w” //写权限“x” //可执行权限d|rwx|r-x|r-x. 3 root root 97 Dec 23 19:39 abrt //此文件类型为目录,所有人权限为“rwx”,所有组权限为“r-x”,其他人权限为“r-x”“3”表示此目录的属性大小,(如果这个文件不是目录的话,那么“3”代表系统记录此文件的次数)文件所有人为root,所有组为root,文件内容属性大小为97,最近一次修改时间为Dec 23 19:39,文件名为abrt。 ***文件所有人所有组的管理***chown username file/directory //更改文件的所有人chown username:groupname file|directory //更改所有人所有组chown -R username directory //更改目录本身及里面所有内容的所有人chgrp -R groupname directory //更改目录本身及里面所与内容的所有组这里我们用/mnt目录来操作为了更好的观察修改所有人和所有组信息,我们可以打开一个新的监控窗口监控命令:watch -n 1 ls -lR /mnt***文件的普通权限***rw-|r--|r-- //这里的第一个“rw-”代表所有人权限,一般用“u”来代表 // 第二个“r--”表示文件所有组权限,一般用“g”来代表 //第三个“r--”表示其他人即第三方权限,一般用“o”来代表这里的u,g,o分别表示的具体权限:u:表示文件所有人对文件可以读写g:表示文件组成员对文件可读o:表示其他人对文件可读(1)”r“的权限,对目录和文件的操作含义是不同的对文件:可以查看文件中的字符,就是读取文件内容对目录:可以查看目录中的文件信息,但并不能查看目录中文件的具体内容。(2)“w”的权限,和“r”相似对文件:可以更改文件内字符。对目录:可以在目录中添加删除文件,但不能更改文件的具体内容。(3)“x”权限对文件:可以运行文件内记录的程序动作对目录:可以进入目录中(4)字符方式修改文件的权限具体形式:chmod <u|g|o><+|-|=><r|w|x> file|directory //“ 命令 <所有人权限|所有组权限|第三方权限><+|-|=><读|写|可执行> 文件名|目录名” chmod u-x file //给file的所有人去掉x权限 chmod g+w file //给file的所有组添加w权限 chmod u-x,g+w file //给file的所有人去掉x权限,file所有组添加w权限 chmod ugo-r file //file的所有人,所有组,以及其他人都去掉r权限。(该file文件对任何人都不可读)。 (5)数字方式修改该文件权限在linux中 r=4 w=2 x=1文件权限数字表示方式rwx|rw-|r--u=rwx=4+2+1=7g=rw-=4+2+0=6o=r--=4+0+0=4那么,该文件的权限用数字表示就为764chmod 修改后权限值 filechmod 777 file //直接将file文件的权限修改为777表示权限的各个数字的所代表的权限:0=---1=--x2=-w-3=-wx4=r--5=r-x6=rw-7=rwx所以我们通常表示权限的数字范围在000-777,这里不包括特殊权限***系统默认权限的设定***从系统存在角度来说,开放的权力越大,系统存在的意义越高从系统的安全角度来说,开放的权力越少,系统的安全性越高所以系统在设定新建文件或目录时会去掉一些权限 ***修改umask的值***如果想要永久设定umask的值,需要修改两个配置文件的内容,分别为/etc/bashrc和/etc/profile以上两个文件umask设定值必须保持一致。
source /etc/bashrcsource /etc/profile //重新加载这两个配置文件,让设定的umask值立即生效。***特殊权限***(1)suid 针对二进制可执行文件 文件内记录的程序产生的进程的所有人为文件所有人,和进程发起人身份无关 设定方式: chmod u+s file 在linux中这里的s权限代表数字为4 chmod 4xxx file(2)sgid 对文件来说:只针对二进制可执行文件,任何人运行二进制文件,运行时程序产生的进程所有组都是文件的所有组, 和程序发起人组的身份无关。 对目录:当目录拥有sgid权限后,目录中新建的所有文件的所有组都自动归属到目录的所有组之中,和文件建立者所在的组无关 设定方式: chmod g+s file|dir 这里的s权限代表数字2 chmod 2xxx file|dir(3)sticky
t权限:只针对目录,当一个目录上有t权限,那么目录中的文件只能被所有人删除
设定方式:chmod o+t directory这里t用数字表示为1chmod 1777 directoryps ax -o user,group,comm | grep watch //过滤watch命令的进程,并提取出该进程的所有人,用户组,命令。chgrp student /bin/watch //修改组为studentls -l /bin/watch //查看此命令的信息