ขั้นตอนแรกหลัง Deploy VPS ใหม่บน Linux — สิ่งที่ต้องทำก่อนใช้งานจริง

เมื่อคุณได้รับ Cloud VPS ใหม่ สิ่งแรกที่หลายคนทำคือเริ่ม Deploy แอปพลิเคชันทันที แต่นั่นเป็นสิ่งที่ไม่ควรทำ เพราะ VPS ที่เพิ่ง Deploy ใหม่ยังไม่ได้รับการตั้งค่าความปลอดภัยและประสิทธิภาพที่เหมาะสม บทความนี้จะพาคุณผ่านขั้นตอนสำคัญที่ต้องทำก่อนใช้งาน VPS จริง เพื่อให้ระบบมีความปลอดภัย เสถียร และพร้อมใช้งานในระยะยาว

สิ่งที่ต้องเตรียมก่อนเริ่ม

  • IP Address ของ VPS (ได้รับจาก Email ยืนยัน)
  • Username และ Password ของ root (หรือ SSH Key)
  • โปรแกรม SSH Client เช่น Terminal (macOS/Linux) หรือ PuTTY (Windows)

ขั้นตอนที่ 1 — เชื่อมต่อ VPS ผ่าน SSH

เปิด Terminal แล้ว SSH เข้า VPS ด้วย root:

ssh root@YOUR_VPS_IP

ครั้งแรกจะมีคำถามให้ยืนยัน fingerprint พิมพ์ yes แล้วกด Enter จากนั้นใส่ Password ที่ได้รับมา

ขั้นตอนที่ 2 — อัปเดต Package ทั้งหมด

สิ่งแรกที่ต้องทำคืออัปเดต Package ให้เป็นเวอร์ชันล่าสุด เพื่อปิดช่องโหว่ด้านความปลอดภัยที่อาจมีอยู่ใน Package เก่า

apt update && apt upgrade -y

คำสั่งนี้จะใช้เวลาสักครู่ รอจนเสร็จสมบูรณ์ก่อนไปขั้นตอนถัดไป หากมีข้อความถามให้กด Enter เพื่อยืนยัน

ขั้นตอนที่ 3 — ตั้งค่า Hostname และ Timezone

ตั้งชื่อ Server ให้จำได้ง่าย และตั้ง Timezone ให้ตรงกับประเทศไทย เพื่อให้ Log ต่างๆ แสดงเวลาถูกต้อง

# ตั้ง Hostname
hostnamectl set-hostname myserver

# ตั้ง Timezone เป็นกรุงเทพ
timedatectl set-timezone Asia/Bangkok

# ตรวจสอบ
timedatectl status

ขั้นตอนที่ 4 — สร้าง User ใหม่ และอย่าใช้ root

การใช้ root โดยตรงทุกครั้งเป็นความเสี่ยงด้านความปลอดภัย เพราะ root มีสิทธิ์ทำทุกอย่างบนระบบ ควรสร้าง User ปกติที่ใช้ sudo แทน

# สร้าง user ใหม่ (เปลี่ยน somchai เป็นชื่อที่ต้องการ)
adduser somchai

# เพิ่ม user เข้ากลุ่ม sudo
usermod -aG sudo somchai

# ทดสอบ sudo
su - somchai
sudo whoami   # ควรแสดง root

ขั้นตอนที่ 5 — ตั้งค่า SSH Key (แนะนำอย่างยิ่ง)

SSH Key ปลอดภัยกว่า Password มาก เพราะไม่มีการส่ง Password ผ่านเครือข่าย ทำขั้นตอนนี้บนเครื่องของคุณ (ไม่ใช่บน VPS):

# บนเครื่องของคุณ — สร้าง SSH Key pair
ssh-keygen -t ed25519 -C "[email protected]"
# กด Enter ทุกคำถาม (หรือใส่ passphrase เพื่อความปลอดภัยเพิ่ม)

# คัดลอก Public Key ไปยัง VPS
ssh-copy-id somchai@YOUR_VPS_IP

# ทดสอบ login ด้วย key
ssh somchai@YOUR_VPS_IP

ขั้นตอนที่ 6 — ปรับค่า SSH ให้ปลอดภัยขึ้น

แก้ไขไฟล์ SSH config เพื่อปิด root login และเปลี่ยน Port (ไม่บังคับแต่แนะนำ):

sudo nano /etc/ssh/sshd_config

ค้นหาและแก้ไขค่าต่อไปนี้:

# ปิด root login
PermitRootLogin no

# ปิด Password Authentication (หลังตั้ง SSH Key แล้ว)
PasswordAuthentication no

# เปลี่ยน Port (ตัวเลือก — เลือกระหว่าง 1024-65535)
Port 2222

