Skip to main content

Hướng dẫn cài FTP Server lên Red Hat CentOS 7

FTP Server là một máy chủ chạy dịch vụ FTP (File Transfer Protocol: Giao thức truyền tập tin) thường được dùng để trao đổi tập tin giữa 2 máy. Trong đó một máy có vai trò là Client và một máy còn lại là Server.

Bạn hãy nhớ rằng FTP là một giao thức mở nên bất kỳ công ty cá nhân nào cũng có thể dùng phần mềm của riêng họ để liên lạc đến một FTP Server thuộc một hãng khác bình thường.

Trong lĩnh vực hosting thì FTP là một dịch vụ khá quan trọng nó là nòng cốt chính của việc truyền tập tin từ lập trình viên web lên server để chạy web, nhiệm vụ chuyển giao các tập tin web: PHP, HTML, CSS, hình ảnh,…

Cài đặt VSFTPD:

Hôm nay mình sẽ hướng dẫn các bạn cài một phần mềm làm máy chủ FTP cho client truy xuất và upload/download file, có tên là vsftpd, là một phần mềm chạy dịch vụ FTP Server cho các hệ thống Unix và Linux. Được cấp phép theo Giấy phép GNU General Public. Có hỗ trợ IPv6 và SSL.
vsftpd đã được chọn là FTP Server mặc định trong các hệ điều hành Ubuntu, CentOS, Fedora, NimbleX, Slackware và các bản phân phối của dòng họ Red Hat RHEL Linux.

Chuẩn bị hệ điều hành:

Trước khi cài đặt vsftpd lên CentOS 7 xin bạn nhớ kỹ chuẩn bị sẳn một môi trường như sau trên hệ điều hành CentOS 7 này:
1. Đặt hostname cụ thể đây là server gì (xem hướng dẫn) ví dụ đây mình dùng hostname ftp.your-domain.gq
2. Set Date ngày giờ hệ điều hành cho đúng (xem hướng dẫn)
3. Disable SElinux để trong quá trình thực hành không bị phát sinh nhiều lỗi lạ (xem hướng dẫn)
4. Update System hệ thống cập nhật ở trạng thái mới nhất (xem hướng dẫn)
5. Firewall đã allow port 21/tcp để công khai dịch vụ FTP Server (xem hướng dẫn)
Nếu bạn muốn làm nhanh chỉ để test thì có thể tạm Disable Firewall trên CentOS 7:

systemctl stop firewalld
service iptables stop

Cài đặt VSFTPD:

Sau khi đã qua khâu chuẩn bị bây giờ chúng ta sẽ tiến hành cài đặt vsftpd:

yum -y install vsftpd

Sau khi cài xong chúng ta tạo thư mục /backupconfig/vsftpd để sao lưu lại toàn bộ những cấu hình mặt định mà vsftpd vừa cài xong và sinh ra:

mkdir -p /backupconfig
cd /backupconfig
mkdir vsftpd

Sao lưu cấu hình vsftpd:

service vsftpd stop > /dev/null 2>&1
cp /etc/vsftpd/vsftpd.conf /backupconfig/vsftpd >/dev/null 2>&1

Cấu hình VSFTPD:

Sao lưu xong chúng ta tạo ra file cấu hình mới: (mình sẽ lấy về file cấu hình tại đường link nhanh sau và đè lên vsftpd.conf)

wget http://1.voduy.com/c/centos7/vsftpd/vsftpd.conf -O /etc/vsftpd/vsftpd.conf
chkconfig vsftpd on
service vsftpd start

Hoặc bạn có thể xóa nội dung /etc/vsftpd/vsftpd.conf và viết vào như sau:

nano /etc/vsftpd/vsftpd.conf

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_umask=022
anon_upload_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
dual_log_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_local_user=YES
allow_writeable_chroot=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
force_dot_files=YES
ascii_upload_enable=YES
ascii_download_enable=YES
pasv_enable=YES
pasv_max_port=12100
pasv_min_port=12000
use_localtime=YES

(Hai cách làm trên đều như nhau, nội dung file là không khác)

Tiếp theo ta chạy dịch vụ lên và cho dịch vụ tự động chạy như vậy mỗi khi boot vào server:

service vsftpd start
chkconfig vsftpd on

Kiểm tra hoạt động FTP Server:

Bây giờ là lúc ta thử sử dụng dịch vụ, đầu tiên là tạo user. Mặc định FTP sẽ xác thực tài khoản FTP bằng user đã add trên hệ thống nên bạn chỉ cần add user (nếu nó chưa có) và đặt pass cho chúng (nếu chúng chưa có password) là được:

useradd your-domain.gq
echo 'your-domain.gq:123456' | chpasswd

Ví dụ trên 123456 là password cho user your-domain.gq (xem lại danh sách những user đã có trên hệ thống bạn có thể cat /etc/passwd)

Bạn hãy dùng một trình FTP client như Filezilla CLient tải tại đây để kiểm tra lại kết nối. Hướng dẫn sử dụng FTP Client xem tại đây.

Cám ơn bạn đã đọc hết bài viết, hãy bấm chia sẻ lên mạng xã hội để nhớ rằng bạn đã từng nắm được kiến thức do bài viết này cung cấp rồi:
Share

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Share