Mục lục

Server Hardening: Production Standards

Các bước thiết lập VPS/Dedicated Server an toàn để sẵn sàng triển khai các ứng dụng mã nguồn mở.

Trước khi triển khai bất kỳ hệ thống nào như Supabase, server của bạn cần được "gia cố" (hardening) để chống lại các cuộc tấn công phổ biến trên không gian mạng.

1. Truy cập SSH

Bad Practice: Cho phép đăng nhập bằng Password

Để port 22 mở công khai và cho phép đăng nhập bằng mật khẩu (dễ bị tấn công Brute-force).

Good Practice: Key-based Auth Only

Vô hiệu hóa đăng nhập mật khẩu và chỉ cho phép dùng SSH Key.

bash:
# Trong file /etc/ssh/sshd_config
PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin no # Không cho phép root trực tiếp

2. Quản lý Firewall

Bad Practice: Tắt Firewall hoặc mở quá đà

Nhiều người tắt ufw hoặc iptables để "dễ cấu hình", vô tình để lộ các dịch vụ nội bộ (Redis, DB) ra ngoài.

Good Practice: Default Deny Policy

Luôn chặn tất cả và chỉ mở những cổng cần thiết.

bash:
ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp    # SSH
ufw allow 80/tcp    # HTTP
ufw allow 443/tcp   # HTTPS
ufw enable

3. Cập nhật và Giám sát

Good Practice: Unattended Upgrades

Cấu hình server tự động cài đặt các bản vá bảo mật quan trọng mà không cần can thiệp thủ công.

Good Practice: Fail2Ban

Sử dụng fail2ban để tự động chặn các địa chỉ IP có hành vi quét cổng hoặc thử đăng nhập sai nhiều lần.


4. Resource Isolation với Docker

Triển khai mọi thứ bên trong Docker giúp:

  • Giới hạn tài nguyên (CPU/RAM) cho từng service.
  • Ngăn chặn một service bị hack có thể truy cập toàn bộ file system của server (Sandbox).

Tổng kết "Failure to Feature"

Một server không được bảo vệ giống như một ngôi nhà không khóa cửa. Bằng cách thực hiện Hardening ngay từ đầu, bạn xây dựng một nền tảng vững chắc để yên tâm triển khai các dịch vụ phức tạp như Supabase hay CI/CD Runners.

Quảng cáo
mdhorizontal