ในยุคดิจิทัล การรักษาความปลอดภัย Linux Virtual Private Server (VPS) ของคุณ
เป็นสิ่งสำคัญยิ่งในการปกป้องข้อมูลและโครงสร้างพื้นฐานของคุณ นี้
คู่มือที่ครอบคลุมสำรวจวิธีการปกป้อง Linux VPS ของคุณ
ภัยคุกคามทางไซเบอร์
รักษาระบบของคุณ
อัปเดตแล้ว
สิ่งสำคัญที่สุดประการหนึ่งในการรักษาความปลอดภัย Linux VPS ของคุณก็คือ
ตรวจสอบให้แน่ใจว่าระบบของคุณทันสมัย ซอฟต์แวร์ที่ล้าสมัยสามารถทำได้
มีช่องโหว่ที่ผู้ประสงค์ร้ายสามารถใช้ประโยชน์ได้ นี่คือวิธีการ
ทำมัน:
ใช้ตัวจัดการแพ็คเกจ
ลีนุกซ์ส่วนใหญ่มีตัวจัดการแพ็คเกจ เช่น ถ้า
คุณกำลังใช้ระบบที่ใช้ Debian คุณสามารถรันคำสั่งต่อไปนี้ได้
เพื่ออัพเดตและอัพเกรดแพ็คเกจ:
sudo apt update
sudo apt upgrade
หากคุณใช้ระบบ CentOS ให้ใช้ yum:
sudo yum update
ตั้งค่าอัตโนมัติ
อัพเดท
ตั้งค่าการอัปเดตอัตโนมัติโดยเปิดการอัปเกรดแบบอัตโนมัติ
ระบบที่ใช้เดเบียน:
บนระบบที่ใช้ Debian เช่น Ubuntu คุณสามารถใช้
แพ็คเกจอัปเกรดแบบอัตโนมัติเพื่อทำให้กระบวนการอัพเดตเป็นแบบอัตโนมัติ
- ติดตั้งการอัพเกรดแบบอัตโนมัติ:
sudo apt install unattended-upgrades
- กำหนดการตั้งค่าการอัพเดตอัตโนมัติ แก้ไขการกำหนดค่า
ไฟล์:
sudo nano /etc/apt/apt.conf.d/50unattended-upgrades
- เปิดใช้งานการอัปเดตอัตโนมัติสำหรับแพ็คเกจที่เกี่ยวข้องกับความปลอดภัย:
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}-security";
"${distro_id}:${distro_codename}-updates";
"${distro_id}:${distro_codename}-proposed";
"${distro_id}:${distro_codename}-backports";
};
- เปิดใช้งานและเริ่มบริการอัปเกรดแบบอัตโนมัติ:
sudo dpkg-reconfigure -plow unattended-upgrades
คำสั่งนี้จะแจ้งให้คุณยืนยันการเปลี่ยนแปลง เลือก “ใช่” เพื่อ
เปิดใช้งานการอัปเดตอัตโนมัติ
ตั้งค่าการอัปเดตอัตโนมัติโดยเปิด yum-cron
CentOS:
บน CentOS คุณสามารถใช้ yum-cron สำหรับการอัพเดตอัตโนมัติ:
- ติดตั้ง yum-cron:
sudo yum install yum-cron
- เริ่มต้นและเปิดใช้งานบริการ yum-cron:
sudo systemctl enable yum-cron
sudo systemctl start yum-cron
ใช้
รหัสผ่านที่แข็งแกร่งและคีย์ SSH สำหรับการตรวจสอบสิทธิ์ที่ปลอดภัย
การรักษาความปลอดภัย Linux VPS ของคุณเกี่ยวข้องกับการใช้วิธีการรับรองความถูกต้องที่รัดกุม
ไม่ว่าคุณจะเชื่อมต่อจากไคลเอนต์ Linux หรือ Windows ต่อไปนี้คือวิธีการ
ใช้รหัสผ่านที่รัดกุมและคีย์ SSH อย่างมีประสิทธิภาพ:
การใช้ที่แข็งแกร่ง
รหัสผ่าน
เมื่อสร้างบัญชีผู้ใช้บน VPS ของคุณ ตรวจสอบให้แน่ใจว่ารหัสผ่านนั้นถูกต้อง
ซับซ้อน รวมอักษรตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก ตัวเลข และแบบพิเศษ
ตัวอักษร หลีกเลี่ยงรหัสผ่านที่คาดเดาได้ง่าย
การใช้คีย์ SSH
การรับรองความถูกต้อง
สำหรับไคลเอนต์ Linux:
- หากต้องการสร้างคู่คีย์ SSH บนไคลเอ็นต์ Linux ให้ใช้ ssh-keygen
สั่งการ:
ssh-keygen -t rsa -b 2048
ตามค่าเริ่มต้น พับลิกคีย์จะถูกจัดเก็บไว้ใน ~/.ssh/id_rsa.pub
- คัดลอกคีย์สาธารณะของคุณไปยัง VPS:
ssh-copy-id user@your_server_ip
- ปิดใช้งานการเข้าสู่ระบบ SSH ที่ใช้รหัสผ่านบน VPS ในเซิร์ฟเวอร์ SSH
ไฟล์การกำหนดค่า (/etc/ssh/sshd_config):
PasswordAuthentication no
สำหรับไคลเอนต์ Windows:
- บน Windows ให้ใช้ PowerShell สำหรับฟังก์ชันที่คล้ายกัน:
ssh-keygen
- คัดลอกคีย์สาธารณะของคุณไปยัง VPS โดยใช้ PowerShell แทนที่
ที่อยู่ IP-หรือ-FQDN ด้วยเซิร์ฟเวอร์ระยะไกล
ที่อยู่:
type $env:USERPROFILE\.ssh\id_rsa.pub | ssh root@{IP-ADDRESS-OR-FQDN} "cat >> .ssh/authorized_keys"
- ปิดใช้งานการเข้าสู่ระบบ SSH ที่ใช้รหัสผ่านบน VPS ในเซิร์ฟเวอร์ SSH
ไฟล์การกำหนดค่า (/etc/ssh/sshd_config):
PasswordAuthentication no
ติดตั้งไฟร์วอลล์
การรักษาความปลอดภัย Linux VPS ของคุณเกี่ยวข้องกับการตั้งค่าไฟร์วอลล์เพื่อควบคุม
การจราจรขาเข้าและขาออก ต่อไปนี้เป็นวิธีการใช้งานไฟร์วอลล์
เพิ่มความปลอดภัย:
ใช้ ufw (ไฟร์วอลล์ที่ไม่ซับซ้อน) บน Debian/Ubuntu หรือ
ไฟร์วอลล์บน CentOS:
- ติดตั้งเครื่องมือการจัดการไฟร์วอลล์หากยังไม่ได้ติดตั้ง
สำหรับ ufw บน Debian/Ubuntu:
sudo apt install ufw
สำหรับไฟร์วอลล์บน CentOS:
sudo yum install firewalld
- เพิ่มกฎเพื่ออนุญาต SSH ก่อนเปิดใช้งานไฟร์วอลล์เพื่อป้องกัน
ล็อคออก:
สำหรับ ufw บน Debian/Ubuntu:
sudo ufw allow OpenSSH
สำหรับไฟร์วอลล์บน CentOS:
sudo firewall-cmd --permanent --add-service=ssh
- เปิดใช้งานไฟร์วอลล์และตั้งกฎเริ่มต้น:
สำหรับ ufw บน Debian/Ubuntu:
sudo ufw enable
sudo ufw default deny incoming
sudo ufw default allow outgoing
สำหรับไฟร์วอลล์บน CentOS:
sudo systemctl start firewalld
sudo systemctl enable firewalld
- โหลดไฟร์วอลล์ซ้ำเพื่อให้การเปลี่ยนแปลงมีผล
สำหรับ ufw บน Debian/Ubuntu:
sudo ufw reload
สำหรับไฟร์วอลล์บน CentOS:
sudo systemctl reload firewalld
ปิดการใช้งานการเข้าสู่ระบบรูท
การรักษาความปลอดภัย Linux VPS ของคุณเกี่ยวข้องกับการจำกัดการเข้าถึงรูท นี่คือวิธีการ
เพื่อปิดใช้งานการเข้าสู่ระบบรูทเพื่อเพิ่มความปลอดภัย:
- สร้างผู้ใช้ใหม่: เข้าสู่ระบบ VPS ของคุณในฐานะผู้ใช้รูท จากนั้นจึงสร้าง
บัญชีผู้ใช้ใหม่พร้อมสิทธิ์ sudo แทนที่ผู้ใช้ใหม่ด้วยของคุณ
ชื่อผู้ใช้ที่ต้องการ:
adduser newuser
usermod -aG sudo newuser
- สร้างไดเร็กทอรี .ssh, allowance_keys และตั้งค่าการอนุญาต
ผู้ใช้ใหม่:
mkdir -p /home/newuser/.ssh
touch /home/newuser/.ssh/authorized_keys
chmod 600 /home/newuser/.ssh/authorized_keys
chown -R newuser:newuser /home/newuser/.ssh
-
ตรวจสอบให้แน่ใจว่าได้สร้างและคัดลอกรหัสสาธารณะไปยังของคุณ
VPS -
เข้าสู่ระบบในฐานะผู้ใช้ใหม่
-
ตัดการเชื่อมต่อจาก VPS (หากคุณเชื่อมต่อในฐานะรูท) และบันทึก
กลับมาใช้บัญชีผู้ใช้ใหม่ สิ่งนี้ทำให้มั่นใจได้ว่าคุณสามารถดำเนินการได้
งานการดูแลระบบโดยใช้ sudo -
แก้ไขการกำหนดค่า SSH:
เปิดไฟล์การกำหนดค่าเซิร์ฟเวอร์ SSH บน VPS ของคุณ ไฟล์นี้คือ
โดยปกติจะอยู่ที่ /etc/ssh/sshd_config:
sudo nano /etc/ssh/sshd_config
ค้นหาบรรทัดที่อ่าน PermitRootLogin และตั้งค่าเป็น no:
PermitRootLogin no
บันทึกไฟล์และออกจากโปรแกรมแก้ไขข้อความ
- เริ่มบริการ SSH ใหม่:
หลังจากทำการเปลี่ยนแปลงนี้ คุณควรรีสตาร์ทบริการ SSH สำหรับ
การตั้งค่าใหม่ที่จะมีผล:
บนเดเบียน/อูบุนตู:
sudo systemctl restart ssh
บน CentOS:
sudo systemctl restart sshd
ฮาร์เดน SSH
การกำหนดค่า
การรักษาความปลอดภัย Linux VPS ของคุณเกี่ยวข้องกับการทำให้ SSH แข็งแกร่งยิ่งขึ้น
การกำหนดค่าเพื่อเพิ่มความปลอดภัยและรับรองว่ากฎ UFW นั้นเป็นไปตาม
วันที่. ต่อไปนี้เป็นวิธีทำให้การตั้งค่า SSH ของคุณแข็งแกร่งขึ้นและอัปเดต UFW
กฎ:
- อนุญาตพอร์ต SSH ใหม่ใน UFW:
หากคุณใช้ UFW (ไฟร์วอลล์ที่ไม่ซับซ้อน) ให้อนุญาต SSH ใหม่ก่อน
พอร์ตก่อนทำการเปลี่ยนแปลงพอร์ตเริ่มต้น:
# Allow the new SSH port (e.g., 2222)
sudo ufw allow 2222/tcp
- ลบ OpenSSH ออกจากกฎ UFW:
หลังจากเปลี่ยนพอร์ต SSH คุณควรลบ OpenSSH เก่าออก
บริการ (พอร์ตเริ่มต้น 22) จากกฎ UFW เพื่อให้แน่ใจว่าใหม่เท่านั้น
อนุญาตให้ใช้พอร์ต SSH:
# Remove the old OpenSSH service (default port 22)
sudo ufw delete allow OpenSSH
- เปลี่ยนพอร์ต SSH:
ตามค่าเริ่มต้น SSH จะใช้พอร์ต 22 การเปลี่ยนพอร์ตเริ่มต้นสามารถเพิ่ม
การรักษาความปลอดภัยอีกชั้นหนึ่งโดยทำให้บอทอัตโนมัติค้นหาได้ยากขึ้น
เซิร์ฟเวอร์ SSH ของคุณ
เปิดไฟล์การกำหนดค่าเซิร์ฟเวอร์ SSH:
sudo nano /etc/ssh/sshd_config
ค้นหาบรรทัดที่อ่านพอร์ต 22 และเปลี่ยนหมายเลขพอร์ตเป็น a
พอร์ตอื่นที่ไม่ได้ใช้ เช่น 2222:
Port 2222
- เปิดใช้งานการตรวจสอบสิทธิ์คีย์อีกครั้ง:
คุณสามารถกำหนดเวลาสำหรับการตรวจสอบสิทธิ์คีย์ซ้ำเพื่อความปลอดภัยเพิ่มเติมได้
เซสชัน SSH ของคุณ ซึ่งหมายความว่าหากคุณออกจากเซสชัน SSH
โดยที่ไม่ต้องดูแล มันจะหมดอายุโดยอัตโนมัติหลังจากเวลาผ่านไประยะหนึ่ง
เพิ่มหรือแก้ไขบรรทัดต่อไปนี้ในการกำหนดค่าเซิร์ฟเวอร์ SSH
จากนั้นบันทึก:
ClientAliveInterval 300
ClientAliveCountMax 2
- โหลดกฎ UFW และบริการ SSH อีกครั้ง:
sudo ufw reload
sudo systemctl restart ssh
- เมื่อคุณทำการเปลี่ยนแปลงที่จำเป็นแล้ว คุณสามารถสร้าง SSH ใหม่ได้
การเชื่อมต่อโดยใช้คำสั่งต่อไปนี้:
ssh -p <new_port> user@your_server_ip
ใช้ Fail2Ban
การรักษาความปลอดภัย Linux VPS ของคุณเกี่ยวข้องกับการปกป้องจากการเข้าสู่ระบบที่ดุร้าย
ความพยายามและกิจกรรมที่เป็นอันตรายประเภทอื่น ๆ Fail2Ban มีประโยชน์
เครื่องมือเพื่อการนี้ ต่อไปนี้เป็นวิธีการใช้งาน Fail2Ban:
- ติดตั้ง Fail2Ban:
เริ่มต้นด้วยการอัปเดตรายการแพ็คเกจของคุณเพื่อให้แน่ใจว่าคุณมีข้อมูลล่าสุด
แพ็คเกจที่มี:
สำหรับระบบที่ใช้ Debian (เช่น Ubuntu):
sudo apt update
สำหรับ CentOS:
sudo yum update
ติดตั้ง Fail2Ban:
สำหรับระบบที่ใช้ Debian:
sudo apt install fail2ban
สำหรับ CentOS:
sudo yum install fail2ban
- กำหนดค่า Fail2Ban:
ไฟล์การกำหนดค่าหลักของ Fail2Ban อยู่ที่
/etc/fail2ban/jail.conf. คุณสามารถสร้างการแทนที่ได้
ไฟล์ที่ /etc/fail2ban/jail.local เพื่อปรับแต่งการตั้งค่า
โดยไม่ต้องแก้ไขการกำหนดค่าเริ่มต้น เปิดไฟล์นี้:
sudo nano /etc/fail2ban/jail.local
เพิ่มการกำหนดค่าต่อไปนี้เพื่อแบนที่อยู่ IP เป็นเวลา 10 นาที
(600 วินาที) หลังจากพยายามเข้าสู่ระบบล้มเหลวหกครั้ง ปรับพารามิเตอร์เป็น
จำเป็น:
[sshd]
enabled = true
maxretry = 6
findtime = 600
bantime = 600
บันทึกไฟล์และออกจากโปรแกรมแก้ไขข้อความ
- เริ่มต้นและเปิดใช้งาน Fail2Ban:
เริ่ม Fail2Ban และเปิดใช้งานเพื่อเริ่มตอนบู๊ต:
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
- ตรวจสอบสถานะ Fail2Ban:
คุณสามารถตรวจสอบสถานะของ Fail2Ban เพื่อให้แน่ใจว่ามันทำงานได้
ที่คาดหวัง:
sudo fail2ban-client status
คุณควรเห็นว่ากำลังตรวจสอบบริการ SSH
วิธีการสำคัญ 6 ประการที่กล่าวถึงในที่นี้ให้การป้องกันที่แข็งแกร่ง
ต่อจุดอ่อนที่อาจเกิดขึ้น ด้วยการทำให้ระบบของคุณอัปเดตอยู่เสมอ
ใช้การรับรองความถูกต้องที่รัดกุม, การกำหนดค่าไฟร์วอลล์, การทำให้ SSH แข็งแกร่งขึ้น,
และการใช้ Fail2Ban คุณจะเสริมความแข็งแกร่งให้กับ VPS ของคุณและรักษาความสงบของ
จิตใจในโลกที่เชื่อมต่อตลอดเวลา หากคุณมีคำถามใด ๆ อย่าทำ
ลังเลที่จะติดต่อทีมสนับสนุนของเราโดย ส่ง
ตั๋ว.
นอกจากนี้ในการรักษาความปลอดภัย
คู่มือที่เกี่ยวข้อง
ต้องการความช่วยเหลือเรื่องอื่นไหม?
เวลาตอบกลับเฉลี่ยน้อยกว่า 1 ชั่วโมง มนุษย์จริง ไม่ใช่บอท