Nội dung
Trong bài hướng dẫn này mình sẽ giúp các bạn cài đặt mod_sftp vào ProFTPD trên máy chủ DirectAdmin đang sử dụng ProFTPD làm dịch vụ FTP Server chính.
I. Giới thiệu
1. SFTP là gì?
SFTP hay còn được biết đến với cái tên gốc là: SSH File Transfer Protocol. Khi nhắc đến giao thức này, người nghe thường nghĩ đến FTP và FTPS, nhưng giao thức này tốt hơn FTP và FTPS.
Và họ cho rằng chúng giống nhau. Thế nhưng, trên thực tế thì SFTP sử dụng một giao thức hoàn toàn khác so với 2 cái kia. Đó là giao thức SSH – Secure Shell, một giao thức dùng để di chuyển các tệp tin. SFTP được phát triển vào những năm 1990. Và nó cho phép di chuyển các tệp tin 1 cách an toàn.
2. Ưu điểm của SFTP
Ngày nay, SFTP đã thu hút được rất nhiều người đến với giao thức của nó. Và lý do nằm ở chính những ưu điểm này:
- SFTP đem lại tính bảo mật cao.
- Với giao thức SFTP, các thông tin truy cập sẽ được mã hoá và tránh được tin tặc.
- Có thể tăng tính bảo mật hiện nữa bằng việc kết hợp xác thực bằng key pair với tên người dùng, password.
- SFTP chỉ sử dụng 1 máy chủ để truyền dữ liệu.
Với những ưu điểm trên thì việc tích hợp giao thức này cho dịch vụ FTP Server là điều nên làm.
Điều kiện cần có trước khi thực hiện theo bài viết này:
- Máy chủ của bạn có sử dụng DirectAdmin.
- Máy chủ của bạn đang sử dụng ProFTPD làm dịch vụ FTP Server. Nếu chưa bạn hãy xem qua bài hướng dẫn sau: Hướng dẫn cài đặt ProFTPd trên DirectAdmin.
- Bạn có quyền truy cập vào máy chủ với quyền cao nhất là
root
hoặc người dùng bất kỳ có quyền sử dụngsudo
.
II. Cài đặt mod_sftp vào ProFTPD
Để cài đặt mod_sftp vào ProFTPD chúng ta cần thực hiện bốn bước sau.
Bước 1: SSH vào hệ thống DirectAdmin của bạn
Để cài đặt mod_sftp vào ProFTPD, đầu tiên chúng ta cần SSH hoặc truy cập VPS hoặc máy chủ của bạn với quyền root trước, hoặc ít nhất là truy cập vào người dùng có quyền sử dụng sudo
. Nếu bạn chưa biết cách SSH vào VPS hoặc Server của bạn thì bạn có thể tham khảo bài viết hướng dẫn sau:
Sau khi đã SSH thành công chúng ta tiếp tục với bước 2 để kiểm tra phiên bản Custombuild và nâng cấp Custombuild nếu cần thiết trước khi đi vào cài đặt ProFTPD trên DirectAdmin.
Bước 2: Kiểm tra phiên bản Custombuild
Chúng ta cần xem phiên bản CustomBuild đang sử dụng có phải là 2.0 hay không. Để kiểm tra phiên bản CustomBuild đang sử dụng mời bạn xem qua bài hướng dẫn ngắn sau:
Trong trường hợp phiên bản CustomBuild của bạn thấp hơn 2.0 thì bạn cần nâng cấp CustomBuild 1.x lên 2.0, bạn có thể xem qua bài hướng dẫn sau:
Sau khi đã có CustomBuild 2.0 chúng ta tiếp tục đến bước 3 để thực hiện các lệnh cài đặt mod_sftp vào ProFTPD.
Bước 3: Các lệnh cài đặt mod_sftp vào ProFTPD
Dưới đây là 9 lệnh chúng ta sẽ cần thực hiện:
#cd /usr/local/directadmin/custombuild #./build update #./build set ftpd proftpd #mkdir -p custom/proftpd/conf #wget -O custom/proftpd/configure.proftpd http://files.directadmin.com/services/all/sftp/configure.proftpd.sftp #wget -O custom/proftpd/conf/proftpd.conf http://files.directadmin.com/services/all/sftp/proftpd.conf #chmod 755 custom/proftpd/configure.proftpd #wget -O /etc/proftpd.sftp.conf http://files.directadmin.com/services/all/sftp/proftpd.sftp.conf #./build proftpd #ssh-keygen -f /etc/ssh/ssh_host_rsa_key -N '' -t rsa #chmod 600 /etc/ssh/ssh_host_rsa_key #service proftpd restart
Giải thích các lệnh trên:
- Lệnh 1: Di chuyển vào thư mục
custombuild
. - Lệnh 2: Cập nhật
custombuild scipt
. - Lệnh 3: Thiết lập
proftpd
làm dịch vụ FTP Server. - Lệnh 4: Khởi tạo thư mục
custom/proftpd/conf
. - Lệnh 5: Tải về tệp cấu hình riêng cho SFTP tên
configure.proftpd.sftp
và đưa tệp này vào thư mụccustom/proftpd/
. - Lệnh 6: Tải về tệp cấu hình riêng cho dịch vụ ProFTPd tên
proftpd.conf
và đưa tệp này vào thư mụccustom/proftpd/conf/
. - Lệnh 7: Phân quyền 755 cho tệp tin
custom/proftpd/configure.proftpd
. - Lệnh 8: Tải về tệp cấu hình riêng cho giao thức SFTP trên dịch vụ ProFTPd tên
proftpd.sftp.conf
và đưa tệp này vào thư mục/etc/
. - Lệnh 9: Cài đặt
proftpd
với cấu hình mới. - Lệnh 10: Khởi tạo SSH Key mới.
- Lệnh 11: Phân quyền
600
cho tệp tin SSH Key mới tạo. - Lệnh 12: Khởi động lại dịch vụ ProFTPd.
Dưới đây là một số hình ảnh trong quá trình thực hiện:
Lưu ý: Mặc định khi máy khách sử dụng giao thức SFTP để kết nối đến máy chủ có nghĩa là đang sử dụng cổng 22. Tuy nhiên, dịch vụ SSHd cũng đang sử dụng cổng này theo mặc định. Nên nếu bạn muốn SFTP sử dụng cổng 22, trước tiên bạn cần thay đổi cổng mà SSHd đang sử dụng (đảm bảo tường lửa của bạn đang mở trên cổng mới), sau đó thay đổi giá trị Port 23 trong tệp /etc/proftpd.sftp.conf để sử dụng 22 thay thế, sau đó khởi động lại ProFTPD.
Nhưng trong bài hướng dẫn này mình sẽ để mặc định SFTP sẽ sử dụng Port 23
.
Bước 4: Kiểm tra lại kết quả
Bạn sẽ cần sử dụng các lệnh sau để kiểm tra ngay trên chính giao diện SSH:
telnet localhost 21 hoặc telnet 127.0.0.1 21 telnet localhost 23 hoặc telnet 127.0.0.1 23
Nếu kết quả của bạn tương tự như bên dưới nghĩa là mọi thứ đã hoạt động hoàn hảo.
Ngoài ra bạn có thể thử sử dụng bất ký một tài khoản FTP nào đó của mình và kết nối với giao thức SFTP lên máy chủ của mình. Và nếu bạn không muốn sử dụng SFTP thì có thể kết nối như bình thường với port 21.
Nếu kết quả như bên dưới thì bạn đã thành công.
Đến đây thì công việc cài đặt mod_sftp vào ProFTPD trên máy chủ sử dụng DirectAdmin đã thành công.
III. Tổng kết
Với bốn bước trên thì bạn đã có thể cài đặt mod_sftp vào ProFTPD thành công. Nếu bạn đang sử dụng Pure-FTPd thì sẽ không thực hiện được vì Pure-FTPd chưa hỗ trợ SFTP.
Tuy bài viết này mình có dựa vào hướng dẫn của DirectAdmin nhưng hướng dẫn này nếu làm theo 100% thì có thể sẽ không thành công, bạn có thể tham khảo bài viết ấy tại đường dẫn sau:
Nếu bạn gặp vấn đề gì trong quá trình thực hiện, có thể liên hệ trực tiếp với mình qua thông tin bên dưới mục tác giả.
Hy vọng bài viết này sẽ giúp ích được cho các bạn. Chúc các bạn có thể thực hiện thành công.
Xem thêm các bài viết hữu ích về DirectAdmin tại đường dẫn sau:
Nếu các bạn cần hỗ trợ các bạn có thể liên hệ bộ phận hỗ trợ theo các cách bên dưới:
- Hotline 247: 028 888 24768 (Ext 0)
- Ticket/Email: Bạn dùng email đăng ký dịch vụ gửi trực tiếp về: support@azdigi.com.