目录

第六单元3

文件权限管理与控制3

1.文件属性查看3

1."-"文件类型3

2."rw-r--r--"文件读写权限3

2.文件所有人所有组的管理3

3.文件的普通权限4

1.r4

2.w4

3.x4

4.字符方式修改该文件权限4

5.数字方式修改该文件权限4

4.系统默认权限的设定5

4.1设定方式5

4.2永久设定方式:5

vim /etc/bashrc //shell5

vim /etc/profile//系统5

5.特殊权限5

5.1suid  //冒险位5

5.2sgid    //强制位6

5.3sticky  //粘制位6

七单元6

1.进程的概念6

1.1.如何使用命令查看进程6

3.优先级7

3.1进程的优先级范围7

3.2优先级查看7

3.3指定某个优先级开启进程7

3.4改变进程优先级7

5.进程信号7

1.常用信号等级7

6.用户登录审记****8

****7.top命令****8

***********第八单元************8

1.systemd8

2.systemctl 命令8

3.服务状态9

******** 第 九 单 元 ********9

1.openssh-server9

2.客户端连接方式9

ssh 远程主机用户@远程主机ip9

3.sshkey加密10

1.生成公钥私钥10

2.添加key认证方式10

3.分发钥匙给client主机10

4.测试10

4.提升openssh的安全级别11

1.openssh-server配置文件11

 


***************第六单元**************

**********文件权限管理与控制***********

************************************

 

 

*****1.文件属性查看*****

 

ls -l filename

-|rw-r--r--. |1| root| root| 46 |Oct 1 05:03 |filename

1    2        3   4     5     6       7           8

 

1."-"文件类型

-//普通文件

d//目录

c//字符设备

s//套接字文件  【具有与外界文件连接的功能】

p//管道

b//块设备

l//连接

 

2."rw-r--r--"文件读写权限

rw-|r--|r--

*    $   @

*所有人的权限   【拥有者权限】

$所有组的权限

@其他人的权限

 

3."1"表示文件的内容被系统记录的次数

 

4."root"表示文件的所有人

 

5."root"表示文件所有组

 

6."46"表示文件内容的大小

 

7."Oct 1 05:03"文件最后一次被修改的时间

 

8."filename"文件名

 

 

*********2.文件所有人所有组的管理******

chownusernamefile|dir//更改文件的所有人

chown   username:groupnamefile|dir//更改所有人所有组

chown -R usernamedir//更改目录本身及所有内容的所有人【在执行chown -R student /mnt/LOL* 时候不光是改变了LOL目录下文件的所有人,它以及LOL这个目录的所有人也一起改变了。避免错误!  正确写法chown -R student /mnt/LOL/* 只更改目录下文件的所有人。 】

chgrp -R groupname  dir//更改目录本身及所有内容的所有组

 

监控命令

watch -n 1 ls -lR /mnt

 

***3.文件的普通权限***

rw-|r--|r--

 u   g o

u:文件所有人对文件可以读写

g:文件组成员对文件可读

o:其他人对文件可读

 

u优先匹配,g次优先,oug不匹配时匹配

 

1.r

对文件:可以查看文件中的字符

对目录:可以查看目录正文件的信息

 

2.w

对文件:可以更改文件内字符

对目录:可以进入目录中

 

3.x

对文件:可以运行文件内记录的程序动作

对目录:可以进入目录

 

4.字符方式修改该文件权限

chmod [-R] <+|-|=> file|dir

 

chmod u-x file1//file1拥有者去掉x权限

chmod g+w file1//file1拥有组添加w权限

chmod u-x,g+w file1//file1拥有者去掉x权限,file1拥有组添加e权限

chmod ugo-r file2//file2的用户组其他人去掉r权限

chmod ug+xo-r file3//file3用户和组添加x权限,其他人去掉r权限

 

5.数字方式修改该文件权限

linux

r=4

w=2

x=1

文件权限数字表示方式

rw-|r--|r--

 u   g   o

u=rw-=4+2+0=6

g=r--=4+0+0=4

o=r--+4+0+0=4

所以文件权限表示为644

 

chmod【如果你的拥有名和组成员与有文件相同的,你就有属于其中的能力,比如你有两个组,其中一个与文件|目录组一样,那么你就属于这个组成员。】

 

7=rwx

6=rw-

5=r-x

4=r--

3=-wx

2=-w-

1=--x

0=---

 

 

*****4.系统默认权限的设定****

 

从系统存在角度来说,开放权力越大,系统存在意义越高

从系统安全角度来说,开放权力越少,系统安全性越高

