我有一个Ubuntu机器(14.04)在apache下运行一个网站(2.4.7) 我需要更改机器的内部IP地址,但每当我做我不能再访问该网站。 只要我将其更改回其旧的内部IP网站是好的。 我的主机文件或类似的东西没有IP限制。 有一些其他的文件,我必须改变一个绑定或什么? 谢谢 编辑: 澄清公众IP没有改变,所以它没有DNS相关。 公共IP保持1.1.1.1 当我将Ubuntu机器的私有IP从2.2.2.2更改为3.3.3.3时,网站不在内部或外部从局域网(外围防火墙也改为点80到3.3.3.3) 将Ubuntu和外围防火墙规则翻转回2.2.2.2以及所服务的站点。
我最近更新在OS OS 7上的Apache从2.2到2.4,更新后,我无法访问根文件夹, 我得到以下错误: [Fri Apr 29 16:30:19.977037 2016] [core:error] [pid 32095] [client 10.211.55.1:44429] AH00027: No authentication done but request not allowed without authentication for /. Authentication not configured? 正如在授权部分中提到的,您仍然可以使用旧指令Order,Allow,Deny和Satisfy通过加载模块(我明显加载): LoadModule access_compat_module modules/mod_access_compat.so 我的目录指令如下: <Directory /> Options FollowSymLinks AllowOverride All </Directory> 我不确定这个问题会是什么,我真的很感谢这里的一些帮助。
目前,我正在使用Modsecurity XSS预防,但是我很难理解我可以如何限制在REQUEST_URIvariables中检查的内容。 我的例子: # # -=[ XSS Filters – Category 3 ]=- # XSS vectors making use of Javascripts URIs, eg, <p style="background:url(javascript:alert(1))"> # SecRule REQUEST_URI|ARGS "(?i)((?:=|U\s*R\s*L\s*\()\s*[^>]*\s*S\s*C\s*R\s*I\s*P\s*T\s*:|:|[\s\S]allowscriptaccess[\s\S]|[\s\S]src[\s\S]|[\s\S]data:text\/html[\s\S]|[\s\S]xlink:href[\s\S]|[\s\S]base64[\s\S]|[\s\S]xmlns[\s\S]|[\s\S]xhtml[\s\S]|[\s\S]style[\s\S]|<style[^>]*>[\s\S]*?|[\s\S]@import[\s\S]|<applet[^>]*>[\s\S]*?|<meta[^>]*>[\s\S]*?|<object[^>]*>[\s\S]*?)" "id:'973338',phase:2,t:none,rev:'1',ver:'OWASP_CRS/2.2.9',maturity:'1',accuracy:'8',t:urlDecodeUni,t:htmlEntityDecode,t:jsDecode,t:cssDecode,log,capture,tag:'OWASP_CRS/WEB_ATTACK/XSS',tag:'WASCTC/WASC-8',tag:'WASCTC/WASC-22',tag:'OWASP_TOP_10/A2',tag:'OWASP_AppSensor/IE1',tag:'PCI/6.5.1',msg:'XSS Filter – Category 3: Javascript URI Vector',logdata:'Matched Data: %{TX.0} found within %{MATCHED_VAR_NAME}: %{MATCHED_VAR}',severity:'2',setvar:'tx.msg=%{rule.msg}',setvar:tx.xss_score=+%{tx.critical_anomaly_score},setvar:tx.anomaly_score=+%{tx.critical_anomaly_score},setvar:tx.%{rule.id}-OWASP_CRS/WEB_ATTACK/XSS-%{matched_var_name}=%{tx.0}" 在上面的例子中,正则expression式检查某些标签,如果find,停止请求,logging尝试,然后抛出一个403禁止。 这很好,但我有一个特定的URL,看起来像这样: /chart.php?this=haha&style=testStyle Where &style=使ModSecurity引发错误并停止请求。 同样,他们有一个规则,只是检查style= , 所以我的问题是,我怎么能改变REQUEST_URI的方式(在ModSecurity规则内),以便规则只检查之前的一切? (请求参数)。
我试图在服务器上安装letsencrypt,www和根域是由框中。 我可以安装与www子域没有问题,但不是根域。 这是我得到的错误 Failed authorization procedure. domain.com (tls-sni-01): urn:acme:error:connection :: The server could not connect to the client to verify the domain :: Failed to connect to host for DVSNI challenge 进一步调查显示,我可以使用www子域telnet到端口443,但不是根域,也不是IP地址。 我推测解决后一个问题将解决前一个问题。 凯文,谢谢你的帮助
我为我的wamp64服务器启用了SSL,并且对于http:// localhost /和https:// localhost /都可以正常工作。 但我没有启用它来看本地主机 – 我需要激活我的虚拟主机之一: <VirtualHost *:443> DocumentRoot "D:/DEV/www/app/public/" ServerName dev.app.com:443 ServerAdmin admin@localhost ErrorLog "D:/wamp64/www/ssllogs/ssl_error.log" TransferLog "D:/wamp64/www/ssllogs/ssl_access.log" SSLEngine on SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL SSLCertificateFile "D:/wamp64/ssl.crt/server.crt" SSLCertificateKeyFile "D:/wamp64/ssl.key/server.key" <FilesMatch "\.(cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars </FilesMatch> <Directory "D:/DEV/www/app/public"> SSLOptions +StdEnvVars Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Order deny,allow Allow from all </Directory> BrowserMatch ".*MSIE.*" \ nokeepalive ssl-unclean-shutdown […]
我们目前正在docker上运行apache2 / mod-php网站,部署到google kubernetes。 为了利用谷歌云日志logging的严重级别过滤,我在apache.conf中创build了一个LogFormat ,它将日志输出写为结构化的JSON。 现在我在日志中看到两个访问日志输出。 1是格式正确的CustomLog,另一个似乎是某种默认访问日志。 这里是Apache的conf: 1 LogLevel info 2 3 LogFormat "{\"message\": \"%{X-Forwarded-For}i %l %u %t '%r' %>s %b '%{Referer}i' '%{User-Agent}i'\", \"severity\": \"INFO\"}" common 4 CustomLog /dev/stderr common 5 6 7 ErrorLogFormat "{\"message\": \"[%t] [%l] [pid %P] %F: %E: [client %a] %M\", \"severity\": \"ERROR\"}" 8 ErrorLog /dev/stderr 9 10 <VirtualHost *:80> […]
我有2个AJP服务运行在我的服务器和一个Apache 2.4代理。 我想映射这个: # in-development environment <Location "/dev"> ProxyPass ajp://127.0.0.1:3001/dev/ </Location> # in production environment <Location "/"> ProxyPass ajp://127.0.0.1:3000/ </Location> 但是,当我访问http:// myserver / dev代理到ajp://127.0.0.1:3000/而不是ajp://127.0.0.1:3001/ 。
我试图将我的Apache访问控制指令从较旧的Order,Allow和Deny移到新的Require。 不幸的是,用了这么久的旧路,我无法想出新的办法。 基本上,我想拒绝访问除了几个IP地址的每个人。 使用旧的格式,我有: Order Deny,Allow Deny from all Allow from 192.168.123.123 Allow from 123.123.123.123 我认为这应该是这样的: Require all denied Require ip 192.168.123.123 Require ip 123.123.123.123 这似乎工作。 但我不确定我是不是应该像“老路”那样思考。 也许我应该使用RequireAll或RequireAny一些,或者即使我应该嵌套它们。
这是为了评论一个类似的问题,但由于Stack对于评论的限制性很强,所以我按照他们的意愿重新发布: :这里的文档: http : //httpd.apache.org/docs/2.4/en/mod/mod_authz_core.html#require ) 这里是configuration文件: Options Indexes FollowSymLinks AllowOverride None Require ip $CIDR ~ 错误仍然是:5月24 20:54:54 ip-172-16-5-34.us-west-1.compute.internal httpd [23044]:AH00526:在/ etc / httpd / conf行3上的语法错误.d / httpd.conf:5月24日20:54:54 ip-172-16-5-34.us-west-1.compute.internal httpd [23044]:无效的命令'要求',可能是拼写错误或由模块不包含在服务器configuration中 我错过了什么? 它看起来像RequireAny或RequireAll命令可能会帮助,但他们不。 为了您的参考,这里提供的信息是不够的: 我如何要求IP范围而不是1 IP?
我试图阻止访问我的网站,除了访问单个URL“/ ws / public”,每个人都被允许查看。 我在Apache Tomcat前面运行Apache WebServer,它通过Web Service提供来自Java Web应用程序的内容。 我有一个Apache WebServer的configuration文件,如下所示: <VirtualHost *:80> ServerName foo.org ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined ProxyPass /VS/ws/public http://localhost:8090/VS/ws/public ProxyPassReverse /VS/ws/public http://localhost:8090/VS/ws/public </VirtualHost> 这对我来说是正确的。 我testing过访问私人Web服务和其他网页,我总是得到404。这是好的。 一位同事build议,包括http://mysite/VS/ws/public/../private等“..”的请求将允许访问私人Web服务,但在我的testing中,我无法实现这一点(我不想要这个!) 那么,上面的configuration是否正确只允许访问http:// mysite / VS / ws / public ? 有没有我忽略的安全问题?