บันทึกไฟล์แล้ว Restart SSH:

sudo systemctl restart sshd

สำคัญ: อย่าปิด Terminal เดิมจนกว่าจะทดสอบ login ด้วย session ใหม่สำเร็จก่อน

ขั้นตอนที่ 7 — ตั้งค่า Firewall (UFW)

UFW (Uncomplicated Firewall) เป็น Firewall ที่ใช้งานง่ายบน Ubuntu/Debian ตั้งค่าให้อนุญาตเฉพาะ Port ที่จำเป็น:

# ติดตั้ง UFW (มักติดตั้งมาแล้ว)
apt install ufw -y

# ตั้ง Default rules
ufw default deny incoming
ufw default allow outgoing

# อนุญาต SSH (เปลี่ยน 22 เป็น Port ที่ตั้งไว้ถ้าเปลี่ยน)
ufw allow 22/tcp

# อนุญาต HTTP และ HTTPS
ufw allow 80/tcp
ufw allow 443/tcp

# เปิดใช้งาน UFW
ufw enable

# ตรวจสอบสถานะ
ufw status verbose

ขั้นตอนที่ 8 — ติดตั้ง Fail2ban

Fail2ban ช่วยป้องกันการโจมตีแบบ Brute Force โดยการ Block IP ที่พยายาม Login ผิดหลายครั้ง:

# ติดตั้ง Fail2ban
apt install fail2ban -y

# เปิดใช้งานและ Start
systemctl enable fail2ban
systemctl start fail2ban

# ตรวจสอบสถานะ
fail2ban-client status

ขั้นตอนที่ 9 — ตั้งค่า Automatic Security Updates

ตั้งให้ระบบอัปเดต Security Patch โดยอัตโนมัติ เพื่อไม่ต้องคอยอัปเดตเองทุกครั้ง:

apt install unattended-upgrades -y
dpkg-reconfigure --priority=low unattended-upgrades

เลือก Yes เมื่อถามว่าต้องการ Enable automatic updates

ขั้นตอนที่ 10 — ตรวจสอบ Swap Memory

ตรวจสอบว่า VPS มี Swap Memory หรือไม่ โดยเฉพาะ VPS RAM น้อย (1-2 GB) ควรมี Swap เพื่อรองรับเมื่อ RAM เต็ม:

# ตรวจสอบ Swap ปัจจุบัน
free -h
swapon --show

# ถ้าไม่มี Swap ให้สร้าง 2GB Swap file
fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile

# ทำให้ Swap อยู่หลัง Reboot
echo '/swapfile none swap sw 0 0' >> /etc/fstab

ขั้นตอนที่ 11 — ติดตั้ง Package พื้นฐานที่จำเป็น

ติดตั้ง Tools ที่ใช้บ่อยในการจัดการ VPS:

apt install -y \
  curl \
  wget \
  git \
  htop \
  net-tools \
  unzip \
  vim \
  tmux \
  ntp

ตรวจสอบความเรียบร้อยทั้งหมด

หลังทำทุกขั้นตอนแล้ว ลองตรวจสอบสถานะระบบโดยรวม:

# ดูข้อมูล System
hostnamectl

# ดูการใช้ Disk
df -h

# ดูการใช้ RAM และ Swap
free -h

# ดูสถานะ Firewall
ufw status

# ดูสถานะ Fail2ban
fail2ban-client status

# ดูสถานะ Services หลัก
systemctl status sshd ufw fail2ban

Checklist สรุป

ขั้นตอน คำสั่งหลัก สำคัญมาก
อัปเดต Package apt update && apt upgrade -y
ตั้ง Hostname & Timezone hostnamectl, timedatectl
สร้าง User ใหม่ adduser, usermod -aG sudo
ตั้งค่า SSH Key ssh-keygen, ssh-copy-id
ปิด Root Login แก้ไข sshd_config
ตั้งค่า UFW Firewall ufw enable
ติดตั้ง Fail2ban apt install fail2ban
ตั้ง Auto Updates unattended-upgrades แนะนำ
สร้าง Swap fallocate, mkswap แนะนำ
ติดตั้ง Tools พื้นฐาน apt install curl wget git htop แนะนำ

สรุป

การทำขั้นตอนเหล่านี้ตั้งแต่ต้นจะช่วยให้ VPS ของคุณมีความปลอดภัยและพร้อมใช้งานในระยะยาว ใช้เวลาไม่เกิน 15-20 นาที แต่ช่วยป้องกันปัญหาที่อาจเกิดขึ้นในภายหลังได้มาก หลังจากนี้คุณสามารถเริ่ม Install Service ต่างๆ เช่น Nginx, MySQL, PHP หรือ Docker ได้อย่างมั่นใจบน VPS ที่ปลอดภัยแล้ว