服务器为什么要禁止通过IP直接访问?

1、若公布于外网的服务器IP地址未备案,就有可能被工信部查封。这样备案的域名也会无法访问。

2、如果AppScan通过ip访问扫描,会有“发现内部ip泄露模式”的低级别的警告安全风险

- 可能会收集有关Web 应用程序的敏感信息,如用户名、密码、机器名/或敏感文件位置

Tomcat服务为例,可通过简单的配置屏蔽IP地址直接访问:

  IP地址是 120.77.145.25,相应域名是 www.unicom-iot.net

  1、找到 conf/server.xml 的 Engine 节点

    <Engine name="Catalina" defaultHost="localhost">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm> <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t &quot;%r&quot; %s %b" />
   <Context path="/iot/file" docBase="/UIOT_FILE/" reloadable="true" />
</Host>
</Engine>

  修改为:

    <Engine name="Catalina" defaultHost="www.unicom-iot.net">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm> <Host name="www.unicom-iot.net" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t &quot;%r&quot; %s %b" />
  <Context path="/iot/file" docBase="/UIOT_FILE/" reloadable="true" />
</Host> <Host name="120.77.145.25" appBase="ipapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false"/> </Engine>

  2、此时可以在webapps同级目录创建 ipapps 目录,再在 ipapps下创建一个 ROOT 目录下拷贝,

    同时在里面的 放个 index.html 文件修改成想要展示给用于的界面。

  3、重启 Tomcat 即可。

  POINTS:

  1. Engine 节点配置的 defaultHost 表明缺省访问的Host。defaultHost 对应的名称必须存在于 Engine 节点下配置的 host 节点中。

    当一台机器有多个 IP,而按照规定只允许通过一个指定的域名访问时很有用。此时,把 defaultHost 指定为非域名对应的 host,

    这样不通过域名访问时就都定位到指定的非域名 HOST 。

  2. Host 节点 name 对应IP地址,以及域名。一个Host只有指定一个IP或域名。

  3. Host 节点的 appBase ,对应的是存放web应用的目录。这里输入的目录相对于 %TOMCAT_HOME% ,

    如上面的 www.myTest.com 对应的目录是 %TOMCAT_HOME%/webapps,而 120.77.145.25 对应的目录是 %TOMCAT_HOME%/ipapps。

  4.修改 localhost 为 www.unicom-iot.net 后,在 %TOMCAT_HOME%/conf/Catalina/localhost 下配置的虚拟目录会失效。

    因为配置虚拟目录的元素节点 Context 是 server.xml 下 Host 节点下的子节点,Catalina 下的文件夹名字是根据 host 节点的 name 属性来的。

    现在 Host 的 name 已经改 www.unicom-iot.net 那么需要在 %TOMCAT_HOME%/conf/Catalina 新建一个 www.unicom-iot.net 的文件夹,

    然后把 localhost 下的 myTest.xml 文件拷贝到 www.unicom-iot.net 文件夹下才能是虚拟目录继续有效。

