การติดตั้ง Admin ใน HestiaCP: การตั้งค่าความปลอดภัยอัตโนมัติ + การเพิ่มประสิทธิภาพการจัดการฐานข้อมูล

最新 เฮสเทียซีพี คู่มือฉบับสมบูรณ์นี้สำหรับการติดตั้ง Adminer ประกอบด้วยขั้นตอนการติดตั้งแบบคลิกเดียว การเสริมความปลอดภัย และการกำหนดค่าอัตโนมัติ โดยจะสอนวิธีการติดตั้งเครื่องมือจัดการฐานข้อมูลและปกป้องเซิร์ฟเวอร์ของคุณทีละขั้นตอน ทำให้ผู้เริ่มต้นใช้งานได้ง่ายและรวดเร็ว พร้อมทั้งช่วยแก้ปัญหาที่ยุ่งยากในการใช้งานและบำรุงรักษา HestiaCP + Adminer

หากคุณยังคงใช้เครื่องมือจัดการฐานข้อมูลโดยไม่มีการป้องกันใดๆ คุณกำลังมอบกุญแจสำคัญให้กับแฮกเกอร์

ทำไมถึงควรเลือก Adminer แทนที่จะใช้... phpMyAdmin?

Adminer ประกอบด้วยไฟล์ PHP เพียงไฟล์เดียวที่มีขนาดไม่ถึง 1MB ทำให้การติดตั้งใช้งานง่าย รวดเร็ว และประหยัดทรัพยากรอย่างมาก

เมื่อเทียบกับโครงสร้างที่ซับซ้อนของ phpMyAdmin แล้ว Adminer เหมาะสำหรับ VPS เว็บไซต์ขนาดเล็ก และโปรเจกต์ส่วนบุคคลมากกว่า

การติดตั้ง Admin ใน HestiaCP: การตั้งค่าความปลอดภัยอัตโนมัติ + การเพิ่มประสิทธิภาพการจัดการฐานข้อมูล

ขั้นตอนการติดตั้ง Administrator ใน HestiaCP

1. ดาวน์โหลดไฟล์ผู้ดูแลระบบ

ไปที่ เว็บไซต์อย่างเป็นทางการของ Adminer ดาวน์โหลดเวอร์ชันล่าสุด adminer.php.

อัปโหลดไฟล์ไปยังไดเร็กทอรีเว็บไซต์ HestiaCP ตัวอย่างเช่น:

/home/username/web/adminer.domain.com/public_html/adminer.php

2. สร้างโดเมนย่อยและเปิดใช้งาน SSL

เพิ่มโดเมนย่อยในแผงควบคุม HestiaCP adminer.domain.comเปิดใช้งาน Let's Encrypt SSL เพื่อให้มั่นใจได้ถึงการส่งข้อมูลที่ปลอดภัย

3. ตั้งค่าการป้องกันด้วยรหัสผ่านของ Nginx

เพิ่มข้อความต่อไปนี้ลงในไฟล์การกำหนดค่า Nginx สำหรับโดเมนย่อย:

location / {
    auth_basic "Restricted Area";
    auth_basic_user_file /etc/nginx/.htpasswd;

    root /home/username/web/adminer.domain.com/public_html;
    index index.php adminer.php;
}

สร้างไฟล์รหัสผ่าน:

sudo apt-get install apache2-utils
sudo htpasswd -c /etc/nginx/.htpasswd adminuser

เมื่อเข้าสู่ระบบในฐานะผู้ดูแลระบบ กล่องโต้ตอบขอรหัสผ่านจะปรากฏขึ้น และคุณจะสามารถเข้าสู่ระบบได้ก็ต่อเมื่อป้อนชื่อผู้ใช้และรหัสผ่านที่ถูกต้องเท่านั้น

อัปเดตไฟล์ผู้ดูแลระบบโดยอัตโนมัติ

เพื่อหลีกเลี่ยงความเสี่ยงด้านความปลอดภัยที่เกี่ยวข้องกับการใช้เวอร์ชันเก่า สามารถอัปเดตอัตโนมัติได้โดยใช้สคริปต์เชลล์และงานที่กำหนดเวลาไว้ใน Cron

ตัวอย่างสคริปต์การอัปเดต

#!/bin/bash
URL="https://www.adminer.org/latest.php"
TARGET="/home/username/web/adminer.domain.com/public_html/adminer.php"

wget -q -O "$TARGET" "$URL"
chown username:username "$TARGET"
chmod 644 "$TARGET"

บันทึกเป็น /usr/local/bin/update-adminer.shและเพิ่มงานที่กำหนดเวลาไว้:

crontab -e
0 3 * * 1 /usr/local/bin/update-adminer.sh

ด้วยวิธีนี้ ไฟล์ผู้ดูแลระบบจะได้รับการอัปเดตโดยอัตโนมัติทุกวันจันทร์ เวลา 3 นาฬิกา

