Hướng dẫn cấu hình FTP trên CentOS 7 bằng VSFTPD

Cấu hình FTP trên CentOS 7 bằng VSFTPD

03/04/2021

FTP là một giao thức truyền file, đã trở thành một phương pháp tiêu chuẩn trong nhiều thập kỷ. Nếu bạn muốn cài đặt một server FTP, VSFTPD sẽ là lựa chọn tối ưu nhất. Bài viết sau sẽ hướng dẫn cụ thể cách cấu hình FTP trên CentOS 7.

Điều kiện để cấu hình FTP trên CentOS 7 bằng VSFTPD

  • Có quyền truy cập vào tài khoản người dùng với quyền sudo.
  • Trình quản lý gói “yum”, cài đặt theo mặc định.
  • Trình soạn văn bản.

Cấu hình FTP trên CentOS 7

Hướng dẫn dưới đây sẽ sử dụng phần mềm VSFTPD (Very Secure FTP Daemon Software package). Đây là một phần mềm tương đối đơn giản để tạo server FTP.

Bước 1: Cài đặt dịch vụ FTP với VSFTPD

  1. Bắt đầu bằng việc cập nhật trình quản lý gói
sudo yum update

Đợi cho quá trình hoàn thành.

2. Cài đặt phần mềm VSFTPD với dòng lệnh sau:

sudo yum install vsftpd

Khi được thông báo, nhập Y để hoàn tất quá trình.

Cấu hình FTP trên CentOS 7 bằng VSFTPD

3. Bắt đầu dịch vụ. Sau đó thiết lập cho nó khởi động cùng hệ thống:

sudo systemctl start vsftpd
sudo systemctl enable vsftpd
Cấu hình FTP trên CentOS 7 bằng VSFTPD

4. Tiếp theo, tạo một rule cho tường lửa để cho phép truy cập FTP trên cổng 21:

sudo firewall-cmd --zone=public --permanent --add-port=21/tcp
sudo firewall-cmd --zone=public --permanent --add-service=ftp
sudo firewall-cmd --reload

Lưu ý: Nếu bạn đang sử dụng một ứng dụng tường lửa khác, hãy tham khảo tài liệu để cấu hình chính xác cho cổng 21. Ngoài ra, một số client FPT sử dụng cổng 20. Do đó bạn cũng có thể muốn thêm cả quy tắc của cổng đó. Cụ thể là chỉ cần sao chép dòng lệnh, rồi thay đổi 21 thành 20.

Bước 2: Cấu hình dịch vụ VSTFTPD

Hành vi của dịch vụ FTP trên server của bạn sẽ được xác định hỏi file cấu hình: /etc/vsftpd/vsftpd.conf

  1. Trước khi bắt đầu, hãy tạo một bản sao của file cấu hình mặc định:
sudo cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.default

Việc này đảm bảo bạn có cách để quay trở lại cấu hình mặc định nếu gặp sự cố trong quá trình cài đặt.

2. Sau đó, chỉnh sửa file cấu hình với lệnh:

sudo nano /etc/vsftpd/vsftpd.conf

3. Thiết lập server FTP để vô hiệu hóa những người dùng ẩn danh, chỉ cho phép các người dùng cục bộ.

Tìm các mục sau trong file cấu hình, rồi chỉnh sửa chúng cho khớp với các mục sau:

anonymous_enable=NO
local_enable=YES

Đây là một bước quan trọng. Vì cho phép người dùng ẩn danh truy cập là rất nguy hiểm. Vì vậy cần tránh nó trừ khi bạn hiểu rõ rủi ro.

4. Tiếp theo, cho phép người dùng đã đăng nhập tải các file lên server FTP của bạn.

Tìm các mục sau, rồi sửa lại chúng:

write_enable=YES
Lưu ý: Theo mặc định, dòng này bắt đầu bằng một dấu # để cho biết đó là một comment. (comment là một cách hữu ích để bật và tắt các lệnh). Dấu # cũng có thể được sử dụng để ghi chú trong file.

