IPFire 修改預設登入方法
IPFire是一套小巧簡單易用的防火牆套件。他使用的是我們熟悉的CentOS,操作上也算是挺直覺得,也不會用常見的登入方式,以提高資安防護。預設登入方法很特殊,如果不記錄的話很容易就會忘記,這邊介紹IPFire 2.9版(安裝光碟ipfire-2.9.i586-full-core51.iso)如何自訂修改其登入的方法。
預設登入方法
預設登入的方法是在Green網卡 (內部區域網路)中透過HTTPS連線與444連接埠登入,而登入時會出現Apache認證,需要輸入帳號密碼才能進入IPFire管理畫面。
Apache認證需要輸入使用者名稱「admin」跟安裝IPFire時使用的密碼。
然而由於IPFire使用的登入方法比較特殊,我想要改成自己習慣的登入方式,所以打算進行以下修改:
- 增加另一個我自訂的連接埠
- 增加另一個登入的使用者名稱與密碼
以下詳細說明各個步驟。
增加自訂連接埠:透過Port Forwarding的方法
這方法比較簡單,但原本444連接埠依然可以連線,等於是另外多加一個自訂的連接埠。
進入上方導覽列的 firewall ,到side menu的port forwarding中,新增一個新的規則。規則如下:
- Protocol: TCP
- Alias IP: DEFAUL IP
- Source port: 63443 (這個是你自訂的連接埠)
- Destination IP: 你現在IPFire所在的IP
- Destination port: 444
- Remark: IPFire admin webpage (說明這個連接埠轉遞的用意)
- Source IP, or network: 是否要限定範圍的IP才能連線,建議是設定,例如140.119.61.0/24僅供140.119.61.0~140.119.61.254連線,以提高資安保護
確定好之後就新增。
然後設定External Access,開放444連接埠供外部連線(也就是透過Red網卡連線)。
這樣就可以了。
有人會提出疑問,為何不修改Apache設定呢?這是因為Apache設定要調整的地方比較多,不熟悉的人做起來會很頭痛,所以在這邊並不推薦修改Apache設定。
增加使用者名稱與密碼
這邊開始要進入Linux指令列操作。
修改Apache設定檔
首先先修改Apache的設定檔。檔案位置是「/etc/httpd/conf/vhosts.d/ipfire-interface-ssl.conf」,將看到「Require user」開頭的地方最後都加入空白與你要使用的帳號,例如我要使用的是pudding,那麼就改成「Require user adminpudding」。
共有四處要修改,我這邊各別是:
- 29行:Require user admin pudding
- 38行:Require user adminpudding
- 52行:Require user admin pudding
- 61行:Require user dial adminpudding
新增Apache認證檔
然後再來新增Apache認證檔的使用者名稱與密碼。認證檔的位置在「/var/ipfire/auth/users」,設定認證檔的指令為「htpasswd」。如果要新增pudding帳號,則下以下指令:
[root@ipfire /]# htpasswd /var/ipfire/auth/users pudding
接著Linux會問你密碼,請輸入兩次相同密碼作為確認。
重新啟動Apache,完成
接著是重新啟動Apache,指令如下:
[root@ipfire /]# /etc/init.d/apache restart
或著你也可以重新啟動IPFire也無所謂。
這樣就可以用你剛剛設定的使用者名稱與密碼登入了。
結語
如何有效管理網路仍是每個網管致力不懈的難題。儘管IPFire特殊的方式提高了資安防護,但也讓一般人容易忘記怎麼連線。那麼還是要手動調整成符合當地文化的登入方式,這樣子就比較令人安心了。