iT邦幫忙

2022 iThome 鐵人賽

DAY 23
0
DevOps

30天WebSphere入門及經驗分享系列 第 23

D23/WeSphere的好搭檔-IBM HTTP Server

  • 分享至 

  • xImage
  •  

一般而言,WebSphere作為Application Server是不會直接連到外網,也不會讓外網的客戶端直接連進來,
通常我們還會建一個Web Server,客戶端需透過Web Server才能連到Application Server,
一定程度上可以讓較為重要的Application Server避免遭受外部Internet的攻擊。

而IBM產品中,Web Server的角色通常就是交給IBM HTTP Server來扮演。
https://ithelp.ithome.com.tw/upload/images/20221008/20128973iUTS1XL0RS.jpg
IBM HTTP Server,簡稱IHS,實際上就是Apache HTTP Server的變體,一樣作為反向代理伺服器使用,所以只要稍微有碰過Aphace的人,很快會發現相關設定幾乎一模一樣。

剩下幾天,我想分配到IHS上。
在系統的維運上,如果只把IHS當作WebSphere的從屬品,建置完成之後設定都只使用預設的話是很可惜,
WAS要學,IHS也要學,這樣才算健全

先建置環境,
為了節省時間,一樣使用docker image,
由於官方未提供IHS的image,我找了第三方提供的image來使用,
由於不是要在正式環境運行,在沒有要掛載volume的情況下不需要太擔心

docker pull rodrigoerazohermosilla/ibm-http-server:8.5.5.9

下載中
https://ithelp.ithome.com.tw/upload/images/20221008/20128973qk5vO2ilfD.png

建立container

docker run --name test-ihs2 -p 443:443 -p 80:80 -d  rodrigoerazohermosilla/ibm-http-server:8.5.5.9 sleep infinity

這邊我加了指令sleep infinity,避免container在IHS服務停止後跟著關閉

接著從瀏覽器進入
http://localhost/
就可以看到IHS的預設畫面了
https://ithelp.ithome.com.tw/upload/images/20221008/20128973cfPzRO5Jao.png
一般在看到這個畫面之後,我們的反應就是:趕快把這個東西給我拿掉!
在營運環境下,太容易讓人知道你使用哪種伺服器絕非好事,會讓有心人士更容易找到攻擊的方向。
要拿掉畫面很簡單,進入容器內的以下路徑,

/opt/IBM/HTTPServer/htdocs

就可以看到首頁index.html、樣式、圖片都放在這裡。

稍微移動一下

cd /opt/IBM/HTTPServer
mv htdocs htdocs_bak

https://ithelp.ithome.com.tw/upload/images/20221008/201289730SZJKF8NSI.png
首頁就被移除了
不過在404頁面還是自報門戶:IBM_HTTP_Server at localhost Port 80
這裡稍後處理,先建立一個新的htdocs目錄跟index.html

mkdir htdocs
cd htdocs

cat - > index.html

<html>
<head>
<title>Hello, World!</title>
</head>
<body>
<h1>Hello, World!</h1>
<p>ironman day 23</p>
</body>
</html>

(ctrl +D 跳出編輯)

https://ithelp.ithome.com.tw/upload/images/20221008/20128973xr4e1Bix0T.png

現在有首頁了,但到了不存在的路徑還是會顯示404

來處理404畫面

cd /opt/IBM/HTTPServer/conf
#安裝vim
apt-get update
apt-get install vim

vi httpd.conf

編輯httpd.conf設定檔,

加入這行

ErrorDocument 404 "404 Not Found"

指定如果httd status 是404,就回應字串"404 Not Found"
其他400、401、500狀態也可以用相同方式修改

存檔後重啟IHS
httpd.conf的修改都要重啟才會生效

cd /opt/IBM/HTTPServer/bin
apachectl stop
apachectl start

https://ithelp.ithome.com.tw/upload/images/20221008/20128973DOBpF2okEi.png
完成

明天就用console將IHS加入WebSphere的管理


上一篇
D22/WeSphere掛掉了/無法使用console
下一篇
D24/透過WebSphere console管控IBM HTTP Server
系列文
30天WebSphere入門及經驗分享36
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言