设为首页 收藏本站
查看: 2598|回复: 5

[经验分享] 如何限制只有某些IP才能使用Tomcat Manager

[复制链接]

尚未签到

发表于 2012-10-23 17:43:30 | 显示全部楼层 |阅读模式
Tomcat所附的manager application可以讓網站管理者透過存取/manager/html的方式隨時去reload一個webapp,基本的安全性保護是透過conf/tomcat-users.xml的帳號跟密碼認證,如果還要進一步要求安全性的話,可以修改manager.xml,加上使用IP或主機名稱來限制來源主機,底下是用IP作限制的例子:
[size=1em][size=1em]
01
<ContextdocBase="${catalina.home}/server/webapps/manager"

[size=1em]
02
privileged="true"antiResourceLocking="false" antiJARLocking="false">

[size=1em]
03
<Valve className="org.apache.catalina.valves.RemoteAddrValve"

[size=1em]
04
allow="127.0.0.1,192.168.1.*"/>

[size=1em]
05

[size=1em]
06
<!-- Link to the user database we will get roles from -->

[size=1em]
07
<ResourceLink name="users" global="UserDatabase"

[size=1em]
08
type="org.apache.catalina.UserDatabase"/>

[size=1em]
09

[size=1em]
10
</Context>





只需要對原來的manager.xml加上
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127.0.0.1,192.168.1.*"/>
的設定,其中allow是允許的來源IP,如果有兩個以上時用逗號(,)隔開,同一個網段,可用萬用字元星號(*)來表示。

參考資料:
The Apache Tomcat 5.5 Servlet/JSP Container - Manager App HOW-TO
Apache Tomcat Configuration Reference - The Valve Component
Tomcat 7.0的設定方法:
在manager.xml中加入下列設定到Context
[size=1em][size=1em]
1
<Valve className="org.apache.catalina.valves.RemoteAddrValve"

[size=1em]
2
allow="114\.\d+\.\d+\.\d+"/>




如:
[size=1em][color=rgb(100, 103, 99) !important]view source
[color=rgb(100, 103, 99) !important]print
[color=rgb(100, 103, 99) !important]?

[size=1em][size=1em]
1
<Context docBase="${catalina.home}/webapps/manager"

[size=1em]
2
privileged="true" antiResourceLocking="false" antiJARLocking="false">

[size=1em]
3
<Valve className="org.apache.catalina.valves.RemoteAddrValve"

[size=1em]
4
allow="114\.\d+\.\d+\.\d+"/>

[size=1em]
5
</Context>





參考資料:
http://tomcat.apache.org/tomcat-7.0-doc/config/valve.html#Remote_Address_Filter

Tomcat 7.x 與Tomcat 5.x 管理系統差異比較

Tomcat 完成安裝設定之後本身有一個內建的管理系統可以提供使用,這一個內建的管理系統雖然沒有很華麗介面跟圖形化介面,但是所提供的功能和資訊都是有很大的用處的,當中重要的部分是可以直接管理Tomcat 裡面的相關服務,以及提供服務的相關資訊如:處理時間,錯誤發生次數,服務請求數量...等,對於一個系統的管理者而言這些資訊都是相當重要的。

以下的範例將會拿Tomcat 5.x 跟Tomcat 7.x 當作範例,會拿這兩個版本當作例子是因為Tomcat 7.x 是目前最新的版本,除了個人的使用者外如果是公司線上運作的系統大概都還要再評估一下是否升級新版的Tomcat,畢竟換系統的風險是相當高的,多作一點準備總是好的,以下會提供這兩個版本的資訊提供參考。

Tomcat 管理介面的啟用需要設定管理者帳號密碼才可以登入,這樣的安全性設定在兩個版本中都有,只是設定的方式在Tomcat 5.x和Tomcat 7.x 有些不一樣的地方。

Tomcat 5.x 設定方式

