4.Linux权限管理与grep命令应用

1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。

       cp -r /etc/skel /home/tuser1

       chmod 700 /home/tuser1

       cp:文件复制命令

         格式:cp [OPTION]… SOURCE… DIRECTORY

                     -r:递归复制

                     -a:如果source是多个源的话,就需要用到

2、编辑/etc/group文件,添加组hadoop。

       vim /etc/group 

         需要重编辑模式到输入模式

         i:从编辑模式>输入模式

           hadoop:x:2004:

        回顾:vim 三种模式

               编辑模式 –> 输入模式

                         i

               输入模式–>编辑模式

                        esc

               末行模式–>

3、手动编辑/etc/passwd文件新增一行,添加用户hadoop,其基本组ID为hadoop组的id号;其家目录为/home/hadoop。

      vim /etc/passwd 

      输入i:进入输入模式

      

hadoop:x:2004:2004::/home/hadoop:/bin/bash

[root@localhost skel]# vim /etc/passwd

[root@localhost skel]# id hadoop

uid=2004(hadoop) gid=2004(hadoop) groups=2004(hadoop)

4、复制/etc/skel目录为/home/hadoop,要求修改hadoop目录的属组和其它用户没有任何访问权限。

     

     cp -r /etc/skel /home/hadoop

       chmod 700 /home/hadoop

       cp:文件复制命令

         格式:cp [OPTION]… SOURCE… DIRECTORY

                     -r:递归复制

                     -a:如果source是多个源的话,就需要用到

5、修改/home/hadoop目录及其内部所有文件的属主为hadoop,属组为hadoop。

      chown:修改文件属性的命令

           -R:递归修改

      chown -R hadoop:hadoop /home/hadoop


6、显示/proc/meminfo文件中以大写或小写S开头的行;用两种方式;

       grep -i “^s” /proc/meminfo

       grep “^[s,S]” /proc/meminfo

 

7、显示/etc/passwd文件中其默认shell为非/sbin/nologin的用户;

       grep -v “/sbin/nologin$” /etc/passwd | cut -d: -f1

       

       grep:文本过滤命令

           grep [option] pattern [file]..

                 –color=auto:对表达式匹配到的内容进行着色

                 -v:显示没有被匹配到的字符串

                 -i:不区分大小写

                 -o:紧显示匹配到的字符串

                 -q:侵没模式,不显示匹配到的内容,只会返回是否匹配到,如果匹配到哦着显示0否则显示1

8、显示/etc/passwd文件中其默认shell为/bin/bash的用户;

          grep “/bin/bash$” /etc/passwd | cut -d : -f1

[root@localhost hadoop]# grep "/bin/bash$" /etc/passwd | cut -d : -f1
root
weblogic
mandriva
tuser1
hadoop
bash
testbsh
basher

9、找出/etc/passwd文件中的一位数或两位数;

         grep “\<[0-9]\{1,2}\>” /etc/passwd

[root@localhost hadoop]# grep "\<[0-9]\{1,2\}\>" /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin
haldaemon:x:68:68:HAL daemon:/:/sbin/nologin
saslauth:x:497:76:"Saslauthd user":/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
apache:x:48:48:Apache:/var/www:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin

10、显示/boot/grub/grub.conf中以至少一个空白字符开头的行;

        grep “^[[:space:]]\{1,\}” /boot/grub/grub.conf

[root@localhost hadoop]# grep "^[[:space:]]\{1,\}" /boot/grub/grub.conf
root (hd0,0)
kernel /vmlinuz-2.6.32-358.el6.i686 ro root=UUID=a7a4e707-a51b-41fd-9ac6-7c36e53afb26 rd_NO_LUKS rd_NO_LVM.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-358.el6.i686.img

11、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;

       grep “^#[[:space:]][[:space:]]\{1,\}” /etc/rc.d/rc.sysinit


12、打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行;

  [root@localhost hadoop]# netstat -tan | grep "\<LISTEN\>[[:space:]]*$"
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      
tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN      
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      
tcp        0      0 :::22                       :::*                        LISTEN      
tcp        0      0 ::1:631                     :::*                        LISTEN      
tcp        0      0 ::1:25                      :::*                        LISTEN

