使用 fail2ban 來保護 Proxmox

參考網站:
Set up Fail2ban for Proxmox Web GUI – JamesCoyle.net

1. 安裝 fail2ban
# apt-get install fail2ban

2. 備份 fail2ban 設定檔 /etc/fail2ban/jail.conf
# cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.conf.$(date +%F)[@more@]3. 在 /etc/fail2ban/jail.conf 設定檔中加入下面幾行設定
[proxmox-web-gui]
enabled  = true
port     = http,https,8006
filter   = proxmox-web-gui
logpath  = /var/log/daemon.log
maxretry = 3
bantime = 86400

# sed -i ‘$a n[proxmox-web-gui]nenabled  = truenport     = http,https,8006n
filter   = proxmox-web-guinlogpath  = /var/log/daemon.lognmaxretry = 3nbantim
e = 86400′ /etc/fail2ban/jail.conf

4. 建立 proxmox-web-gui.conf  設定檔
# vim /etc/fail2ban/filter.d/proxmox-web-gui.conf
加入下面的設定
[Definition]
failregex = pvedaemon[[0-9]+]: authentication failure; rhost=<HOST> user=.* msg=.*

5. 測試設定檔
# fail2ban-regex /var/log/daemon.log /etc/fail2ban/filter.d/proxmox-web-gui.conf
Running tests
=============

Use   failregex file : /etc/fail2ban/filter.d/proxmox-web-gui.conf
Use         log file : /var/log/daemon.log

Results
=======

Failregex: 1 total
|-  #) [# of hits] regular expression
|   1) [1] pvedaemon[[0-9]+]: authentication failure; rhost=<HOST> user=.* msg=.*
`-

Ignoreregex: 0 total

Date template hits:
|- [# of hits] date format
|  [4421] MONTH Day Hour:Minute:Second
`-

Lines: 4421 lines, 0 ignored, 1 matched, 4420 missed

6. 重新啟動 fail2ban
# systemctl restart fail2ban

7. 列出使用狀況
# fail2ban-client -v status
INFO   Using socket file /var/run/fail2ban/fail2ban.sock
Status
|- Number of jail:      2
`- Jail list:           ssh, proxmox-web-gui

# fail2ban-client -v status proxmox-web-gui
INFO   Using socket file /var/run/fail2ban/fail2ban.sock
Status for the jail: proxmox-web-gui
|- filter
|  |- File list:        /var/log/daemon.log
|  |- Currently failed: 1
|  `- Total failed:     1
`- action
   |- Currently banned: 0
   |  `- IP list:
   `- Total banned:     0

登入 Proxmox

1. 本機登入,自己狀況比較少用到
[@more@]2. 遠端使用 ssh 登入,時常會用到

3. 使用瀏覽器,常常會用到
    以 Firefox 瀏覽器為例

選擇 進階

選擇 新增例外網站

選擇 取得憑證

選擇 確認安全例外

輸入登入帳號及密碼

因為沒有訂購服務,所以出現提示訊息

登入成功,可以開始進行管理

Proxmox Server 安裝

想利用寒假有空閒的時間,將學校部份的 Server 轉成 VM,除了方便管理、備份,也可以做到節能減碳的目的。
在網路上搜尋了一下,發現可以選擇的有 VMware ESXiProxmox VE,但因為考慮到硬體的支援度和對 Linux 的熟悉程度,所以我選擇了 Proxmox VE,至於這二者的差別,可以參考以下網頁:
學校實驗室的伺服器虛擬化方案評比(二):方案比較 – 布丁布丁吃什麼?
學校實驗室的伺服器虛擬化方案評比(三):綜合比較 – 布丁布丁吃什麼?
gienginali – Proxmox VE 4.x 中文初階學習手冊

底下進行安裝,為了擷取安裝圖片,所以先安裝在 VM 之中。
1. 先到 Proxmox VE 官方網站下載 ISO 檔,目前最新版本是 4.4 版

[@more@]2. 選擇 Install Proxmox VE

3. 軟體授權,請選擇 I Agree

4. 硬碟分割,可以直接選 Next,由系統自動分割

5. 或選擇 Options 手動進行硬碟分割

6. 建議剛開始,由系統自動分割,待比較了解系統後,再自行分割

7. 國家/時區及鍵盤設定,國家請自行輸入 Taiwan,時區會自動選擇 Asia/Taiwan,鍵盤不用做更改

8. 管理的密碼設定,帳號預設是 root

9. 網路設定

10. 安裝畫面

11. 安裝完成,按  Reboot 重新啟動

12. GRUB 開機完成

13. 開機完成