開啟管理帳號設定檔案
[iyunv@localhost ~]# vi $TOMCAT_HOME/conf/tomcat-users.xml

複製以下的內容到檔案設定中,並設定使用者名稱superfunction,使用者密碼superfunction
<tomcat-users>
<role rolename="manager"/>
<user username="superfunction" password=”superfunction" roles="manager"/>
<user name="tomcat" password="tomcat" roles="tomcat" />
<user name="role1" password="tomcat" roles="role1" />
<user name="both" password="tomcat" roles="tomcat,role1" />
</tomcat-users>

重新啟動Tomcat 服務使用連線帳號設定
[iyunv@localhost ~]# /etc/init.d/tomcat restart

開啟限制連線管理系統的IP設定檔案
[iyunv@localhost ~]#vi $TOMCAT_HOME/conf/Catalina/localhost/manager.xml

限制連線IP的設定方法可以分為三種
只開放擔一個特定的IP 連線
開放多個IP 連線
開放特定網段的IP可以連線
<Context docBase="${catalina.home}/server/webapps/manager" privileged="true" antiResourceLocking="false" antiJARLocking="false" useHttpOnly="true">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="10.0.200.171"/>
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="10.0.200.171,
10.0.200.170. 10.0.200.169"/>
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="10.0.200.*"/>
<!-- Link to the user database we will get roles from -->
<ResourceLink name="users" global="UserDatabase" type="org.apache.catalina.UserDatabase"/>
</Context>

重新啟動Tomcat 服務
[iyunv@localhost ~]# /etc/init.d/tomcat restart

<VALVE allow="<USER lang=zh-TW name="both" username="superfunction" allow="
<VALVE allow="<USER lang=zh-TW name="both" username="superfunction" allow="
<VALVE allow="<USER lang=zh-TW name="both" username="superfunction" allow="

Tomcat 7.x 設定方法


設定管理帳號設定檔案
[iyunv@localhost ~]#vi $TOMCAT_HOME/conf/tomcat-users.xml

複製以下內容到設定檔案中,設定使用者名稱是superfunction 密碼是superfunction,Tomcat 7.x 設定的管理者的標籤與Tomcat 5.x 有些不相同,有些不相同所要注意這一個部份的差別.
Tomcat 7.x Tomcat 5.x 的管理設定上有些許的不同,因爲管理有兩套管理介面所以分爲兩組管理標籤,而設定可以分爲單一個標籤單一個使用者,單一個使用者多個標籤.

<!--
<role rolename="tomcat"/>
<role rolename="role1"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>
-->
<role rolename="manager-gui"/>
<role rolename="manager-status"/>
<user username="superfunction_a" password="superfunction" roles="manager-gui"/>
<user username="superfunction" password="superfunction" roles="manager-gui,manager-status"/>

完成設定後重新啓動Tomcat 服務
[iyunv@localhost ~]# /etc/init.d/tomcat restart

設定限制連線IP 設定檔
[iyunv@localhost ~]# vi $TOMCAT_HOME/conf/server.xml

限制連線IP的設定在Tomcat 5.x 只有白名單的設定,Tomcat 7.x 中可以設定黑名單,同樣的限制的IP作種設定
針對單一個限制連線IP
多個限制連線IP
允許一個網段限制IP
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".t
pattern="%h %l %u %t &quot;%r&quot; %s %b" />

<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="10.0.200.171 deny=""/>
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="10.0.200.171||10.0.200.131” deny=""/>
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="10.0.200.*” deny=""/>

完成設定後重新啓動Tomcat 服務
[iyunv@localhost ~]# /etc/init.d/tomcat restart

