Hướng Dẫn Thiết Lập FTP & SFTP Trên VPS (Ubuntu, AlmaLinux, CentOS)

huong-dan-thiet-lap-ftp-sftp-tren-vps-ubuntu-almalinux-centos-4

Bạn đang sử dụng VPS và muốn truyền tải dữ liệu an toàn giữa máy tính và máy chủ? Bài viết này từ Zhost sẽ hướng dẫn chi tiết cách thiết lập FTP & SFTP trên các hệ điều hành phổ biến như Ubuntu, AlmaLinux và CentOS.

Việc cấu hình đúng FTP và SFTP giúp bạn quản lý file hiệu quả, đồng thời đảm bảo an toàn thông tin khi truyền tải qua mạng. Đây là bước quan trọng khi xây dựng và vận hành hệ thống website hoặc ứng dụng trên máy chủ riêng.

Cùng Zhost tìm hiểu ngay cách cài đặt và thiết lập FTP/SFTP chuyên nghiệp cho VPS của bạn!

Hướng dẫn thực hiện

1. Cài đặt FTP Server (vsftpd).

1.1. Ubuntu.

Zhost Tutorial
sudo apt update
sudo apt install vsftpd -y

 

1.2. AlmaLinux.

Zhost Tutorial
sudo dnf install vsftpd -y

 

1.3. CentOS 7/8.

Zhost Tutorial
sudo yum install vsftpd -y

 

hoặc CentOS 8+

Zhost Tutorial
sudo dnf install vsftpd -y

 

2. Cấu hình vsftpd.

Lúc này bạn cần mở file /etc/vsftpd.conf:

Zhost Tutorial
nano /etc/vsftpd.conf

Tìm và chỉnh sửa các dòng sau (nếu có dòng bị comment bằng # thì hãy bỏ # đi):

listen=YES

anonymous_enable=NO

local_enable=YES

write_enable=YES

chroot_local_user=YES

allow_writeable_chroot=YES

(Tùy chọn) Đặt thư mục gốc:

local_root=/home/ftpuser/upload

Sau khi chỉnh sửa, lưu lại và thoát (Ctrl+0, Enter, rồi Ctrl+X).

Tiếp đến, bạn cần khởi động lại dịch vụ để áp dụng các thay đổi trên:

Zhost Tutorial
sudo systemctl restart vsftpd
sudo systemctl enable vsftpd

 

3. Tạo user FTP và thư mục.

3.1. Tạo user FTP.

Lúc này, bạn cần tạo một user hệ thống shell đăng nhập hợp lệ và được phép dùng FTP:

Sau khi nhập lệnh sudo passwd ftpuser thì bạn cần nhập mật khẩu cho ftpuser.

Zhost Tutorial
sudo adduser ftpuser
sudo passwd ftpuser

huong-dan-thiet-lap-ftp-sftp-tren-vps-ubuntu-almalinux-centos-1

 

3.2. Tạo và cấp quyền thư mục FTP.

Tiếp đến là bạn cần tạo và cấp quyền cho thư mục của user FTP:

Zhost Tutorial
sudo mkdir -p /home/ftpuser/upload
sudo chown ftpuser:ftpuser /home/ftpuser/upload
sudo chmod 755 /home/ftpuser/upload

 

4. Cấu hình tường lửa (nếu có).

Lưu ý: Nếu VPS của bạn có cấu hình tường lửa thì mới thao tác bước này.

4.1. Ubuntu (ufw).

Zhost Tutorial
sudo ufw allow 20/tcp
sudo ufw allow 21/tcp

 

4.2. AlmaLinux & CentOS (firewalld).

Zhost Tutorial
sudo firewall-cmd --permanent --add-port=21/tcp
sudo firewall-cmd --permanent --add-service=ftp
sudo firewall-cmd --reload

 

5. Thiết lập SFTP (qua SSH).

SFTP chạy sẵn trong dịch vụ SSH nên bạn chỉ cần tạo user và tùy chọn chroot nếu muốn giới hạn.

5.1. Tạo user SFTP.

Cũng như ở phần tạo user FTP thì bạn cũng cần nhập mật khẩu cho user SFTP.

Zhost Tutorial
sudo adduser sftpuser
sudo passwd sftpuser

 

5.2. Tạo và cấp quyền thư mục chroot.

Zhost Tutorial
sudo mkdir -p /home/sftpuser/upload
sudo chown root:root /home/sftpuser
sudo chmod 755 /home/sftpuser
sudo chown sftpuser:sftpuser /home/sftpuser/upload

 

5.3. Chỉnh sửa file sshd_config.

Để sửa file file sshd_config thì bạn cần nhập câu lệnh sau:

sudo nano /etc/ssh/sshd_config

 

Thêm vào cuối file sshd_config đoạn nội dung sau:

Zhost Tutorial
Match User sftpuser
    ChrootDirectory /home/sftpuser
    ForceCommand internal-sftp
    AllowTCPForwarding no
    X11Forwarding no

huong-dan-thiet-lap-ftp-sftp-tren-vps-ubuntu-almalinux-centos-2

Sau khi thêm, lưu lại và thoát (Ctrl+0, Enter, rồi Ctrl+X).

 

Khởi động lại SSH:

Zhost Tutorial
sudo systemctl restart sshd

 

6. Kết nối FTP & SFTP.

  • FTP: port 21, protocol FTP, dùng user ftpuser.
  • SFTP: port 22, protocol SFTP, dùng user sftpuser.
  • Lưu ý: đối với các VPS tại Zhost, để tránh bị scan cổng 22 của service ssh nên Zhost đã đổi cổng ssh mặc định sang 8686. Vậy nên bạn muốn kết nối SFTP các dịch vụ của Zhost thì sẽ SFTP bằng cổng 8686 nha.

Những điều cần lưu ý

  • FTP không mã hóa dữ liệu, dễ dàng bị nghe lén.
  • SFTP dùng SSH, an toàn hơn rất nhiều so với FTP.
  • Cần cấu hình đúng quyền cho thư mục tránh lỗi không upload được.
  • Kiểm tra kỹ lại firewall nếu không kết nối được.

 

Kết luận 

Thiết lập FTP và SFTP không chỉ giúp bạn dễ dàng truy cập và quản lý dữ liệu trên VPS, mà còn là cách hiệu quả để tăng cường bảo mật hệ thống máy chủ. Dù bạn đang dùng Ubuntu, AlmaLinux hay CentOS, các bước cấu hình đều đơn giản nếu thực hiện đúng hướng dẫn. Chúc các bạn thành công.