所以系统设定新文件或目录会去掉一些权限

设定方式

 

umask//查看系统保留权限默认为022

umask 077//修改该系统保留权限为077,此设定为临时设定,至当前shell中生效

 

永久设定方式:

vim /etc/bashrc//shell

 70     if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then

 71        umask 002

 72     else

 73        umask 077                                                                                             

 74     fi

 

vim /etc/profile//系统

  70     if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then

 71        umask 002

 72     else

 73        umask 077                                                                                             

 74     fi

以上两个文件umask设定值必须保持一致

source /etc/bashrc【将vim中更改过的信息重新载入生效】

source /etc/profile

 

 

****5.特殊权限****

1.suid  //冒险位

只针对二进制可执行文件,

文件内记录的程序产生的进程的所属人为文件所属人

和进程发起人身份无关

 

设定方式:

chmod u+s file

suid=4

chmod 4xxx file

 

2.sgid    //强制位

对文件:只针对二进制可执行文件,

       任何人运行二进制文件

       程序时程序产生的进程的所有组都是文件的所有组

       和程序发起人组的身份无关

对目录:当目录有sgid权限后,目录中新建的所有文件的所有组

       都自动归属到目录的所有组之中,和文件建立者所在的组 无关

 

设定方式:

 

chmod g+s file|dir

sgid=2

chmod 2xxx file|dir

 

 

3.sticky  //粘制位

只针对目录,当一个目录上有t权限,那么目录中的文件只能被所属人删除

 

设定方式:

chmod o+t direcotry

t=1T无用】

chmod 1777 direcotry

 

 

 

 

 

 

**************************

**********.单元**********

**************************

 

 

*****1.进程的概念*******

进程就时CUP 正在进行的工作。

1.如何使用命令查看进程

ps 进程查看工具

a//shell中运行的进程

x//不在shell重运行的进程 与当前环境无关的所有进程

f//显示进程从属关系

e//显示进程中的所有进程 显示当前用户的所有进程

l//长列表显示进程的详细信息

u//查看进程用户信息

 

ps ax -o %cpu,%mem,user,group,comm,nice    nice是优先级的意思-2019,越小优先级越高】

 cpu.comm

%cpu//显示进程cpu负载

%mem//显示进程内存负载

user//进程用户

group//进程组

comm//进程名称

nice//进程优先级

ps ax -o %cpu,comm --sort +|-%cpu         【按照正序或者到序排列进程信息,此条命令仅输出

+//正序

-//倒序

%cpu//cpu负载排序

%//内存负载

 

 

****3.优先级****

1.进程的优先级范围

   -2019

2.优先级查看

ps ax -o pid,nice,comm

 

3.指定某个优先级开启进程

nice -n 优先级数字 进程名称

nice -n -5 vim & //开启程序vim指定它的优先级为-5

 

4.改变进程优先级

renice -n 优先级数字 进程pid

renice -n -5 1806  //改变1806进程的优先级位-5

 

*****4.环境中进程的前后台调用******

jobs//查看被打入环境 后台的进程

ctrl+z//把占用终端的进程打入后台

fg//把后台进程调回前台

bg//把后台暂停的进程运行

comm &//让命令直接在后台运行

 

***5.进程信号****

1.常用信号等级

1//进程重新加在配置在不关闭进程的条件下   【重新加在配置但不关闭进程,使用与持续大客户商业软件中】

2//删除进程在内存中的数据

3//删除鼠标在内存中的数据

9//强行结束单个进程【只关闭单一进程,比如vimbash下,你关闭了bashvim不会退出,但绝对会异常。15则会正常关闭】【不被系统忽略】

15//正常关闭进程

18//运行暂停的进程

19//暂停某个进程【不会被系统忽略】

20//把进程打入后台【可能会被系统阻塞】

man 7 signal//查看信号信息

 

kill -信号 进程pid

killall-信号进程名字  

pkill-ustudent -信号  //结束某个用户的所有进程

 

******6.用户登录审记****

1.

w//查看使用系统的当前用户有那些

w -f//-f查看使用地点

 

2.

last//查看用户登陆成功历史

3.

lastb//查看用户没有登陆成功的历史

 

 

****7.top命令****

top//监控系统负载工具

 

 

 

 

 

******************************

***********第八单元************

******************************

 

1.systemd

系统初始化程序,系统开始的第一个进程,pid1

 

2.systemctl 命令

systemctl 命令

systemctl list-units//列出当前系统服务的状态

systemctl list-unit-files//列出服务的开机状态

systemctl status sshd//查看指定服务的状态

systemctl stop sshd//关闭指定服务

systemctl start sshd//开启指定服务

systemctl enable sshd//设定指定服务开机开启

systemctl disable sshd//设定指定服务开机关闭

systemctl reload sshd//使指定服务重新加载配置

systemctl list-dependencies sshd        //查看指定服务的依赖关系

systemctl mask sshd//冻结指定服务

systemctl set-default multi-user.target //开机不开启图形

systemctl unmask sshd//请用服务

systemctl set-default graphical.target  //开机开启图形

 

3.服务状态

systemctlstatus服务名称

 

loaded//系统服务已经初始化完成,加载过配置文件

active(running)//服务正在被系统利用

active(exited)//服务已经加在配置,等待被系统利用

active(waiting)//服务等待被系统处理

inactive//服务关闭

enbaled//服务开机启动

disabled//服务开机不自启

static//服务开机启动项不可被管理【依赖性,其他服务启动它自动启动,不被管理。它是被依赖的关系】

failed//系统配置错误

 

 

***************************

******** 第 九 单 元 ********

***************************

 

****1.openssh-server****

 

功能:让远程主机可以通过网络访问sshd服务,开始一个安全shell

 

****2.客户端连接方式****

ssh 远程主机用户@远程主机ip

[root@desktop0 ~]# ssh [email protected]

The authenticity of host '172.25.0.11 (172.25.0.11)' can't be established.

ECDSA key fingerprint is eb:24:0e:07:96:26:b1:04:c2:37:0c:78:2d:bc:b0:08.

Are you sure you want to continue connecting (yes/no)? yes    //连接陌生主机时需要建立认证关系

Warning: Permanently added '172.25.0.11' (ECDSA) to the list of known hosts.

[email protected]'s password:                           //远程用户密码

Last login: Mon Oct  3 03:13:47 2016

[root@server0 ~]#

                                       //登陆成功

ssh 远程主机用户@远程主机ip -X                         //调用远程主机图形工具

ssh     远程主机用户@远程主机ip         command        //直接在远程主机运行某条命令

 

 

****3.sshkey加密***

1.生成公钥私钥

[root@server0 ~]# ssh-keygen //生成公钥私钥工具

Generating public/private rsa key pair.

Enter file in which to save the key (/root/.ssh/id_rsa): [enter]//加密字符保存文件(建议默认使用)

Created directory '/root/.ssh'.

Enter passphrase (empty for no passphrase):  [enter]//密钥密码,必须大于4个字符

Enter same passphrase again:  [enter]//确认密码

Your identification has been saved in /root/.ssh/id_rsa.

Your public key has been saved in /root/.ssh/id_rsa.pub.

The key fingerprint is:

ab:3c:73:2e:c8:0b:75:c8:39:3a:46:a2:22:34:84:81 [email protected]

The key's randomart p_w_picpath is:

+--[ RSA 2048]----+

|o                |

|E.               |

|..               |

|.  . o           |

|.o. * . S        |

|oo.o o   .       |

|+ =. .  .        |

|o. oo.+..        |

|    ..o*.        |

+-----------------+

[root@serber0 ~]# ls /root/.ssh/

id_rsaid_rsa.pub

id_rsa//私钥,就算钥匙

id_rsa.pub//公钥,就是锁

 

2.添加key认证方式

[root@server0 ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub  [email protected]  【注意空格 “ ”,命令里面认真仔细,以免少了空格 造成执行错误 】

ssh-copy-id -i//添加认证方式工具

-i//指定加密key文件

/root/.ssh/id_rsa.pub//加密key

root//加密用户位root

172.25.0.11//被加密主机ip

 

3.分发钥匙给client主机

[root@server0 ~]# scp /root/.ssh/id_rsa [email protected]:/root/.ssh/

 

4.测试       

 

[root@desktop0 ~]# ssh [email protected]//通过id rsa直接连接不需要输入密码

Last login: Mon Oct  3 03:58:10 2016 from 172.25.0.250

[root@server0 ~]#

 

****4.提升openssh的安全级别****

1.openssh-server配置文件

vim /etc/ssh/sshd_config//打开配置文件

78 PasswordAuthentication yes|no//是否开启用户密码认证yse为支持 no为关闭

48  48 PermitRootLogin yes//是否允许登陆超级用户超级用户【禁止之后,是其它用户不可以登陆我的root用户】

49 AllowUsers student westos//用户白名单【设置之后,是其它用户只能登陆我本机上的 studentwestos用户】

50.DenyUsers student //用户黑名单