以上的設定部分是在設定檔案的部分,完成了這些設定資訊就是前往管理介面.
Tomcat 5.x管理介面
這一個畫面就是Tomcat 安裝好之後會看到的預設系統歡迎畫面,管理介面也是在這一個頁面,
位置就是在左上半部,點選Tomcat Administration 進入管理頁面。
DSC0000.jpg
Tomcat 7.x 管理介面
Tomcat 7.x 的登入畫面不一樣了,在畫面上加了比較多的色彩元素,畫面看起來比較華麗跟前幾版比較單調的配色大不相同,很重要的是管理系統選單換位置了,哇哩勒從左邊換到右邊這樣有差嗎?真的有差!Tomcat 7.x 把管理系統裡面選單往上拉一層,在歡迎畫面就出現了管理系統的選單了,因此Tomcat 7.x 在限制連線IP 設定的功能開啟的話是連這一頁歡迎畫面都看不到的。
DSC0001.jpg
Tomcat 5.x Web Application Manager
在tomcat 5.x 要進入Web Application Manager的連接要請點選List Application 這一個選項,在Web Application Manager提供可以從網頁管理系統去對於單一的Application Server 服務進行管理操作。
DSC0002.jpg
Tomcat 7.x Web Application Manager
在Tomcat 7.x Web Application Manager介面的連接修改了變成在Managre App的位置,除此之外在版面上的配置是差沒有多少所以使用上應該沒有轉換的問題,但是在內在的安全機置卻加強了許多.除了管理系統中的安全機制,在Tomcat 7 中對於每一個連接還增加了一個辨識的session,用以避免跨網站的欺騙攻擊(CSRF),提高系統的安全性.
DSC0003.jpg
Tomcat 5.x 服務資訊頁
在Tomcat 5.x 要進到這一頁請點選Status ->Complete ServerStatus 這一個選項.
DSC0004.jpg
點選進去後就會表列出目前伺服器上的服務清單,與服務的相關資訊當中有幾個項目:
服務反應時間(Process Time)
錯誤發生數(Error Count)
服務請求數(Request Count)
載入時間(Load Time)
在資訊頁當中的項目很多,以上提出幾個給大家參考,而其它的項目多可以從字面意思知道要表達的意義,所以還算易懂.
DSC0005.jpg
Tomcat 7.x 服務資訊頁
在tomcat 7.x 中所提供的資訊內容與Tomcat 5.x 大致上相同,但是要進入到該功能的選項變成Server Status->Complete Server Status 這一個部分要請注意.
DSC0006.jpg
頁面的內容主要也是要呈現Tomcat 中各Application 服務的執行狀況與資訊,Tomcat 7.x的資訊呈現方式與Tomcat 5.x雷同,主要都是系統的執行時間跟相關數據.
DSC0007.jpg
比較了Tomcat 5.x 與tomcat 7.x 可以發現是大同小異,修改的部分都是在安全性上的加強,這一個部分可能就會需要系統的管理人員多費心去了解新的安全規則,不過在操作的介面上還是保留原有的操作流程跟習慣這一點對於系統管理人員會是一個好消息,提供目前使用的報告給各位參考,希望對於評估是否使用新版的Tomcat 有所助益.


运维网声明 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-1668-1-1.html 上篇帖子: 利用Tomcat的用户名和密码构建“永久”后门 下篇帖子: 查看Tomcat版本

尚未签到

发表于 2013-3-14 00:58:45 | 显示全部楼层
路过,支持一下啦

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

尚未签到

发表于 2013-5-16 02:01:38 | 显示全部楼层
月经不仅仅是女人的痛苦,也是男人的痛苦。

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

尚未签到

发表于 2013-5-17 11:05:12 | 显示全部楼层
女,喜甜食,甚胖!该女有一癖好:痛恨蚂蚁,见必杀之。问其故曰:这小东西,那么爱吃甜食,腰还那么细!

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

尚未签到

发表于 2013-5-18 17:15:40 | 显示全部楼层
走,MM,咱们化蝶去……

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

尚未签到

发表于 2013-5-19 22:46:55 | 显示全部楼层
饭在锅里,我在床上*^_^*

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

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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