Forum

HOW INSTALL AND CONFIGURE FTP SERVER

FTP (File Transfer Protocol): là giao thức cung cấp cơ chế truyền tin dưới dạng tập tin thông qua TCP/IP. Bên cạnh đó, FTP còn là một dịch vụ đặc biệt vì khi hoạt động sẽ sử dụng 2 cổng: 20 (data port) và 21 (command port) thay vì một cổng như các dịch vụ thông dụng khác.

VSFTPD (Very Secure FTP Daemon): là một dịch vụ thường được sử dụng trên Unix và Linux để làm FTP Server mà theo một số đánh giá thì tốc độ nhanh hơn, bảo mật tốt hơn và hoạt động ổn định hơn các dịch vụ FTP Server khác. Trong bài viết Install and Configure FTP Server, tôi xin giới thiệu cách cài đặt và cấu hình một FTP Server bằng vsftpd trên CentOS 7.

I. Cài đặt vsftpd

Kiểm tra máy CentOS đã cài dịch vụ FTP Server vsftpd hay chưa bằng lệnh:

rpm –qa vsftpd

Nếu kết quả trả về là trống thì đồng nghĩa với việc vsftpd chưa được cài đặt. Để tiến hành cài đặt dịch vụ FTP Server từ Repository thông qua Internet dùng lệnh:

yum install -y vsftpd

II. Cấu hình dịch vụ vsftpd

Trước khi cấu hình vsftpd, nên lưu lại một bản sau của file cấu hình ban đầu để dùng trong trường hợp file cấu hình bị lỗi trong quá trình thiết lập các thông số. Để copy dùng lệnh cp như sau:

cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

Tiến hành cấu hình FTP Server bằng cách thay đổi các giá trị trong tập tin /etc/vsftpd/vsftpd.conf với lệnh vi như sau:

vi /etc/vsftpd/vsftpd.conf

Thay đổi một số thiết lập cơ bản sau:

#Dòng 12 – Thiết lập không cho anonymous user truy cập ftp

anonymous_enable=NO

#Dòng 16 – Nếu = YES thì cho phép sử dụng local user để đăng nhập FTP và trường này bắt buộc là YES nếu mục anonymous_enable=NO

local_enable=YES

#Dòng 19 – Mặc định là YES. Cho phép FTP Users ghi dữ liệu

write_enable=YES

#Dòng 23 – Phân quyền 664 cho các tập tin và 775 cho các thư mục upload lên FTP Server

local_umask=022

#Dòng 43 – Tắt port 20 trên FTP Server để cho vsftpd an toàn hơn.

connect_from_port_20=NO

#Dòng 82,83 – Hỗ trợ bảng mã ASCII trong upload và download

ascii_upload_enable=YES

ascii_download_enable=YES

Ngoài ra, còn rất nhiều thông số trong thiết lập vsftpd.conf có thể sử dụng cho phù hợp với nhu cầu của từng hệ thống. Có thể tham khảo thêm các tham số tại đây:

https://security.appspot.com/vsftpd/vsftpd_conf.html

Sau khi hoàn tất việc cấu hình vsftpd, tiến hành khởi động dịch vụ và thiết lập cho dịch vụ tự động khởi chạy trong những lần khởi động Server tiếp theo lần lượt bằng các lệnh bên dưới:

systemctl start vsftpd.service

systemctl enable vsftpd.service

III. Tạo user login ftp server

Vsftpd đã được cấu hình chứng thực bằng user local nên hầu như tất cả user tồn tại trong PAM đều có thể login vào FTP Server ngoài trừ những user đặc biệt nằm trong tập tin: /etc/vsftpd/ftpusers. Nếu muốn các user này log in được vào ftp server chỉ cần thêm dấu # vào trước tên user hoặc xóa khỏi danh sách.

Mặc định, khi một user đăng nhập vào FTP Server, thì Server sẽ lấy thư mục home tương ứng với user đó làm vị trí ban đầu cho việc upload và download dữ liệu. Vì vậy, khi tạo user để đăng nhập FTP, cần lưu ý đến việc tạo thư mục home cho user đúng với vị trí mong muốn bằng lệnh useradd và tham số -d như sau:

useradd –d

Ví dụ: Để tạo user opalis có thư mục home là /var/www/html/opalis thì dùng lệnh như sau:

useradd -d /var/www/html/opalis opalis

Khi đăng nhập vào FTP Server bằng user opalis, FTP Server sẽ tự động chuyển đến thư mục /var/www/html/opalis để làm vị trí cho user upload và download dữ liệu.

Nếu muốn chuyển đổi thư mục home của một user sang một đường dẫn khác để tiện cho việc sử dụng FTP thì cần phải làm 2 việc là chuyển đổi thư mục home cho user với lệnh usermod kèm thông số -md và chuyển sở hữu thư mục mới cho user đó bằng lệnh chown với tham số -R.

VD: Chuyển mục home của user opalis từ /var/www/html/opalis sang thư mục /var/www/html/opalisltl/ và chuyển sở hữu thư mục /var/www/html/opalisltl/ về cho user opalis bằng các lệnh sau:

usermod -m -d /var/www/html/opalisltl/ opalis

chown -R opalis /var/www/html/opalisltl/

Reply to this topic Share on my timeline

0 Replies

No replies to show