目录
第六单元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次优先,o当u,g不匹配时匹配
1.r
对文件:可以查看文件中的字符
对目录:可以查看目录正文件的信息
2.w
对文件:可以更改文件内字符
对目录:可以进入目录中
3.x
对文件:可以运行文件内记录的程序动作
对目录:可以进入目录
4.字符方式修改该文件权限
chmod [-R] <+|-|=>
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+x,o-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=1【T无用】
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是优先级的意思-20到19,越小优先级越高】
cpu.comm】
%cpu//显示进程cpu负载
%mem//显示进程内存负载
user//进程用户
group//进程组
comm//进程名称
nice//进程优先级
ps ax -o %cpu,comm --sort +|-%cpu 【按照正序或者到序排列进程信息,此条命令仅输出
+//正序
-//倒序
%cpu//cpu负载排序
%//内存负载
****3.优先级****
1.进程的优先级范围
-20~19
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//强行结束单个进程【只关闭单一进程,比如vim在 bash下,你关闭了bash,vim不会退出,但绝对会异常。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
系统初始化程序,系统开始的第一个进程,pid为1
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//用户白名单【设置之后,是其它用户只能登陆我本机上的 student和westos用户】
50.DenyUsers student //用户黑名单