Sau khi nhận VPS, hãy ưu tiên thiết lập quyền truy cập, cập nhật phần mềm và chuẩn bị khả năng khôi phục trước khi đưa ứng dụng lên máy. Danh sách dưới đây dành cho VPS Ubuntu dùng OpenSSH và systemd; các lệnh là ví dụ để người đọc thực hiện theo điều kiện thực tế. Tài liệu Ubuntu cảnh báo sửa sai cấu hình SSH có thể khiến quản trị viên mất đường truy cập. Vì vậy, hãy giữ phiên đang mở và chuẩn bị phương án cứu hộ do nhà cung cấp hướng dẫn trước khi thay đổi.

Xác nhận máy và thiết lập quyền quản trị

1. Kiểm tra thông tin nhận diện máy. Chạy hostnamectl status để xem hostname và thông tin hệ thống liên quan, rồi đối chiếu với máy vừa được bàn giao. Theo tài liệu systemd và Ubuntu Manpages, hostnamectl cho phép truy vấn cũng như thay đổi hostname. Ở bước đầu, chỉ nên đọc thông tin và ghi lại kết quả; chưa cần đổi tên máy. Nếu đang quản lý nhiều VPS, nên lưu tên nhận diện cùng thông tin bàn giao trong hồ sơ riêng để có căn cứ đối chiếu trước mỗi lần thao tác.

2. Tạo tài khoản quản trị riêng. Ubuntu dùng sudo để người được cấp quyền thực hiện tác vụ quản trị. Ví dụ, nếu tài khoản quantri chưa tồn tại, chạy lần lượt sudo adduser quantri và sudo adduser quantri sudo. Tên quantri là tên minh họa, có thể thay theo quy ước của bạn. Sau đó đăng nhập bằng tài khoản mới và thử sudo -v. Chỉ chuyển sang các bước hạn chế root khi tài khoản mới dùng được sudo; nếu phép thử thất bại, giữ nguyên phiên quản trị ban đầu để kiểm tra lại quyền.

3. Thiết lập khóa SSH từ máy cá nhân. Ubuntu hướng dẫn tạo cặp khóa bằng ssh-keygen -t ed25519, sau đó chuyển khóa công khai bằng ssh-copy-id quantri@DIA_CHI_VPS; hãy thay địa chỉ mẫu bằng địa chỉ thật. Khi tạo khóa, nên đặt cụm mật khẩu bảo vệ và tránh ghi đè khóa đang dùng. Chỉ khóa công khai được đưa lên VPS, còn khóa riêng giữ trên máy cá nhân. Mở một cửa sổ terminal khác để thử đăng nhập bằng khóa trước khi thay đổi cơ chế xác thực trên máy chủ.

4. Hạn chế phương thức đăng nhập SSH sau khi thử khóa thành công. Với mục tiêu chỉ dùng khóa và không có xác thực tương tác như OTP, các thiết lập cần xem xét là PermitRootLogin no, PasswordAuthentication no và KbdInteractiveAuthentication no. OpenSSH quy định riêng từng tùy chọn này; tắt mật khẩu không đồng nghĩa đã tắt mọi cơ chế tương tác. Không áp dụng nguyên mẫu nếu máy đang dùng xác thực đa yếu tố. Kiểm tra cấu hình thực tế của VPS trước khi sửa, thay vì giả định mọi ảnh hệ điều hành có thiết lập giống nhau.

Trước bước 4, lưu bản sao cấu hình gốc và những tệp cấu hình bổ sung sẽ sửa. Sau khi sửa, chạy sudo sshd -t để kiểm tra lỗi; dùng sudo sshd -T để xem cấu hình có hiệu lực, đồng thời chú ý các điều kiện Match nếu có. Chỉ áp dụng thay đổi khi kiểm tra hợp lệ, rồi thử đăng nhập mới trong lúc phiên cũ vẫn mở. Nếu thất bại, khôi phục những tệp vừa thay đổi từ bản sao, kiểm tra lại và áp dụng lại cấu hình. Đây là bước kiểm tra và hoàn tác, không phải lời bảo đảm rằng kết nối sẽ luôn được giữ.

Minh họa Xác nhận máy và thiết lập quyền quản trị
Minh họa mục 1: Xác nhận máy và thiết lập quyền quản trị. Không phải ảnh chụp hệ thống thực tế.

Cập nhật phần mềm và kiểm soát dịch vụ

5. Cập nhật danh mục gói và phần mềm đã cài. Theo hướng dẫn quản lý gói của Ubuntu, thực hiện sudo apt update trước, sau đó sudo apt upgrade. Lệnh đầu cập nhật thông tin gói; lệnh sau nâng cấp các gói đã cài theo cơ chế của APT. Đọc danh sách thay đổi trước khi chấp nhận, không thêm tùy chọn tự động xác nhận chỉ để tiết kiệm thao tác. Với máy đã có dữ liệu, nên hoàn tất phương án sao lưu trước. Sau cập nhật, kiểm tra lại dịch vụ cần dùng; đừng mặc định nâng cấp gói đồng nghĩa ứng dụng đã hoạt động bình thường.

