Bài 6: Cách cài đặt FTP Server trên AWS EC2 Linux Chuyên mục Devops 2023-06-11 894 Lượt xem 112 Lượt thích 0 Bình luận
Video
FTP là gì?
FTP viết tắt của File Transfer Protocol (giao thức truyền tải tập tin) và được dùng trong việc trao đổi dữ liệu trong mạng thông qua giao thức TCP/IP thường hoạt động với 2 cổng 20 và 21. Trong giao thức này, các máy client tròng mạng có thể truy cập đến máy chủ FTP để gửi hoặc lấy dữ liệu. Và đặc biệt, người dùng có thể truy cập FTP để truyền và lấy dữ liệu từ xa.
Mục đích sử dụng FTP là gì?
- Được sử dụng để trao đổi tập tin qua mạng lưới truyền thông sử dụng TCP/IP (internet, mạng nội bộ, …)
- Sử dụng để tải xuống máy tính các file từ máy chủ.
- Tại sao nên dùng FTP: Mặc dù việc truyền file từ hệ thống này sang hệ thống khác rất đơn giản và dễ hiểu, nhưng đôi khi xảy ra những vấn đề khác nhau. Ví dụ, 2 hệ thống có thể có các quy ước tập tin khác nhau, 2 hệ thống có các cách khác nhau để thể hiện văn bản và dữ liệu hay 2 hệ thống có cấu trúc thư mục khác nhau, … Giao thức FTP khắc phục những vấn đề này bằng cách thiết lập 2 kết nối giữa các máy chủ. Một kết nối để sử dụng truyền dữ liệu, 1 kết nối còn lại được sử dụng để điều khiển kết nối.Cách hoạt động của FTP là gì?
Cách hoạt động của FTP là gì?
FTP tồn tại như một trong những chương trình ban đầu để truy cập thông tin trên Internet. Rất lâu trước khi HTTP trở nên phổ biến để truy cập các trang web. Do đó, trình duyệt web trên PC của bạn, cũng như chương trình Windows Explorer hiển thị các file trên máy tính của bạn đã được sử dụng để truy cập các máy chủ FTP để lấy hoặc đặt các file từ xa.
Giao thức FTP hoạt động dựa trên mô hình cơ bản của việc truyền và nhận dữ liệu từ máy Client đến Server. Quá trình truyền và nhận dữ liệu giữa Client và Server được tạo nên từ TCP logic là Control Connection và Data Connection.
- Control Connection: Là phiên làm việc TCP logic đầu tiên được tạo ra khi quá trình truyền dữ liệu bắt đầu. Nhưng trong tiến này chỉ kiểm soát được các thông tin điều khiển đi qua nó. Quá trình này sẽ được duy trì trong suốt quá trình phiên làm việc diễn ra.
- Data Connection: Là một kết nối dữ liệu TCP được tạo ra với mục đích riêng là truyền dữ liệu giữa Client và Server. Quá trình truyền tải dữ liệu hoàn tất nó sẽ tự động ngắt kết nối.
Các thuật ngữ:
- FTP là viết tắt của File Transfer Protocol (Giao thức truyền file)
- Thuật ngữ GET được sử dụng trong FTP để chỉ việc nhận file.
- Thuật ngữ PUT được sử dụng trong FTP để chỉ việc gửi file.
Trong bối cảnh hiện đại, sử dụng FTP trong Windows tương tự như mở cửa sổ Windows Explorer cho một thư mục từ xa trên máy tính. Một máy tính trên Internet cung cấp truy cập FTP được gọi là máy chủ FTP. Bạn được yêu cầu nhập tên người dùng và mật khẩu để truy cập máy chủ FTP. Giống như đăng nhập vào máy tính của riêng bạn.
Cách cài đặt trên EC2 linux server
1.Cài FTP
yum -y install vsftpd
2.Config vsftpd
vim /etc/vsftpd/vsftpd.conf
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=NO
pasv_enable=YES
pasv_address=[IP của máy chủ]
pasv_min_port=60001
pasv_max_port=60010
force_dot_files=YES
use_localtime=YES
allow_writeable_chroot=YES
listen=YES
listen_ipv6=NO
pasv_addr_resolve=NO
seccomp_sandbox=NO
Bỏ comments trong một số chỗ sau :
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
Sau đó chuyển chroot_local_user=YES
Thêm lệnh dưới đây vào sau chroot_list_file=/etc/vsftpd/chroot_list:
user_config_dir=/etc/vsftpd/user_conf
3.Khởi động FTP
systemctl start vsftpd
or
systemctl restart vsftpd
4.Thêm user vào trong file chroot_list
vi /etc/vsftpd/chroot_list
dev
5.Tạo thư mục để config files truyền tải
mkdir /etc/vsftpd/user_conf
6.Tạo file để config file s truyền tải của user
vi /etc/vsftpd/user_conf/dev
Sau đó thêm dòng sau :
local_root=/var/www/dev
7.Tạo user và set quyền cho user FTP
useradd dev
passwd dev
Chỉnh cho phép user đăng nhập bằng mật khẩu:
vim /etc/ssh/sshd_config
service sshd restart
8. Tạo thư mục để lưu trữ files truyền tải
mkdir -p /var/www/dev
Sau đó thì set quyền lại cho thư mục dev này :
chown dev /var/www/dev
chmod 755 /var/www/dev
9.Mởi port 21, 60001-60010 trên Firewall
Các bạn hãy lên EC2 Security Groups và vào trong inbound rules thêm các port sau :
10. Test kết nối
WinSCP (Windows Secure Copy) là một tiện ích SFTP, FTP client miễn phí sử dụng mã nguồn mở dành cho hệ điều hành Windows. Tiện ích này giúp người dùng truyền tải file một cách an toàn giữa máy tính ở xa với máy tính của bạn. Theo đó, WinSCP cũng cung cấp các chức năng quản lý file vô cùng hữu ích. Hỗ trợ chương trình SSH để bảo mật và phương thức SCP tốt nhất cho người dùng.
Các bạn hãy tải WinSCP để thử nhé !
Bình luận (0)