13、添加用户bash, testbash, basher, nologin (此一个用户的shell为/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户的信息;

[root@localhost hadoop]# useradd bash
[root@localhost hadoop]# useradd testbsh
[root@localhost hadoop]# useradd basher
[root@localhost hadoop]# useradd -s /sbin/nologin nologin
[root@localhost hadoop]# grep "/sbin/nologin$" /etc/passwd | cut /-d : -f1
cut: /-d: No such file or directory
cut: :: No such file or directory
[root@localhost hadoop]# grep "/sbin/nologin$" /etc/passwd | cut -d : -f1
bin
daemon
adm
lp
mail
uucp
operator
games
gopher
ftp
nobody
dbus
usbmuxd
vcsa
rtkit
avahi-autoipd
abrt
pulse
haldaemon
saslauth
postfix
ntp
apache
gdm
sshd
tcpdump
nologin

14、显示/proc/meminfo文件中以大写或小写S开头的行;用三种方式;

       grep -i “^s” /proc/meminfo

       [root@localhost hadoop]# grep -i "^s" /proc/meminfo
SwapCached:            0 kB
SwapTotal:       2064376 kB
SwapFree:        2064376 kB
Shmem:              4128 kB
Slab:              53240 kB
SReclaimable:      20592 kB
SUnreclaim:        32648 kB

15、显示/etc/passwd文件中其默认shell为非/sbin/nologin的用户;

      grep -v “/sbin/nologin$” /etc/passwd

    ot:x:0:0:root:/root:/bin/bash
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
weblogic:x:500:500:weblogic:/home/weblogic:/bin/bash
gentoo:x:501:503:gentoo distribution:/home/gentoo:/bin/csh
mandriva:x:1005:501::/home/mandriva:/bin/bash
slackware:x:2002:501::/home/slackware:/bin/tcsh
tuser1:x:2003:2003::/home/tuser1:/bin/bash
hadoop:x:2004:2004::/home/hadoop:/bin/bash

16、显示/etc/passwd文件中其默认shell为/bin/bash的用户;

    grep “/bin/bash$” /etc/passwd

[root@localhost hadoop]# grep --color=auto "/bin/bash$" /etc/passwd
root:x:0:0:root:/root:/bin/bash
weblogic:x:500:500:weblogic:/home/weblogic:/bin/bash
mandriva:x:1005:501::/home/mandriva:/bin/bash
tuser1:x:2003:2003::/home/tuser1:/bin/bash
hadoop:x:2004:2004::/home/hadoop:/bin/bash

17、找出/etc/passwd文件中的一位数或两位数;

    grep “\<[[:digit:]]\{1,2\}\>” /etc/passwd

[root@localhost hadoop]# grep --color=auto "\<[[:digit:]]\{1,2\}\>" /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin
haldaemon:x:68:68:HAL daemon:/:/sbin/nologin
saslauth:x:497:76:"Saslauthd user":/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
apache:x:48:48:Apache:/var/www:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin

原创文章,作者:N27_jiangyefan,如若转载,请注明出处:http://www.178linux.com/82561

(0)
N27_jiangyefanN27_jiangyefan
上一篇 2017-07-23
下一篇 2017-07-24

相关推荐

  • zabbix如何监控webserver

    1、模版 2、应用集 3、项目 4、触发器

    Linux干货 2016-02-19
  • LVM原理、创建、扩容、缩减、快照详解

    LVM是什么?为什么要使用LVM?     LVM(Logical Volume Manager):逻辑卷管理, 在日常使用或生产环境中, 我们可能会因为在规划存储时未考虑到未来数据增长的速度超乎我们的预计而措手不及,因为增加一块硬盘再将源数据移到新硬盘上很麻烦并且提高了成本还浪费硬盘空间。   &…

    Linux干货 2016-03-09
  • LINUX初次见面

    LINUX的文件系统 在Linux的眼睛中,一切都为文件,这也是Linux的中心哲学思想。正因如此造就了一个性能稳定,功能强大,效率高的操作系统。Linux有自己的层级标准,它定义了每个系统分区的用途,和所需要的最小构成文件目录。由不同的文件来完成不同的功能造就了一个Linux的完整生态。 linux的文件系统格式比较丰富,它的核心系统能支持十多种文件系统类…

    2017-05-18
  • LVS类型及其调度算法

    LVS类型:     NAT:–>(DNAT) (多目标的DNAT)     DR:     TUN:     FULLNAT: LVS NAT的特性  &nbs…

    Linux干货 2016-10-29
  • OpenSSH

    ssh: secure shell, protocol, 22/tcp, 安全的远程登录 OpenSSH: ssh协议的开源实现; dropbear:另一个开源实现;  SSH协议版本 v1: 基于CRC-32做MAC,不安全;man-in-middle v2:双方主机协议选择安全的MAC方式 基于DH算法做密钥交换,基于RSA或DSA算法实现身份…

    Linux干货 2015-06-21
  • 关于touch/>/>>创建同名文件的总结

    一、简介 1、touch     即创建文件或修改文件时间     语法:touch [options] file-list 2、>     创建文件,可直接把内容生成到指定文件,会覆盖源文件中的内容;也可以直接生成一个空白文件。     语法:> file…

    2017-02-18

评论列表(1条)

  • 马哥教育
    马哥教育 2017-07-27 00:17

    总结的不错,注意下前后排版会更好,继续加油~