6. Kiểm tra cập nhật tự động. Ubuntu có cơ chế unattended-upgrades, nhưng cần đọc cấu hình trên chính VPS thay vì mặc định mọi nguồn phần mềm đều được cập nhật. Nếu công cụ đã được cài, chạy sudo unattended-upgrade -v --dry-run để mô phỏng và xem các nguồn được phép, gói được chọn cùng thông báo lỗi. Tài liệu Ubuntu và trang hướng dẫn của công cụ xác nhận chế độ dry-run không thực hiện nâng cấp thật. Nên ghi lại chính sách đã chọn, gồm cách xử lý khởi động lại; nếu sửa cấu hình gây kết quả không mong muốn, khôi phục bản sao rồi mô phỏng lại.

7. Bật tường lửa sau khi cho phép đúng cổng SSH. Với VPS dùng UFW và SSH thực sự nghe tại cổng 22/TCP, ví dụ tối thiểu là sudo ufw allow 22/tcp, tiếp theo sudo ufw enable, rồi sudo ufw status numbered. Nếu SSH dùng cổng khác, phải thay số cổng trước khi bật. Ubuntu cũng hỗ trợ giới hạn nguồn truy cập theo địa chỉ hoặc mạng. Hãy thử một kết nối mới sau thay đổi. Khi cấu hình sai, dùng phiên còn truy cập được hoặc đường cứu hộ để sửa quy tắc; sudo ufw disable chỉ là biện pháp tạm thời trong lúc khôi phục.

8. Rà soát dịch vụ chạy nền. Dùng systemctl list-units --type=service --state=running để lập danh sách, sau đó xác định vai trò từng dịch vụ trước khi quyết định giữ hay tắt. Tài liệu systemd phân biệt stop với disable: dừng dịch vụ hiện tại và bỏ cơ chế kích hoạt lúc khởi động là hai hành động khác nhau. Không tắt hàng loạt những tên bạn chưa hiểu, đặc biệt dịch vụ truy cập và mạng. Nếu cần thử dừng một dịch vụ đã xác định, ghi lại trạng thái ban đầu; khi phát hiện ảnh hưởng ngoài dự kiến, khởi động lại và phục hồi chính sách kích hoạt cũ.

Minh họa Cập nhật phần mềm và kiểm soát dịch vụ
Minh họa mục 2: Cập nhật phần mềm và kiểm soát dịch vụ. Không phải ảnh chụp hệ thống thực tế.

Chuẩn bị sao lưu và đọc nhật ký

9. Tạo bản sao lưu và thử khôi phục vào thư mục riêng. Ubuntu khuyến nghị kiểm tra kho lưu bằng cách khôi phục một tệp; tài liệu restic cũng hướng dẫn chọn thư mục đích khi phục hồi. Hãy bắt đầu với một tệp mẫu, đối chiếu nội dung và quyền truy cập trước khi dựa vào quy trình đó cho dữ liệu thật. Không chọn thư mục dữ liệu đang phục vụ ứng dụng làm nơi thử. Cả tài liệu Ubuntu và restic đều lưu ý khả năng ghi đè tệp khi khôi phục; cần kiểm tra đích đến và giữ bản sao hiện trạng trước khi phục hồi tại chỗ.

10. Tập đọc nhật ký và ghi lại thay đổi. Trên hệ thống dùng systemd, journalctl cho phép lọc nhật ký theo dịch vụ và thời gian. Ví dụ với dịch vụ có tên ssh.service, chạy sudo journalctl -u ssh.service --since "1 hour ago" --no-pager để xem bản ghi trong giờ gần nhất. Đối chiếu thời điểm đăng nhập thử hoặc áp dụng cấu hình với nhật ký tương ứng; một thông báo lỗi cần được đọc trong bối cảnh thao tác cụ thể. Nên lưu hồ sơ gồm thay đổi đã làm, kết quả kiểm tra và cách hoàn tác, tránh đưa mật khẩu hay khóa riêng vào hồ sơ chia sẻ.

Minh họa Chuẩn bị sao lưu và đọc nhật ký
Minh họa mục 3: Chuẩn bị sao lưu và đọc nhật ký. Không phải ảnh chụp hệ thống thực tế.

Nguồn tham khảo

manpages.ubuntu.com (9 tài liệu)
freedesktop.org (3 tài liệu)
ubuntu.com (6 tài liệu)
man.openbsd.org (2 tài liệu)
restic.readthedocs.io (1 tài liệu)