文章来源:http://blog.csdn.net/johnnycode/article/details/41947581

2014-12-16日

昨天晚上处理好的网络訪问连接。早晨又訪问不到了。

现象是Nginx能够获得 Respone Head信息,但Respone Body信息间歇性能够获取,Nginx配置为监听80port。iptables 和 selinux 服务停止状态。

终于的处理结论是某IDC要求80port必须申请白名单才干够訪问,由于能够间歇性获取 Respone Body 导致对问题的误判,谨记!

2014-12-15日

本文暂且叫这个名吧,由于不是非常理解 Selinux 。或许你有更好的办法请告知我!

一、问题现象

Nginx 启动后本机能够正常訪问,使用Curl 命令能够获取默认 index.html,其它界面均不可訪问。远程訪问server时提示 400 bad request 信息。检查Nginx用户权限和port都正常。iptables 未启动。

# curl -I 123.123.123.123
HTTP/1.1 200 OK
Server: nginx
Date: Mon, 15 Dec 2014 10:52:34 GMT
Content-Type: text/html
Content-Length: 12
Last-Modified: Mon, 15 Dec 2014 10:00:36 GMT
Connection: keep-alive
Accept-Ranges: bytes

检查文件夹时发现文件夹权限后缀都有个点。

注意观察 html 文件夹下 50x.html 、default.html、index.html 这三个文件权限后的点以及 welcome.html 文件权限的区别。

二、问题分析

谷歌、度娘一番,终于结论为 selinux 保护文件夹都会在文件以及文件夹后有个点

查询 selinux 状态

$ sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: enforcing
Mode from config file: enforcing
Policy version: 24
Policy from config file: targeted

查询 selinux 执行模式

$ getenforce
Enforcing

执行模式分为三种 enforcing (强制模式)、permissive(宽容模式)、disabled(关闭)

三、问题处理

既然分析问题可能出在 selinux ,那就尝试修复,修复方式分为两种暂时修复和永久修复!

暂时修复,网上盛传方式。

# setenforce 0 #关闭 Selinux
# setenforce 1 #开启 Selinux

实际上能够执行下试试效果,本人执行结果是在 enforcing 模式与 permissive 模式之间来回切换而已无不论什么效果,假设本人理解错误。请不吝赐教。

永久方式,确实可用。须要重新启动server!

1、改动 /etc/selinux/config 文件

# vim /etc/selinux/config

2、改动 SELINUX=disabled 。改动后内容

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
SELINUXTYPE=targeted

3、重新启动电脑查看 Selinux 状态,应该为关闭状态

$ getenforce
Disabled

四、问题总结

1、未停止 Selinux 服务时,文件新增、改动文件夹都是带着点的,參见 default.html 和 index.html。

2、停止 Selinux 服务后,文件新增将不受 Selinux 服务保护。也就是不带点了。參见 welcome.html。

第一次处理 Selinux 问题,若实际问题与解决方式有出入请告知我,虚心学习!谢谢。

感谢百度文库作者提供指导意见

Nginx 因 Selinux 服务导致无法远程訪问的更多相关文章

  1. 远程訪问路由器下的mac os(ssh+vnc)

    需求: 使用能够上网的外网pc(win7操作系统).远程訪问公网tp-link下的的mac电脑 环境: mac os -----tp-link-----------pc 工具: putty   Tig ...

  2. MySQL远程訪问的两个问题

    安装MySQL后,不能远程訪问.进行例如以下配置就可以 连接后,依旧不能连接,报例如以下错误: 1042 - Can't get hostname for your address 解决方法在my.i ...

  3. MYSQL加入远程用户或同意远程訪问三种方法

    加入远程用户admin密码为password GRANT ALL PRIVILEGES ON *.* TO admin@localhost IDENTIFIED BY \'password\' WIT ...

  4. 怎样设置mysql远程訪问

     Mysql默认是不能够通过远程机器訪问的,通过以下的配置能够开启远程訪问 在MySQL Server端: 运行mysql 命令进入mysql 命令模式, mysql> use mysql; ...

  5. mysql设置远程訪问数据库的多种方法

    问题:MySQL权限设置正确,但仍无法远程訪问.通过telnet发现3306port未打开. 分析:MySQL默认仅仅绑定127.0.0.1,即:仅仅有在本机才干訪问3306port. 解决:找到My ...

  6. NGINX之——配置HTTPS加密反向代理訪问–自签CA

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46695495 出于公司内部訪问考虑,採用的CA是本机Openssl自签名生成的,因 ...

  7. Web.config中设置启用webservice远程调试訪问

    在.NET 中已经默认将webservice的远程调试功能关闭.有的时候我们须要远程调试程序的时候,就须要打开此功能我们仅仅需在webservice的项目的中添web.config的<syste ...

  8. 使用FREDATED引擎实现跨实例訪问

    跨数据库server.跨实例訪问是比較常见的一种訪问方式,在Oracle中能够通过DB LINK的方式来实现. 对于MySQL而言,有一个FEDERATED存储引擎与之相相应.相同也是通过创建一个链接 ...

  9. windows下通过VNC图形化訪问Ubuntu桌面环境

    要在windows下图形化訪问Ubuntu或其他Linux系统桌面环境有非常多方法.我比較喜欢的是使用VNC服务,须要在Ubuntu下安装vncserver和在windows下安装client訪问工具 ...

随机推荐

  1. Spring Boot使用Druid和监控配置

    Spring Boot默认的数据源是:org.apache.tomcat.jdbc.pool.DataSource 整体步骤: (1)    --   Druid简单介绍,具体看官网: (2)     ...

  2. Python CSV文件处理/读写及With as 用法

    可以不使用CSV模块 逐行处理: for line in open("samples/sample.csv"): title, year, director = line.spli ...

  3. type,isinstance判断一个变量的数据类型

    type,isinstance判断一个变量的数据类型 import types type(x) is types.IntType # 判断是否int 类型 type(x) is types.Strin ...

  4. 给定一个字符串里面只有"R" "G" "B" 三个字符,请排序,最终结果的顺序是R在前 G中 B在后。 要求:空间复杂度是O(1),且只能遍历一次字符串。

    题目:给定一个字符串里面只有"R" "G" "B" 三个字符,请排序,最终结果的顺序是R在前 G中 B在后. 要求:空间复杂度是O(1),且 ...

  5. Android手机设置隐藏命令大全

    注意:因Android版本较多,固有部分隐藏命令或不能使用 *#*#4636#*#* 显示手机信息.电池信息.电池记录.使用统计数据.WiFi 信息 *#*#7780#*#* 重设为原厂设定,不会删除 ...

  6. echarts 应用数个样例

    应用一:环形图和饼图嵌套 先说明一下内部文件分布: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdGV4dGJveQ==/font/5a6L5L2T/fo ...

  7. js动画学习(一)

    一.运动框架实现思路 1.匀速运动(属性值匀速变化)(改变 left, right, width, height, opacity 等): 2.缓冲运动(属性值的变化速度与当前值与目标值的差成正比): ...

  8. Map 的遍历

    一.Map的遍历 在后面java的开发过程中会遇到Map类的使用,然而map的遍历是一大问题. Map遍历用两种比较交代的方法: package edu.map; import java.util.H ...

  9. python成长之路15

    一:JavaScript: JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的 ...

  10. 使用python操作RabbitMQ,Redis,Memcache,SQLAlchemy 其一

    一.概念 1.Memcached     Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态 ...