5. Giới hạn người dùng FTP với thư mục của riêng họ. Điều này thường được gọi là jail hay chroot jail. Tìm và chỉnh các mục sau:

chroot_local_user=YES
allow_writeable_chroot=YES

Lưu ý: Với mục đích thử nghiệm, bạn có thể sử dụng allow_writeable_chroot=YES. Nhưng một số quản trị viên ủng hộ việc sử dụng tùy chọn user_sub_token để bảo mật tốt hơn.

6. Tiện ích vsftpd cung cấp một cách để tạo danh sách các người dùng đã được phê duyệt. Để quản lý người dùng theo cách này, hãy tìm mục userlist_enable, rồi chỉnh sửa lại như sau:

userlist_enable=YES
userlist_file=/etc/vsftpd/user_list
userlist_deny=NO

Bây giờ, bạn có thể chỉnh sửa file /etc/vsftpd/user_list, và thêm vào danh sách người dùng (mỗi người dùng một dòng). Tùy chọn userlist_deny cho phép chỉ định người dùng được thêm. Nếu thay đổi nó thành yes, danh sách sẽ thay đổi thành những người dùng bị chặn.

7. Sau khi chỉnh sửa xong file cấu hình, hãy lưu lại các thay đổi. Rồi restart lại dịch vụ vsftpd để áp dụng các thay đổi:

sudo systemctl restart vsftpd

Bước 3: Tạo một người dùng FTP mới

  1. Tạo một người dùng FTP mới:
sudo adduser testuser
sudo passwd testuser

Sau đó hệ thống sẽ báo để bạn nhập và xác nhận mật khẩu người dùng mới.

2. Thêm người dùng vào userlist:

echo "testuser" | sudo tee -a /etc/vsftpd/user_list

3. Tạo một thư mục cho người dùng mới, điều chỉnh các quyền:

sudo mkdir –p /home/testuser/ftp/upload
sudo chmod 550 /home/testuser/ftp
sudo chmod 750 /home/testuser/ftp/upload
sudo chown –R testuser: /home/testuser/ftp
Cấu hình FTP trên CentOS 7 bằng VSFTPD

Thao tác này sẽ tạo một thư mục home/testuser cho người dùng mới, với một thư mục đặc biệt để tải lên. Thư mục này giới hạn quyền chỉ tải lên thư mục /uploads.

4. Bây giờ, bạn có thể đăng nhập vào server FTP với người dùng vừa tạo:

ftp 192.168.01

Thay thế địa chỉ IP này với địa chỉ trong hệ thống của bạn.

Hệ thống sau đó sẽ yêu cầu một tên người dùng – nhập tên người dùng bạn đã tạo trước đó. Nhập mật khẩu, và hệ thống sẽ đăng nhập.

Bước 4: Kiểm tra server FTP

Đây là bước cuối cùng trong quá trình cấu hình FTP trên CentOS 7.

Để kiểm tra server FTP cục bộ, sử dụng lệnh:

ftp localhost

Để kiểm tra từ xa, dùng lệnh:

ftp your.ftp.server.com

Lưu ý: Một số biện pháp bảo mật đã được đưa vào bảo mật này. Nhưng chúng tôi khuyên bạn tự làm quen với các giao thức bảo mật mới nhất trước khi triển khai server FTP trong môi trường production. Điều này đặc biệt quan trọng nếu bạn đang tạo một máy chủ FTP open với internet. Ở đây, nhiều rủi ro bảo mật bắt nguồn từ giao thức FTP.

Kết luận

Bây giờ bạn đã biết cách cấu hình FTP trên CentOS 7 với VSFTPD. Bạn có thể bắt đầu đăng nhập vào server bằng FTP và bắt đầu upload/download các file ngay từ lúc này!

Theo phoenixnap.com

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments