设为首页 收藏本站
查看: 1368|回复: 0

[经验分享] SELINUX for APACHE VSFTP

[复制链接]

尚未签到

发表于 2018-11-22 13:49:43 | 显示全部楼层 |阅读模式
  Selinux 基于APACHE 需要修改的内容
  1. 关闭iptables
12[root@allentuns ~]# service iptables statusiptables: Firewall is not running.  2. 启动Selinux
12[root@allentuns ~]# egrep '^SELINUX=' /etc/sysconfig/selinuxSELINUX=enforcing  3. 安装httpd服务
12# yum -y install httpd# yum -y install vim  4. 修改httpd配置文件
12345[root@allentuns ~]# cd /etc/httpd/conf/[root@allentuns conf]# cp httpd.conf httpd.conf.bak[root@allentuns conf]# vim httpd.conf#修改一行ServerName localhost:80  5. 启动httpd服务
1# service httpd start  6. 测试【1】
DSC0000.jpg

  7. 创建新的web目录
123[root@allentuns ~]# mkdir /www[root@allentuns ~]# cd /www/[root@allentuns www]# echo 'This is test web'>index.html  8. 删除apache的欢迎页面,重新启动httpd服务
1234[root@allentuns www]# rm -rf /etc/httpd/conf.d/welcome.conf[root@allentuns www]# service httpd restartStopping httpd:                                            [  OK  ]Starting httpd:                                            [  OK  ]  9. 测试【2】
DSC0001.jpg

  10. 使用新创建的web页面
1234[root@allentuns www]# vim /etc/httpd/conf/httpd.conf#修改一下两行DocumentRoot "/www"  11. 重新加载配置文件
1[root@allentuns www]# service httpd>  12. 测试【3】
DSC0002.jpg

  13. 为什么会没有权限呢?
  这个时候我们关闭selinux,在来继续访问
123[root@allentuns www]# setenforce 0[root@allentuns www]# getenforcePermissive  14. 测试【4】
DSC0003.jpg

  15. 看来真是selinux的问题,我们开启selinux ,然后通过修改selinux对文件的属性来访问服务
123[root@allentuns www]# setenforce 1[root@allentuns www]# getenforceEnforcing  16.查看文件对应的selinux属性值
12[root@allentuns www]# ls -Z-rw-r--r--. root root unconfined_u:object_r:default_t:s0 index.html  17. 通过chcon修改对应的属性值
1234567891011[root@allentuns www]# chcon --help |lessUsage: chcon [OPTION]... CONTEXT FILE...or:  chcon [OPTION]... [-u USER] [-r ROLE] [-l RANGE] [-t TYPE] FILE...or:  chcon [OPTION]... --reference=RFILE FILE...Change the SELinux security context of each FILE to CONTEXT.[root@allentuns www]# ls -Z /var/www/drwxr-xr-x. root root system_u:object_r:httpd_sys_script_exec_t:s0 cgi-bindrwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 errordrwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 htmldrwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 icons[root@allentuns www]# chcon -t httpd_sys_content_t index.html  18. 测试【5】 DSC0004.jpg
  大家也看到了吧 在开启Selinux的情况下 修改修改文本的属性值,也可以保证服务的安全!!
  _______________________________________________________________________________________________
  Selinux 基于APACHE 需要修改的内容
  一、如何让暱名用户能够上传文件到ftp服务器?
  1,修改ftp目录的访问权限
  # cd /var/ftp/
  # setfacl -m u:ftp:rwx pub
  2,修改配置文件/etc/vsftp/vsftp.conf
  anonymous_enable=YES-----------暱名登录ftp
  anon_upload_enable=YES---------暱名上传
  anon_mkdir_write_enable=YES------暱名创建目录
  anon_other_write_enable=YES------暱名进行其他操作
  3,登录ftp上传文件
  # lftp localhost  -----------登录ftp服务器
  lftp localhost:/pub> cd pub ----------------------- 进入pub目录
  lftp localhost:/pub> lcd /etc-------------------------进入文件系统的/etc目录,注意lcd命令,对于cd命令,这里使用lcd,其他命令可以使用!命令,如!Ls,显示的就是进入ftp前的当前目录。
  lftp localhost:/pub> put shadow
  868 bytes transferred
  然而,开启了selinux后,这些功能形同样会失效。
  这时,就需要用到getsebool和setsebool了
  # getsebool -a | grep ftp--------------显示所有与ftp有关的功能开关
  allow_ftpd_anon_write --> off-----------开启selinux后,默认暱名用户无写权限
  allow_ftpd_full_access --> off-----------默认无访问权限
  allow_ftpd_use_cifs --> off
  allow_ftpd_use_nfs --> off
  ftp_home_dir --> off
  ftpd_connect_db --> off
  ftpd_use_passive_mode --> off
  httpd_enable_ftp_server --> off
  tftp_anon_write --> off
  要想暱名用户能够上传,这时就需要启用这两个功能了。
  # setsebool -P allow_ftpd_anon_write=1
  # setsebool -P allow_ftpd_anon_write=on
  以上两种任选一种。
  -P选项,表示永久有效。
  # setsebool -P allow_ftpd_full_access=1
  这样,暱名用户就可以再次上传了。
  _________________________________________________________________________________________________________
  Selinux 基于SAMBA 需要修改的内容
  [root@server1 pub]# mkdir /erikxue
  [root@server1 pub]# chmod 777 /erikxue
  [root@server1 pub]# ls -Z /etc/samba/
  -rw-r--r--. root root system_u:object_r:samba_etc_t:s0 lmhosts
  -rw-r--r--. root root system_u:object_r:samba_etc_t:s0 smb.conf
  -rw-r--r--. root root system_u:object_r:samba_etc_t:s0 smbusers
  [root@server1 pub]# ll -Z /ccc/
  drwxr-xr-x. nobody nobody unconfined_u:object_r:default_t:s0 /erikxue
  [root@server1 pub]# chcon -u system_u /erikxue/
  [root@server1 pub]#chcon -t samba_etc_t /erikxue/
  [root@server1 pub]# ll -Zd /erikxue/
  drwxrwxrwx. root root system_u:object_r:samba_etc_t:s0 ccc
  同时需要开启布尔值
  [root@server1 /]# getsebool-a | grep samba
  samba_create_home_dirs --> off
  samba_domain_controller --> off
  samba_enable_home_dirs--> off
  samba_export_all_ro --> off
  samba_export_all_rw--> off
  samba_run_unconfined --> off
  samba_share_fusefs --> off
  samba_share_nfs --> off
  use_samba_home_dirs --> off
  virt_use_samba --> off
  [root@server1 /]# setsebool -P
  Usage: setsebool [ -P ] boolean value | bool1=val1 bool2=val2...
  [root@server1 /]# setsebool-P samba_enable_home_dirs on
  [root@server1 /]# setsebool-P samba_export_all_rw 1


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-638302-1-1.html 上篇帖子: apache 几点实现 下篇帖子: apache实现多端囗多域名配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表