系统安全保护
• Security-Enhanced Linux
– 美国NSA国家安全局主导开发,一套增强Linux系统安
全的强制访问控制体系
– 集成到Linux内核(2.6及以上)中运行
– RHEL7基于SELinux体系针对用户、进程、目录和文件
提供了预设的保护策略,以及管理工具
• SELinux的运行模式
– enforcing(强制)、permissive(宽松)
– disabled(彻底禁用)
变成disabled,都必须经过修改配置文件,重起才可以
• 切换运行模式
– 临时切换:setenforce 1|0
– 固定配置:/etc/selinux/config 文件
[root@server0 ~]# getenforce #查看当前SELinux状态
Enforcing
[root@server0 ~]# setenforce 0 #设置SELinux状态
[root@server0 ~]# getenforce
Permissive
配置用户环境
• 影响指定用户的 bash 解释环境
– ~/.bashrc,每次开启 bash 终端时生效
• 影响所有用户的 bash 解释环境
– /etc/bashrc,每次开启 bash 终端时生效
[root@server0 ~]# vim /root/.bashrc
alias hello='echo hello'
[root@server0 ~]# vim /home/student/.bashrc
alias hi='echo hi'
[root@server0 ~]# vim /etc/bashrc
alias haha='echo xixi'
新开一个全新的终端验证:
[root@server0 ~]# hello #可以执行
[root@server0 ~]# hi #不可以执行
[root@server0 ~]# haha #可以执行
[root@server0 ~]# su - student
[student@server0 ~]$ hello #不可以执行
[student@server0 ~]$ hi #可以执行
[student@server0 ~]$ haha #可以执行
[student@server0 ~]$ exit
基本FTP服务: 文件传输协议
1.服务端虚拟机Server,安装可以提供FTP服务软件
[root@server0 ~]# yum -y install vsftpd
2.虚拟机Server操作,启动 vsftpd服务,设置为开机自起服务
[root@server0 ~]# systemctl restart vsftpd
[root@server0 ~]# systemctl enable vsftpd
3.虚拟机Server操作,测试:
默认FTP共享的路径:/var/ftp
[root@server0 ~]# firefox ftp://172.25.0.11
防火墙
客户端请求进入某个区域的规则:
1.查看客户端请求中源IP地址,再看所以有区域中,哪一个区域有该源IP地址的规则,则进入该区域
2.进入默认区域,public
#####################################################
默认区域的修改
虚拟机Server
# firewall-cmd --get-default-zone #查看默认区域
虚拟机Desktop
# ping -c 2 172.25.0.11 #可以通信
虚拟机Server
# firewall-cmd --set-default-zone=block #修改默认区域
# firewall-cmd --get-default-zone #查看默认区域
虚拟机Desktop
# ping -c 2 172.25.0.11 #不可以通信,有回应
虚拟机Server
# firewall-cmd --set-default-zone=drop #修改默认区域
# firewall-cmd --get-default-zone #查看默认区域
虚拟机Desktop
# ping -c 2 172.25.0.11 #不可以通信,没有回应
########################################################
互联网常见的服务协议
http :超文本传输协议
FTP :文件传输协议
https :安全的超文本传输协议
DNS :域名解析协议
telnet :远程管理协议
smtp :邮件协议,用户发邮件协议
pop3 :邮件协议,用户收邮件协议
tftp :简单文件传输协议
默认区域服务的添加
虚拟机Server
# firewall-cmd --set-default-zone=public #修改默认区域
# firewall-cmd --zone=public --list-all #查看区域规则
# firewall-cmd --zone=public --add-service=http #添加服务
# firewall-cmd --zone=public --list-all
虚拟机Desktop
# firefox 172.25.0.11 #可以访问
# firefox ftp://172.25.0.11 #不可以访问
虚拟机Server
# firewall-cmd --zone=public --add-service=ftp
# firewall-cmd --zone=public --list-all
虚拟机Desktop
# firefox 172.25.0.11 #可以访问
# firefox ftp://172.25.0.11 #可以访问
配置NFS共享, Linux与Linux的共享
• Network File System,网络文件系统
– 用途:为客户机提供共享使用的文件夹
– 协议:NFS(TCP/UDP 2049)、RPC(TCP/UDP 111)
只读的NFS共享
服务端虚拟机server
1.所需软件包 : nfs-utils
[root@server0 ~]# rpm -q nfs-utils
nfs-utils-1.3.0-0.el7.x86_64
[root@server0 ~]# rpm -qa | grep nfs #显示所有已安装,进行过滤
2.NFS共享主配置文件/etc/exports
[root@server0 ~]# mkdir /nsd
[root@server0 ~]# echo haha > /nsd/abc.txt
[root@server0 ~]# ls /nsd
[root@server0 ~]# vim /etc/exports
/nsd *(ro) #共享目录路径 客户端(权限)ro : 只读rw : 读写 sync : 同步
3.重起nfs服务,设置为开机自起
[root@server0 ~]# systemctl restart nfs-server
[root@server0 ~]# systemctl enable nfs-server
客户端虚拟机Desktop
[root@desktop0 ~]# vim /etc/fstab
[root@desktop0 ~]# showmount -e 服务器ip
129.204.120.65:/nsd /mnt/nfs nfs defaults,_netdev 0 0
<server>:</remote/export> </local/directory> nfs < options> 0 0
[root@desktop0 ~]# mkdir /mnt/nfs
[root@desktop0 ~]# mount -a
[root@desktop0 ~]# df -h
安全Web服务器
https协议: 443 端口
虚拟Server0:
1.部署 网站证书(营业执照)
# cd /etc/pki/tls/certs/
# wget http://classroom.example.com/pub/tls/certs/
server0.crt
# ls
2.部署 根证书(公安局信息,证书颁发机构的信息)
# cd /etc/pki/tls/certs/
# wget http://classroom.example.com/pub/example-ca.crt
# ls
3.部署 私钥 (用于解密)
# cd /etc/pki/tls/private/
# wget http://classroom.example.com/pub/tls/private/
server0.key
# ls
4.安装可以支持加密Web的软件
[root@server0 /]# yum -y install mod_ssl
[root@server0 /]# rpm -q mod_ssl
5.修改配置文件
[root@server0 /]# vim /etc/httpd/conf.d/ssl.conf
末行模式下 :set nu #添加行号
59 DocumentRoot "/var/www/html"
60 ServerName server0.example.com:443
#指定网站证书
100 SSLCertificateFile /etc/pki/tls/certs/server0.crt
#指定密钥
107 SSLCertificateKeyFile /etc/pki/tls/private/server 0.key
#指定根证书
122 SSLCACertificateFile /etc/pki/tls/certs/example-ca.crt
6.重起服务
[root@server0 /]# systemctl restart httpd
搭建基本邮件服务
虚拟机Server0:
1. 安装 postfix 提供邮件功能的软件
[root@server0 /]# yum -y install postfix
[root@server0 /]# rpm -q postfix
2.修改配置文件/etc/postfix/main.cf
[root@server0 /]# vim /etc/postfix/main.cf
vim末行模式 :set nu
99 myorigin = server0.example.com #默认补全的域名后缀
116 inet_interfaces = all #允许本机所有网卡
164 mydestination = server0.example.com #判断为本域邮件
3.重起postfix服务
[root@server0 /]# systemctl restart postfix
##################################################
使用mail命令发信/收信
• mail 发信操作
– mail -s '邮件标题' -r 发件人 收件人
• mail 收信操作
– mail [-u 用户名]
1.创建用户
[root@server0 /]# useradd zhangsan
[root@server0 /]# useradd lisi
2.收发邮件, -s 邮件的主题 -r 收件人
[root@server0 /]# mail -s '哈哈' -r zhangsan lisi
AAAAAAAAAAAAA
BBBBBBBBBBBBB
.
EOT
[root@server0 /]# mail -u lisi
Heirloom Mail version 12.5 7/5/10. Type ? for help.
"/var/mail/lisi": 1 message 1 new
>N 1 [email protected] Wed Apr 18 14:29 19/631
& 1
####################################################
# echo xixi | mail -s 'xixi' -r zhangsan lisi