ต่อเนื่องจากโพส วิธีลง CSF ใน Ubuntu บน EC2 เมื่อเราทำการลง csf เรียบร้อยแล้ว ในเบื้องต้นระบบจะปิด Web UI ไว้เป็น default โดยก่อนที่จะเปิดใช้ Web UI ได้ เราจะต้องมีการเตรียมพื้นฐานของระบบที่ต้องการ โดยใช้คำสั่ง
sudo apt-get install libio-socket-ssl-perl libcrypt-ssleay-perl libnet-libidn-perl libio-socket-inet6-perl libsocket6-perl -y
จากนั้นจึงทำการแก้ไขไฟล์ csf.conf อีกครั้ง ด้วยคำสั่ง
sudo vi /etc/csf/csf.conf
โดยค่าที่ต้องแก้ไขในไฟล์ csf.conf ที่จำเป็นต้องตั้งเพื่อใช้งาน Web UI ได้แก่
# เปิดใช้งาน Web UI
# 1 to enable, 0 to disable
UI = "1"
# ตั้งค่าพอร์ทที่ต้องการใช้งาน (หากใช้ AWS EC2 ต้องไปเปิดพอร์ทนี้ใน Security group ด้วย)
UI_PORT = "6666"
# ตั้งค่า username
UI_USER = "some_user_name"
# ตั้งค่ารหัสผ่าน
UI_PASS = "hard_to_guess_password"
อีกค่าหนึ่งที่ต้องให้ความสนใจคือ UI_ALLOW = “1” โดยค่าเริ่มต้นนี้จะเป็นการจำกัดการเข้าถึง Web UI จากไอพีที่กำหนดเท่านั้น และค่า UI_ALERT ที่จะแจ้งเตือนเมื่อมีผู้พยายามลอคอินเข้าสู่ Web UI
# อนุญาตให้ไอพีที่อยู่ในไฟล์ ui.allow เท่านั้นที่จะเข้าใช้งาน Web UI ได้
UI_ALLOW = "1"
# แจ้งเตือนเมื่อมีผู้พยายามลอคอินเข้า Web UI
# โดยค่า 4 เป็นระดับสูงสุด คือแจ้งเตือนทุกครั้งไม่ว่าจะลอคอินสำเร็จหรือไม่ก็ตาม
UI_ALERT = "4"
สามารถเพิ่มไอพีที่ได้รับอนุญาตได้ที่ไฟล์ ui.allow โดย
sudo vi /etc/csf/ui/ui.allow
ซึ่งสามารถกำหนดหลายไอพีได้ เช่น (ตั้งค่าไอพีของคุณ)
183.12.34.12
42.45.33.12
หากต้องการให้เข้าถึง Web UI จากไอพีไหนก็ได้ ให้ตั้งค่า UI_ALLOW = “0” (ไม่แนะนำ)
เมื่อแก้ไขเรียบร้อยแล้ว ทำการรีสตาร์ท lfd ด้วยคำสั่ง
sudo service lfd restart
ถึงจุดนี้หากทุกอย่างราบรื่นแล้วก็จะสามารถเข้าหน้าเว็บได้ที่ https://your-domain:6666 (Port ตามที่ตั้งไว้ใน UI_PORT)
การแก้ไขปัญหา SSL Error
เมื่อทดลองเข้าหน้าเว็บ หากพบปัญหา SSL Error นั้นอาจจะเกิดได้จากหลายสาเหตุ แต่ที่พบได้บ่อยคือโดเมน หรือไอพีนั้นๆมี SSL certificate อยู่แล้ว หากเป็นกรณีนี้สามารถแก้ไขได้โดยตั้งค่าให้ Web UI ไปใช้ Certificate เดียวกับของเดิมที่เคยสร้างไว้แล้ว ดังนี้
เปลี่ยนชื่อไฟล์ Certificate ของ CSF เพื่อเตรียมย้ายไปใช้ไฟล์ cert เดิมของเซิฟเวอร์
sudo mv /etc/csf/ui/server.key /etc/csf/ui/server.key.old
sudo mv /etc/csf/ui/server.crt /etc/csf/ui/server.crt.old
สร้าง Symbolic links ไปยังไฟล์ cert เดิม ซึ่งเราต้องรู้ตำแหน่งที่ไฟล์ cert เดิมนั้นอยู่ เช่น หาก cert เดิมสร้างโดย certbot ของ letsencrypt สำหรับโดเมนใดๆ ไฟล์จะถูกเก็บอยู่ที่ /etc/letsencrypt/live/domain-name ก็จะสามารถสร้าง sym link ได้โดยใช้คำสั่ง
sudo ln -s /etc/letsencrypt/live/YOUR-DOMAIN-NAME/fullchain.pem /etc/csf/ui/server.crt
sudo ln -s /etc/letsencrypt/live/YOUR-DOMAIN-NAME/privkey.pem /etc/csf/ui/server.key
เพียงเท่านี้หากลองเปิดในเว็บดูใหม่ที่ https://YOUR-DOMAIN-NAME:6666 ก็จะสามารถเข้าถึงหน้าลอคอินได้