
SELinux安全防护
1、将Linux服务器的SELinux设为enforcing强制模式
序列号 | CPU | RAM | HDD | 带宽 | 售价(美元) | 免费试用 |
---|---|---|---|---|---|---|
香港服务器1 | E5-2620 | 32G | 1T HDD | 50M/无限流量 | $196.00 | 立即申请 |
香港服务器2 | E5-2650 | 32G | 1T HDD | 50M/无限流量 | $256.00 | 立即申请 |
香港服务器3 | E5-2680 | 32G | 1T HDD | 50M/无限流量 | $316.00 | 立即申请 |
香港服务器4 | E5-2690 | 32G | 1T HDD | 50M/无限流量 | $336.00 | 立即申请 |
香港服务器5 | E5-2697 | 32G | 1T HDD | 50M/无限流量 | $376.00 | 立即申请 |
香港服务器6 | E5-2620*2 | 32G | 1T HDD | 50M/无限流量 | $376.00 | 立即申请 |
香港服务器7 | E5-2650*2 | 32G | 1T HDD | 50M/无限流量 | $436.00 | 立即申请 |
香港服务器8 | E5-2680*2 | 32G | 1T HDD | 50M/无限流量 | $476.00 | 立即申请 |
香港服务器9 | E5-2690*2 | 32G | 1T HDD | 50M/无限流量 | $556.00 | 立即申请 |
香港服务器10 | E5-2697*2 | 32G | 1T HDD | 50M/无限流量 | $596.00 | 立即申请 |
香港服务器11 | E5-2680v4*2 | 32G | 1T HDD | 50M/无限流量 | $696.00 | 立即申请 |
香港服务器12 | E5-2698v4*2 | 32G | 1T HDD | 50M/无限流量 | $796.00 | 立即申请 |
2、从/root目录下移动一个包文件到FTP下载目录,调整策略使其能够被下载
一、将Linux服务器的SELinux设为enforcing强制模式
1)固定配置:修改/etc/selinux/config文件
确认或修改SELINUX为enforcing模式:
[root@proxy~]#vim/etc/selinux/config
SELINUX=enforcing//设置SELinux为强制模式
SELINUXTYPE=targeted//保护策略为保护主要的网络服务安全
2)临时配置:使用setenforce命令
查看当前SELinux状态,如果是disabled则需要根据第1)步的配置重启系统;如果是permissive则使用setenforce命令修改为enforcing即可:
[root@proxy~]#getenforce//查看当前状态为警告模式
Permissive
[root@proxy~]#setenforce1//设置SELinux为强制模式
[root@proxy~]#getenforce//查看当前模式为强制模式
Enforcing
[root@proxy~]#setenforce0//设置SELinux为强制模式
[root@proxy~]#getenforce//查看当前模式为警告模式
Permissive
二、在SELinux启用状态下,调整策略打开vsftpd服务的匿名上传访问
1)配置一个允许匿名上传的vsftpd服务作为测试环境
[root@proxy~]#setenforce1
[root@proxy~]#yum-yinstallvsftpd
....
[root@proxy~]#vim/etc/vsftpd/vsftpd.conf
anonymous_enable=YES//开启匿名访问
anon_upload_enable=YES//允许上传文件
anon_mkdir_write_enable=YES//允许上传目录
[root@proxy~]#systemctlstartvsftpd//启动服务
//默认Vsftpd共享目录为/var/ftp/
三、从/root目录下移动2个包文件到FTP下载目录,调整文件的安全上下文
1)建立两个FTP下载用的测试文件
由root用户创建两个测试压缩包,一个直接建立到/var/ftp/目录下,另一个先在/root/下建立,然后移动至/var/ftp/目录。
//测试文件1,直接在ftp目录下创建文件
[root@proxy~]#tar-czf/var/ftp/log1.tar/var/log
[root@proxy~]#ls-lh/var/ftp/
-rw-r--r--.1rootroot8M8月1610:16log1.tar
[root@proxy~]#ls-Z/var/ftp/
-rw-r--r--.rootrootunconfined_u:object_r:public_content_t:s0log1.tar
//测试文件2,在/root下建立,然后移动至/var/ftp目录
[root@proxy~]#tar-czflog2.tar/var/log
[root@proxy~]#mvlog2.tar/var/ftp/
[root@proxy~]#ls-lh/var/ftp/
-rw-r--r--.1rootroot8M8月1610:16log2.tar
[root@proxy~]#ls-Z/var/ftp/
-rw-r--r--.1rootrootunconfined_u:object_r:admin_home_t:s0log2.tar
2)通过FTP方式测试下载
使用wget命令分别下载这两个包文件,第二个包将会下载失败(看不到文件)。
[root@proxy~]#wgetftp://192.168.4.5/log1.tar//下载第一个文件,成功
[root@proxy~]#wgetftp://192.168.4.5/log2.tar//下载第二个文件,失败
3)检查该测试包的安全上下文,正确调整后再次下载第二个包成功。
文件已经存放到共享目录下,但客户端无法访问下载,是因为被SELinux拦截了!
[root@proxy~]#ls-Z/var/ftp/
-rw-r--r--.rootrootunconfined_u:object_r:public_content_t:s0log1.tar
-rw-r--r--.1rootrootunconfined_u:object_r:admin_home_t:s0log2.tar
[root@proxy~]#chcon-tpublic_content_t/var/ftp/d2.tar.gz
[root@proxy~]#ls-Z/var/ftp/log2.tar
-rw-r--r--.rootrootunconfined_u:object_r:public_content_t:s0log2.tar
[root@proxy~]#wgetftp://192.168.4.5/log2.tar//再次下载,成功
注意:上例中的chcon操作可替换为(效果相同): restorecon /var/ftp/log2.tar.gz 或者 chcon --reference=/var/ftp/log1.tar.gz /var/ftp/log2.tar.gz
感谢您的阅读,驰网IDC助您成为更专业的服务器管理员!