[FTP][Phần 2]Hướng dẫn cấu hình FTP Server trên CentOS-7 với VSFTPD

30/12/2020

Tại phần 1, ta đã tìm hiểu tổng quan về giao thức FTP, cũng như cách hoạt động của nó.

Bài viết này sẽ giúp bạn cấu hình một FTP server trên CentOS-7.

Mục lục

I. Giới thiệu
II. Cài đặt và cấu hình FTP server
III. Truy cập FTP server

I. Giới thiệu

VSFTPD(Very Secure File Transport Protocol Daemon) là một FTP Server Stand Alone được phân phối bởi Red Hat Enterprise Linux .
Đây là phần mềm để tạo FTP Server với tốc độ nhanh, cấu hình đơn giản.

Ngoài ra, nếu không sử dụng VSFTPD thì bạn có thể dùng ProFTPD hoặc Pure-FTPD đều được.

Trong bài viết này, mình sẽ cài đặt FTP server lên máy CentOS-7.
Việc cài đặt được thực hiện với quyền root.

Chuẩn bị:

  • Một máy cài CentOS-7
  • IP address của FTP Server: 192.168.37.25/24

II. Cài đặt FTP Server

1. Cài đặt VSFTPD:

Cài đặt gói Vsftpd:

# yum install vsftpd

Sau khi quá trình cài đặt hoàn tất, ta khởi động dịch vụ và cho phép nó khởi động cùng hệ thống.

# systemctl start vsftpd # systemctl enable vsftpd

Cấu hình tường lửa cho dịch vụ FTP và port 21:

# firewall-cmd --permanent --add-port=21/tcp success  # firewall-cmd --permanent --add-service=ftp success  # firewall-cmd --reload success

Kiểm tra trạng thái dịch vụ vsftpd:

2. Cấu hình VSFTPD

File cấu hình vsftpd nằm tại : /etc/vsftpd/vsftpd.conf
Copy file cấu hình để backup.

# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.backup

Chỉnh sửa file cấu hình vsftpd.conf:

# vi /etc/vsftpd/vsftpd.conf
  • FTP Access: Ta không cho kết nối nặc danh, mà chỉ cho kết nối cục bộ vào FTP server
anonymous_enable=NO    // Không cho kết nối nặc danh  local_enable=YES        // Cho phép kết nối cục bộ
  • Enabling uploads: Cho phép người dùng upload.
write_enable=YES        //Cho phép người dùng nội bộ tải lên
  • Chroot: kỹ thuật giữ người dùng trong thư mục của họ, không cho phép. Tại đây ta sẽ chroot tất cả user, ngoại trừ các user trong file /etc/vsftpd/chroot_list
chroot_local_user=YES allow_writeable_chroot=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list
  • Login banner FTP server: banner khi người dùng login vào FTP server.
ftpd_banner="Welcome FTP Server"
  • Giới hạn cổng kết nối cho FTP thụ động: Giới hạn khoảng các cổng sử dụng cho FTP passive
pasv_min_port=30000 pasv_max_port=31000
  • Giới hạn User được phép truy cập vào hệ thống: Nếu muốn giới hạn các User local được đăng nhập vào hệ thống FTP server. Ta thêm vào các dòng sau. Khi đó, những User có trong file /etc/vsftpd/user_list mới được truy cập vào hệ thống.
userlist_enable=YES userlist_file=/etc/vsftpd/user_list userlist_deny=NO
  • Home directory: ta có thể chỉ định thư mục home khi người dùng đăng nhập vào hệ thống
local_root=<đường_dẫn_thư_mục>
  • Thời gian hệ thống: ta sử dụng thời gian local:
use_local_time-YES

3. Khởi động lại dịch vụ và cho phép các cổng FTP passive đi qua tường lửa

# systemctl restart vsftpd  # firewall-cmd --permanent --add-port=30000-31000/tcp success  # firewall-cmd --reload success

III. Truy cập FTP Server

Để truy cập FTP server, ta cần 1 tài khoản local và được cấp quyền truy cập vào FTP server.

1. Tạo user local

Tạo 1 local user là: Sandclock với mật khẩu là nhanhoa2020

# adduser Sandclock # passwd Sandclock

Sau khi thêm xong thì thư mục mặc định của tài khoản này sẽ ở thư mục /home/Sandclock/

2. Cấp quyền truy cập đến FTP server

Ta thêm user Sandclock vào file /etc/vsftpd/user_list để có thể truy cập vào server.

Thêm vào file /etc/vsftpd/chroot_list (Nếu bạn sử dụng trong file cấu hình)

Sau đó restart lại dịch vụ vsftpd

# systemctl restart vsftpd

3. Truy cập FTP server

Có nhiều cách để có thể truy cập FTP server như :

  • lftp trên CentOS-7
  • cmd trên Window
  • FileZilla trên Window

Ở đây, ta sử dụng FileZilla để truy cập tới FTP server. Ta nhập địa chỉ IP của Server, username, password

Sau khi nhập đúng địa chỉ của FTP server và tài khoản đăng nhập, ta sẽ thấy giao diện như trên với các thư mục trên FTP server.


Trên đây là hướng dẫn cài đặt một FTP server trên CentOS-7 của mình. Bài viết chắc chắn sẽ còn những thiếu sót. Rất mong sự góp ý của các bạn.

Bài viết sau, ta sẽ tìm hiểu cách sử dụng FileZilla để truy cập FTP server.

Xem thêm các bài viết về FTP.

Sandclock IDC thành lập vào năm 2012, là công ty chuyên nghiệp tại Việt Nam trong lĩnh vực cung cấp dịch vụ Hosting, VPS, máy chủ vật lý, dịch vụ Firewall Anti DDoS, SSL… Với 10 năm xây dựng và phát triển, ứng dụng nhiều công nghệ hiện đại, Sandclock IDC đã giúp hàng ngàn khách hàng tin tưởng lựa chọn, mang lại sự ổn định tuyệt đối cho website của khách hàng để thúc đẩy việc kinh doanh đạt được hiệu quả và thành công.
Bài viết liên quan

Tiến trình và phân loại tiến trình trên Linux

Khi làm việc với hệ điều hành, ta luôn gặp cụm từ process hay tiến trình. Vậy tiến trình là...
30/12/2020

Hướng dẫn cảnh báo qua mail khi sử dụng nagios

Chúng ta không phải lúc nào cũng có thể ngồi nhìn xem khi nào có host hay service nào đó có đang hoạt...
30/12/2020

[linux_basic] Sticky Bit , SUID , SGID

Ở bài viết này, mình sẽ trình bày về một số khái niệm permission nâng cao hơn : Sticky Bit , SUID...
30/12/2020
Bài Viết

Bài Viết Mới Cập Nhật

Hướng dẫn chuyển đổi windows server windows evaluation to standard và active windows server 2008 + 2012 + 2016 + 2019
26/10/2021

How to Update Ubuntu Linux
24/10/2021

Squid Proxy Manager cài đặt và quản lý Proxy Squid tự động trên ubuntu
20/10/2021

Hướng dẫn cài đặt Apache CloudStack 4.15.2.0
19/10/2021

Hướng dẫn ký file PDF bằng chữ ký số (chữ ký điện tử) và sửa lỗi mới nhất 2021 foxit reader
19/10/2021