Hướng dẫn tạo thêm User truy cập SSH và Disable User Root
Thịnh Văn Hạnh
07/04/2026
3050 Lượt xem
Chia sẻ bài viết
Khi quản trị máy chủ Linux, việc cho phép đăng nhập trực tiếp bằng tài khoản root qua SSH có thể tạo ra rủi ro bảo mật rất lớn nếu không kiểm soát chặt chẽ. Đây cũng là lý do nhiều quản trị viên ưu tiên tạo thêm user truy cập SSH riêng và disable user root để giảm nguy cơ bị dò mật khẩu, tấn công brute force hoặc chiếm quyền toàn bộ hệ thống.
Trong bài viết này, BKNS sẽ hướng dẫn bạn cách tạo thêm User truy cập SSH và Disable User Root đúng cách, dễ thực hiện, phù hợp cho cả người mới quản trị VPS, Server lẫn doanh nghiệp cần tăng cường an toàn cho máy chủ.

Tóm Tắt Bài Viết
Hướng dẫn tạo user sudo thay thế trước khi vô hiệu hóa quyền root
Tuyệt đối không được vô hiệu hóa (disable) tài khoản Root khi bạn chưa tạo thành công một User Sudo thay thế và kiểm tra chắc chắn tài khoản này đang hoạt động tốt. Việc vội vàng khóa Root mà không có tài khoản dự phòng có quyền quản trị sẽ khiến bạn hoàn toàn mất quyền điều khiển máy chủ (server) và không thể can thiệp hệ thống được nữa. Hãy thực hiện tuần tự các bước dưới đây!
Tại Sao Phải Tạo User Sudo Thay Thế Trước Khi Disable Root?
Vô hiệu hóa đăng nhập trực tiếp qua tài khoản root (Disable Root Login) là một trong những tiêu chuẩn bảo mật “nằm lòng” của bất kỳ quản trị viên hệ thống (Sysadmin) nào. Thủ thuật này giúp máy chủ của bạn miễn nhiễm với các cuộc tấn công dò mật khẩu (Brute-force Attack) nhắm vào tài khoản mặc định.
Tuy nhiên, root là tài khoản mang đặc quyền cao nhất (Superuser). Nếu bạn đóng cánh cửa này lại mà chưa kịp tạo một “chiếc chìa khóa vạn năng” khác để dự phòng, hệ thống của bạn sẽ trở thành một pháo đài nội bất xuất, ngoại bất nhập – ngay cả với chính bạn.
Chính vì vậy, việc tạo một User Sudo (một tài khoản người dùng thông thường nhưng được cấp đặc quyền quản trị) là bước bắt buộc. Phương pháp này mang lại hai lợi ích cốt lõi:
- Tăng cường bảo mật: Hacker sẽ phải đoán cả tên đăng nhập (do bạn tự đặt) lẫn mật khẩu, thay vì chỉ cần tập trung dò mật khẩu cho tài khoản root mặc định.
- Đảm bảo quyền kiểm soát: Bạn vẫn có thể can thiệp sâu vào hệ thống, cài đặt phần mềm hoặc chỉnh sửa cấu hình thông qua tiền tố sudo mỗi khi cần thiết, nhưng vẫn giữ được sự an toàn tối đa cho máy chủ.

Thực Hành: Các Bước Tạo Và Phân Quyền Sudo Căn Bản
Dưới đây là hướng dẫn chi tiết từng bước. Hãy thực hiện thao tác này khi bạn đang đăng nhập bằng quyền root.
Bước 1: Tạo tài khoản người dùng mới
Đầu tiên, chúng ta cần tạo một tài khoản người dùng cơ bản trên hệ thống. Thay thế ten_nguoi_dung_moi bằng bất kỳ tên nào bạn muốn (ví dụ: john, admin_sys, quantri…).
Bạn copy và dán dòng lệnh sau vào Terminal:
Bash
adduser ten_nguoi_dung_moi
Ngay sau khi gõ lệnh, hệ thống sẽ yêu cầu bạn thiết lập mật khẩu cho user mới. Lưu ý quan trọng: Hãy sử dụng một mật khẩu thật mạnh (bao gồm chữ hoa, chữ thường, số và ký tự đặc biệt). Các thông tin khác như Full Name, Room Number không quá quan trọng, bạn có thể nhấn Enter để bỏ qua và nhấn Y để xác nhận.
Bước 2: Cấp quyền quản trị (Sudo) cho User vừa tạo
Người dùng bạn vừa tạo hiện tại chỉ là một “tân binh” với các quyền hạn vô cùng hạn chế. Để họ có thể thực thi các lệnh hệ thống quan trọng, bạn cần đưa họ vào nhóm quản trị (Sudo group hoặc Wheel group tùy thuộc vào hệ điều hành).
Đối với hệ điều hành Ubuntu / Debian: Sử dụng lệnh sau để thêm người dùng vào nhóm sudo:
Bash
usermod -aG sudo ten_nguoi_dung_moi
Đối với hệ điều hành CentOS / AlmaLinux / RHEL: Cấu trúc nhóm quản trị trên các hệ điều hành này được gọi là wheel. Bạn sử dụng câu lệnh sau:
Bash
usermod -aG wheel ten_nguoi_dung_moi
(Tham số -aG có nghĩa là “append to Group” – thêm người dùng vào một nhóm cụ thể mà không làm mất các nhóm cũ của họ).
Bước 3: Bài Test Xác Nhận Quyền (Bắt buộc thực hiện)
Đây là ranh giới giữa việc cấu hình thành công và việc bạn phải cài lại toàn bộ server. Tuyệt đối không được đóng cửa sổ Terminal/PuTTY hiện tại (cửa sổ đang đăng nhập root) cho đến khi bạn hoàn thành bài test này.
- Mở một phiên kết nối mới: Hãy mở một Tab Terminal mới hoặc mở thêm một cửa sổ PuTTY mới.
- Đăng nhập bằng User mới: Sử dụng tên đăng nhập ten_nguoi_dung_moi và mật khẩu bạn vừa tạo ở Bước 1.
- Chạy thử lệnh quản trị: Gõ một trong các lệnh sau để hệ thống gọi quyền root:
Bash
sudo su
Hoặc:
Bash
sudo apt update
Ngay lúc này, hệ thống sẽ yêu cầu bạn nhập lại mật khẩu của user mới (Lưu ý: Mật khẩu lúc gõ sẽ không hiển thị trên màn hình vì lý do bảo mật, bạn cứ gõ đúng và nhấn Enter).
Nếu lệnh chạy thành công, hệ thống chuyển sang dấu nhắc lệnh của root (với lệnh sudo su) hoặc tiến hành tải các gói cập nhật (với lệnh sudo apt update) mà không báo lỗi Permission denied, xin chúc mừng! Bạn đã cấu hình User Sudo thành công.
Hướng dẫn từng bước tạo SSH và Disable User Root
Sau khi đã chắc chắn nắm trong tay một tài khoản Sudo dự phòng hoạt động trơn tru, đây là thời điểm “chín muồi” để bạn khóa chặt cánh cửa nguy hiểm nhất trên server: Đăng nhập trực tiếp bằng Root. Quá trình này được thực hiện thông qua việc chỉnh sửa tệp cấu hình của dịch vụ SSH. Dưới đây là 3 bước thao tác chuẩn xác và an toàn nhất.
Bước 1: Mở tệp cấu hình SSH cốt lõi
Mọi quy tắc kết nối từ xa đến máy chủ của bạn đều được quản lý bởi một tệp hệ thống duy nhất mang tên sshd_config. Để can thiệp vào tệp này, chúng ta sẽ sử dụng trình soạn thảo văn bản tích hợp sẵn trong Linux như Nano (được khuyên dùng cho người mới vì giao diện trực quan) hoặc Vim.
Từ giao diện Terminal (đang ở quyền Sudo hoặc Root), hãy nhập câu lệnh sau để mở tệp:
Bash
sudo nano /etc/ssh/sshd_config
Mẹo chuyên gia: Hãy chắc chắn bạn gõ đúng sshd_config (có chữ “d” ở giữa), để tránh nhầm lẫn với tệp ssh_config (vốn chỉ dành cho SSH Client).

Bước 2: Tìm và thay đổi tham số PermitRootLogin
Khi tệp cấu hình được mở ra, bạn sẽ thấy một danh sách dài các thông số thiết lập hệ thống. Mục tiêu của chúng ta là tìm đến dòng chứa từ khóa quản lý đặc quyền đăng nhập của Root.
- Cách tìm kiếm nhanh trong Nano: Hãy nhấn tổ hợp phím Ctrl + W, gõ chữ PermitRootLogin và nhấn Enter. Con trỏ chuột sẽ lập tức đưa bạn đến đúng vị trí cần tìm.
Tại đây, tùy thuộc vào hệ điều hành, bạn có thể bắt gặp một trong các trạng thái mặc định sau:
- #PermitRootLogin yes (Dấu # ở đầu dòng có nghĩa là lệnh đang bị “comment” vô hiệu hóa, hệ thống ngầm định cho phép Root đăng nhập).
- PermitRootLogin prohibit-password (Chỉ cho phép Root đăng nhập thông qua SSH Key, nghiêm cấm dùng mật khẩu).
Hành động thiết quyết: Bạn dùng phím mũi tên di chuyển con trỏ, xóa bỏ dấu # (nếu có) và thay đổi toàn bộ giá trị phía sau thành no. Cú pháp chuẩn xác cuối cùng của bạn bắt buộc phải trông như thế này:
Bash
PermitRootLogin no
Lưu ý: Chỉ một dòng cấu hình ngắn gọn này thôi đã đủ để server phát tín hiệu từ chối thẳng thừng mọi nỗ lực rò rỉ mật khẩu (Brute-force) nhắm thẳng vào tài khoản root từ các botnet độc hại ngoài Internet.