Fail2Ban ป้องกันการโจมตีแบบ Brute-force

การตรวจสอบสิทธิ์แบบ Basic Auth ธรรมดานั้นมีความเสี่ยงต่อการโจมตีแบบ Brute-force ในขณะที่ Fail2Ban สามารถบล็อก IP ที่เป็นอันตรายได้โดยอัตโนมัติ

การกำหนดค่าตัวกรอง

件:/etc/fail2ban/filter.d/nginx-adminer.conf

[Definition]
failregex = ^<HOST> - .* "GET /adminer.php HTTP/.*" 401
ignoreregex =

การกำหนดค่าการจำคุก (ระยะเวลาการแบนแบบเพิ่มทีละขั้น)

件:/etc/fail2ban/jail.local

[nginx-adminer]
enabled  = true
filter   = nginx-adminer
port     = http,https
logpath  = /var/log/nginx/access.log
maxretry = 3
findtime = 600

bantime.increment = true
bantime.rndtime   = 60
bantime.factor    = 2
bantime           = 600

ผล: การแบนครั้งแรกมีระยะเวลา 10 นาที ครั้งที่สอง 20 นาที ครั้งที่สาม 40 นาที และลดลงเรื่อยๆ ผู้ที่โจมตีอย่างต่อเนื่องจะถูกแบนเป็นระยะเวลานานขึ้นเรื่อยๆ

สคริปต์การติดตั้งแบบคลิกเดียวที่สมบูรณ์แบบ

บันทึกเป็น /usr/local/bin/setup-fail2ban-adminer.sh:

#!/bin/bash
FILTER_PATH="/etc/fail2ban/filter.d/nginx-adminer.conf"
JAIL_PATH="/etc/fail2ban/jail.local"

cat > $FILTER_PATH << 'EOF'
[Definition]
failregex = ^<HOST> - .* "GET /adminer.php HTTP/.*" 401
ignoreregex =
EOF

cat >> $JAIL_PATH << 'EOF'

[nginx-adminer]
enabled  = true
filter   = nginx-adminer
port     = http,https
logpath  = /var/log/nginx/access.log
maxretry = 3
findtime = 600

bantime.increment = true
bantime.rndtime   = 60
bantime.factor    = 2
bantime           = 600
EOF

systemctl restart fail2ban
fail2ban-client status nginx-adminer

执行:

sudo chmod +x /usr/local/bin/setup-fail2ban-adminer.sh
sudo /usr/local/bin/setup-fail2ban-adminer.sh

สรุป: การสร้างสมดุลระหว่างความปลอดภัยและประสิทธิภาพ

ผมเชื่อมั่นว่าเครื่องมือจัดการฐานข้อมูลไม่ใช่สิ่งที่คุณจะปล่อยทิ้งไว้บนอินเทอร์เน็ตสาธารณะแล้วใช้งานได้อย่างสบายใจ การออกแบบที่เบาของ Adminer นั้นดึงดูดใจ แต่มาตรการรักษาความปลอดภัยต้องก้าวทัน การป้องกันด้วยรหัสผ่านเป็นด่านแรก การอัปเดตอัตโนมัติให้การป้องกันอย่างต่อเนื่อง และ Fail2Ban นำเสนอมาตรการตอบโต้ที่ชาญฉลาด มีเพียงการผสมผสานองค์ประกอบทั้งสามนี้เข้าด้วยกันเท่านั้นที่จะสร้างสภาพแวดล้อมการจัดการฐานข้อมูลที่มีประสิทธิภาพและปลอดภัยไปพร้อมกัน

ปรมาจารย์ที่แท้จริงไม่ใช่คนที่แค่รู้วิธีสร้างเครื่องมือ แต่เป็นคนที่รู้วิธีปกป้องเครื่องมือเหล่านั้นด้วย

หวัง Chen Weiliang บล็อก ( https://www.chenweiliang.com/ บทความ "การติดตั้ง HestiaCP สำหรับผู้ดูแลระบบ: การตั้งค่าระบบรักษาความปลอดภัยอัตโนมัติ + การเพิ่มประสิทธิภาพการจัดการฐานข้อมูล" ที่แชร์ไว้ที่นี่ อาจเป็นประโยชน์สำหรับคุณ

ยินดีต้อนรับสู่การแบ่งปันลิงค์ของบทความนี้:https://www.chenweiliang.com/cwl-34018.html

หากต้องการปลดล็อคเคล็ดลับที่ซ่อนอยู่เพิ่มเติม ยินดีต้อนรับเข้าร่วมช่อง Telegram ของเรา!

แชร์และกดไลค์ถ้าคุณชอบ! การแชร์และการถูกใจของคุณคือแรงบันดาลใจอย่างต่อเนื่องของเรา!

 

发表评论

ที่อยู่อีเมลของคุณจะไม่ถูกเผยแพร่ 必填项已用 * 标注

เลื่อนไปที่ด้านบน