WEB安全:Tomcat 只可通过域名访问,禁止通过 IP 访问的更多相关文章

  1. nginx下只能通过域名,禁止使用ip访问

    今天来了一个需求,ip访问返回500,域名访问正常,只需在nginx.conf中添加 server { listen 80 default; #default 必须加的 return 500; } 也 ...

  2. nginx 只容许域名访问禁止掉 ip 访问

    在原有 nginx server 的基础上再加上相同端口的配置 server {            listen 80 default_server;            server_name ...

  3. apache禁止使用IP访问的实现方法

    apache禁止访问目录列表 apache禁止访问目录列表对于开发人员来说还是蛮实用的,可以迅速查找根目录下的所有项目,但如果一个挂在互联网上的服务器为了提高安全性就必须禁止访问目录列表. 找到Apa ...

  4. 【转载】 腾讯云通过设置安全组禁止某些IP访问你的服务器

    有时候我们在运维网站的过程中会发现一些漏洞扫描者的IP信息,或者个人爬虫网站的IP信息,此时我们想禁止掉这些IP访问到你的服务器,可以通过腾讯云的安全组功能来设置禁止这些IP访问你的服务器,也可以通过 ...

  5. 【转载】 禁止国外IP访问你的网站

    在网站的运维过程中,我们通过网站记录的IP列表记录有时候会发现很多国外的IP的访问,如美国的IP等,而很多的服务器攻击行为的发起点很有可能在国外,此时为了服务器安全的考虑,我们可以考虑禁止国外IP访问 ...

  6. php禁止个别ip访问网站

    PHP禁止个别IP访问自己的网站,可以看看下面的方法. function get_ip_data(){ $ip=file_get_contents("http://ip.taobao.com ...

  7. 踢出某正在访问的用户||永久禁止某IP访问

    转至:https://blog.csdn.net/weixin_34408717/article/details/85527305?utm_medium=distribute.pc_aggpage_s ...

  8. Linux 防火墙设置,禁止某个ip访问

    service  iptables  status        查看防火墙状态 service  iptables  start           开启防火墙 service  iptables  ...

  9. 解决mysql中只能通过localhost访问不能通过ip访问的问题

    解决mysql中只能通过localhost访问不能通过ip访问的问题 原因是没开权限 SELECT * FROM USER WHERE USER='root'; grant all privilege ...

  10. linux禁止特定ip访问某个端口

    linux禁止特定ip访问某个端口   解决方法: 禁止特定ip访问8501端口的命令0:iptables -I INPUT -s 192.168.0.232 -ptcp --dport 8501 - ...

随机推荐

  1. CSU 1684-Disastrous Downtime

    题目链接:https://nanti.jisuanke.com/t/28879 思路:贪心,从最早收到请求的时刻开始,统计每个相差1000毫秒的时间段内接收的请求数量再计算该时间段内所需机器数目,答案 ...

  2. Java的 volatile关键字的底层实现原理

    我们知道volatile关键字的作用是保证变量在多线程之间的可见性,它是java.util.concurrent包的核心,没有volatile就没有这么多的并发类给我们使用.本文详细解读一下volat ...

  3. python发送邮箱

    一.Python发送邮件 import smtplib from email.mime.text import MIMEText def send(email_to,title,content): m ...

  4. 用python语言算π值并且带有进度条

    用python算圆周率π 1.准备第三方库pip 打开cmd 输入代码:pip install requests ,随后就会成功 因为小编已经安装好了,所以就不把图截出来了 2.利用马青公式求π    ...

  5. ActiveMQ_6持久化

    activemq持久化 ActiveMQ提供了插件式的消息存储,主要有有如下几种: 1.AMQ消息存储-基于文件的存储方式,是以前的默认消息存储 2.KahaDB消息存储-提供了容量的提升和恢复能力, ...

  6. To handling editor letter

    一般崔稿信写法: Dear Editor: Sorry for disturbing you. We’re not sure if it is the right time to contact yo ...

  7. List 接口中ArrayList Vector LinkedList 比较

    访问权限Arryist最快 其次Vector  最慢LinkedList

  8. 卷积(转自wiki百科)

    维基百科,自由的百科全书 图示两个方形脉冲波的卷积.其中函数 "g" 首先对  反射,接着平移 "t" ,成为  .那么重叠部份的面积就相当于 "t& ...

  9. [au3]批量输入号码程序

    批量输入号码程序 这个文件可以随时产生一个剪贴板文字的文本文件,以供其他程序读取. 这个程序修改了许多次了,主要是针对网络延迟的问题. 最终找到了解决方案:探测输入的界面的反馈信息,也就是反馈的颜色. ...

  10. iowait过高处理

    网管告警: 告警主机:YiDHLWJKFZ-js-app- 主机IP:192.168.***.*** 告警项目:system.cpu.util[,iowait] 告警时间: :: 告警等级:Warni ...