Bước 3: Lưu cấu hình và khởi động lại dịch vụ SSH
Những thay đổi trong tệp văn bản sẽ hoàn toàn vô nghĩa nếu bạn không lưu lại và yêu cầu hệ thống nạp lại cấu hình mới.
Thao tác 1: Lưu tệp an toàn trong Nano
Để lưu lại các chỉnh sửa vừa thực hiện, bạn hãy thực hiện tuần tự 3 thao tác phím tắt sau:
- Nhấn Ctrl + O (chữ O in hoa – thao tác này ra lệnh ghi đè dữ liệu lên tệp).
- Nhấn Enter (để xác nhận lưu đúng vào tên tệp sshd_config).
- Nhấn Ctrl + X (để thoát khỏi giao diện trình soạn thảo Nano và trở về màn hình dòng lệnh Terminal).
Thao tác 2: Khởi động lại dịch vụ (Restart SSH)
Cuối cùng, hãy gõ lệnh sau để áp dụng ngay lập tức “rào chắn bảo mật” mà bạn vừa thiết lập:
Đối với hệ điều hành CentOS / AlmaLinux / RHEL hoặc phần lớn các bản phân phối hiện đại:
Bash
sudo systemctl restart sshd
Đối với hệ điều hành Ubuntu / Debian (một số phiên bản):
Bash
sudo systemctl restart ssh
Chốt chặn an toàn cuối cùng: Sau khi nhấn Enter chạy lệnh restart, hệ thống sẽ không trả về thông báo nào (điều này là bình thường). Lúc này, tuyệt đối đừng vội tắt cửa sổ Terminal hiện tại. Hãy mở một tab SSH mới và thử đăng nhập lại bằng tài khoản root.
Nếu hệ thống thẳng thừng báo “Access denied” (Từ chối truy cập) hoặc hỏi mật khẩu nhưng không cho vào, và bạn vẫn có thể đăng nhập bình thường thông qua tài khoản Sudo mới, xin chúc mừng! Máy chủ của bạn vừa được nâng cấp lên một tiêu chuẩn bảo mật vững chắc hơn rất nhiều.
Câu Hỏi Thường Gặp (FAQ)
Dưới đây là tổng hợp những thắc mắc phổ biến nhất của người dùng khi thực hiện thao tác khóa quyền đăng nhập Root. Các câu trả lời được biên soạn trực diện, chi tiết nhằm giúp bạn hiểu rõ bản chất vấn đề và có phương án xử lý sự cố kịp thời.
Vô hiệu hóa (Disable) Root SSH có làm sập website đang chạy không?
Câu trả lời ngắn gọn là: Hoàn toàn KHÔNG. Việc bạn khóa quyền đăng nhập root qua SSH sẽ không gây ra bất kỳ gián đoạn nào cho các website, ứng dụng hay cơ sở dữ liệu đang vận hành trên máy chủ.
Để hiểu rõ hơn, bạn cần nắm được nguyên lý hoạt động độc lập của các cổng giao tiếp (Port) trên server:
- Dịch vụ SSH (Quản trị từ xa): Hoạt động trên Port 22 (hoặc một cổng tùy chỉnh do bạn đặt). Việc thay đổi tham số PermitRootLogin no chỉ giới hạn đối tượng được phép đi qua “cánh cửa” Port 22 này, cụ thể là từ chối tài khoản root.
- Dịch vụ Web Server (Nginx, Apache, LiteSpeed…): Hoạt động hoàn toàn độc lập trên Port 80 (HTTP) và Port 443 (HTTPS) để phục vụ người dùng truy cập website.
Do đó, khi bạn lưu cấu hình và khởi động lại dịch vụ SSH (restart sshd), hệ thống chỉ làm mới lại luồng kết nối quản trị. Người dùng truy cập vào website của bạn qua trình duyệt vẫn được phục vụ bình thường mà không hề hay biết bạn vừa thực hiện thay đổi gì trên server.
Quên tạo User Sudo mà đã lỡ Disable Root và thoát SSH thì phải làm sao?
Đây là “cơn ác mộng” kinh điển của rất nhiều quản trị viên mới khi thao tác trên Linux: Bị khóa ngược ở bên ngoài chính máy chủ của mình (Locked out of server). Nếu bạn lỡ đóng Terminal khi chưa có User Sudo dự phòng, mọi kết nối SSH mới bằng tài khoản root đều sẽ bị từ chối.
Tuy nhiên, dữ liệu của bạn vẫn an toàn và hoàn toàn có thể khôi phục lại quyền truy cập. Vì bạn chỉ tự khóa mình ở cổng SSH mạng, bạn vẫn có thể “đi cửa sau” thông qua các công cụ can thiệp trực tiếp từ phần cứng vật lý ảo của nhà cung cấp VPS/Cloud Server. Dưới đây là các bước cứu hộ:
Cách 1: Sử dụng tính năng VNC / Web Console (Khuyên dùng)
Hầu hết các nhà cung cấp hạ tầng đám mây lớn hiện nay đều tích hợp sẵn một màn hình điều khiển mô phỏng trực tiếp màn hình máy chủ vật lý, bỏ qua giao thức SSH.
- Đăng nhập vào trang quản trị (Dashboard) của nhà cung cấp dịch vụ (ví dụ: AWS, DigitalOcean, Vultr, Linode, Google Cloud…).
- Tìm đến VPS của bạn và nhấp vào tính năng Console, VNC, Web Console hoặc Glish/Lish.
- Một cửa sổ dòng lệnh màu đen sẽ hiện lên trên trình duyệt. Tại đây, bạn vẫn có thể đăng nhập bằng tài khoản root và mật khẩu root như bình thường (vì đây là Local Login, không phải SSH Login).
- Sau khi vào được hệ thống, hãy dùng lệnh nano /etc/ssh/sshd_config để sửa lại PermitRootLogin yes, chạy lệnh systemctl restart sshd.
- Lúc này, bạn đã mở lại được cửa SSH. Hãy quay lại phần mềm PuTTY/Terminal để tạo User Sudo cẩn thận rồi mới lặp lại quy trình khóa Root.
Cách 2: Sử dụng Rescue Mode / Recovery OS
Nếu tính năng Console bị lỗi hoặc bạn quên cả mật khẩu root, bạn sẽ cần dùng đến “chế độ cứu hộ” chuyên sâu hơn.
- Kích hoạt tính năng Rescue Mode (hoặc Boot from Recovery ISO) trên trang quản trị của nhà cung cấp. Server của bạn sẽ được khởi động lại vào một hệ điều hành tạm thời.
- Từ hệ điều hành tạm này, bạn tiến hành Mount (Gắn) ổ cứng chứa hệ điều hành cũ của bạn vào một thư mục (ví dụ: /mnt).
- Dùng lệnh chroot /mnt để lấy lại quyền điều khiển môi trường cũ.
- Mở tệp cấu hình SSH bằng nano /etc/ssh/sshd_config và khôi phục thông số PermitRootLogin về yes.
- Thoát chroot, Unmount ổ cứng và tắt Rescue Mode để server khởi động lại bình thường.
Trong quá trình quản trị VPS hoặc server Linux, việc chỉ sử dụng tài khoản root để đăng nhập SSH tiềm ẩn khá nhiều rủi ro về bảo mật. Nếu bị lộ mật khẩu hoặc bị tấn công brute force, toàn bộ hệ thống có thể bị kiểm soát. Vì vậy, giải pháp an toàn hơn là tạo thêm user truy cập SSH với quyền phù hợp và disable user root để hạn chế nguy cơ xâm nhập trái phép. Trong bài viết này BKNS sẽ hướng dẫn bạn cách tạo thêm User truy cập SSH và Disable User Root từng bước, dễ hiểu, dễ làm, giúp tăng cường bảo mật máy chủ ngay từ cấu hình cơ bản.




































