Cách cài đặt ProFTPD trên Ubuntu 22.04

Tác giả NetworkEngineer, T.Chín 27, 2022, 02:05:16 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Cách cài đặt ProFTPD trên Ubuntu 22.04


F ile T ransfer P rotocol (FTP) vẫn là một công nghệ được sử dụng rộng rãi để di chuyển tệp qua mạng máy tính. Nó nổi tiếng là nhẹ, dễ cài đặt và sử dụng. FTP có tiếng xấu là một giao thức không an toàn vì nó truyền mật khẩu và dữ liệu ở dạng văn bản thuần túy. Tuy nhiên, các máy chủ FTP hiện đại như ProFTPD hỗ trợ FTP qua TLS, vì vậy kết nối được mã hóa bằng TLS / SSL. Trong hướng dẫn này, tôi sẽ chỉ cho bạn cách cấu hình ProFTPD để kết nối được mã hóa bằng TLS.

ProFTPd là một ứng dụng máy chủ FTP mã nguồn mở cho phép bạn thiết lập các máy chủ FTP của riêng mình trên các máy Linux, thậm chí nhiều hơn thế nếu chúng là các máy chủ chuyên dụng hoặc các phiên bản đám mây. Chúng tôi sẽ cài đặt phiên bản mới nhất của ProFTPD trên máy Ubuntu 22.04 bằng cách sử dụng kho của Focal Fossa, nhưng nó cũng sẽ hoạt động tốt trên hầu hết các bản phân phối dựa trên Debian. Chúng tôi cũng thiết lập TLS để bảo mật các kết nối FTP.

1. Điều kiện tiên quyết

Một phiên bản máy chủ mới, với Ubuntu 22.04 (Focal Fossa) được cài đặt.
Sudo / quyền root để cài đặt / cấu hình ứng dụng.

2. Cập nhật hệ thống của bạn

Bạn nên cập nhật hệ thống của mình trước khi cài đặt bất kỳ gói hoặc phần mềm nào, đặc biệt là khi nó đến từ các kho lưu trữ bên ngoài. Chúng tôi sẽ sử dụng tiện ích "apt-get" cho việc đó:

Mã nguồn [Chọn]
# sudo apt-get update -y
Mã nguồn [Chọn]
# sudo apt-get upgrade -y
Khởi động lại máy chủ của bạn nếu có bất kỳ bản cập nhật hạt nhân nào để áp dụng các thay đổi

Mã nguồn [Chọn]
# sudo reboot now
3. Cài đặt Máy chủ ProFTPD

Bây giờ hệ thống của bạn đã được cập nhật, chúng tôi có thể tiếp tục cài đặt ProFTPD.

Theo mặc định, ProFTPD có sẵn trên các kho của Focal Fossa, bạn có thể cài đặt bằng lệnh sau:

Mã nguồn [Chọn]
# sudo apt install proftpd -y

Sau khi cài đặt xong, bạn có thể khởi động dịch vụ proftpd và cho phép nó tự động bắt đầu thời gian khởi động.

Mã nguồn [Chọn]
$ sudo systemctl start proftpd
Mã nguồn [Chọn]
$ sudo systemctl enable proftpd

Bây giờ dịch vụ đang chạy, chúng tôi có thể kiểm tra trạng thái của nó bằng cách sử dụng:

Mã nguồn [Chọn]
$ sudo systemctl status proftpd

Bạn có thể thấy hoạt động (đang chạy) có màu xanh lục để có thể kết luận rằng trình nền proftpd đang hoạt động như mong đợi.

Các tệp cấu hình mặc định của ProFTPD có sẵn trên thư mục /etc/proftpd/proftpd.conf.

Bạn có thể xem nội dung của tệp cấu hình bằng cách chạy:

Mã nguồn [Chọn]
$ sudo nano /etc/proftpd/proftpd.conf

Cấu hình được chia thành một số phần của chỉ thị. Chúng ta hãy xem xét các chỉ thị đó.

Chỉ thị DefaultRoot cho máy chủ FTP biết nơi phục vụ tệp theo mặc định. Giá trị của DefaultRoot có thể là một đường dẫn tuyệt đối hoặc tương đối. Khi chỉ thị DefaultRoot được đặt thành ~ (ký tự dấu ngã), người dùng sẽ bị hạn chế trong các thư mục chính của họ. Bạn có thể thay đổi đường dẫn đến một thư mục khác, ví dụ:

Mã nguồn [Chọn]
DefaultRoot /home/Linux/Docs
Bạn có thể sử dụng các lệnh khác nhau để đặt từng người dùng vào một thư mục cụ thể. Ví dụ:

Mã nguồn [Chọn]
DefaultRoot /home/linux A
Mã nguồn [Chọn]
DefaultRoot /B
Những dòng đó cho biết người dùng A sẽ đăng nhập vào thư mục / home / linux và người dùng B sẽ đăng nhập vào toàn bộ hệ thống.

Chỉ thị ServerName được sử dụng để xác định tên cho máy chủ FTP. Chỉ thị này có thể được sử dụng trong nhật ký và thông báo, vì vậy bạn nên đặt nó thành một tên mô tả có ý nghĩa đối với bạn.

Mã nguồn [Chọn]
ServerName "VietNetwork"
Chỉ thị Cổng xác định số cổng mà máy chủ FTP sẽ lắng nghe các kết nối. Giá trị mặc định của chỉ thị này là 21.

4. Tạo người dùng ProFTPD

Vì lý do bảo mật, bạn nên tạo một tài khoản người dùng giả, với quyền hạn chế, chỉ có quyền truy cập vào thư mục chính của họ. Đây là thực tiễn tốt cần tuân theo khi bạn cho phép người dùng tải lên hoặc tải xuống tệp trên máy chủ FTP của mình.

Phiên bản ProFTPD đã cài đặt không đi kèm với người dùng được tạo sẵn và các tùy chọn cấu hình ngoài hộp. Chúng tôi sẽ cần thêm một người dùng mới cho mục đích này.

Hãy tạo một user vitux FTP với thư mục /home/vietnetwork  là thư mục chính.

Mã nguồn [Chọn]
$ sudo useradd -m vietnetwork
Tạo mật khẩu mới cho người dùng mới.

Mã nguồn [Chọn]
$ sudo passwd vietnetwork
Bây giờ bạn có thể kiểm tra kết nối FTP bằng người dùng "vitux". Mở ứng dụng FTP ưa thích của bạn (FileZilla, WinSCP, CoreFTP hoặc bất kỳ ứng dụng nào khác), điền vào các chi tiết như địa chỉ IP, tên người dùng, mật khẩu và Cổng và nhấp vào Kết nối nhanh.

Như bạn có thể thấy, bây giờ chúng ta có thể truy cập FTP với người dùng mới được tạo. Máy chủ ProFTPd đang chạy và hoạt động như mong đợi.

Trong trường hợp bạn muốn thêm nhiều người dùng hơn, chỉ cần tạo họ bằng lệnh useradd với tên người dùng mong muốn của bạn. Bạn cũng có thể cấp quyền root cho người dùng FTP nếu cần.

5. Cấu hình TLS cho ProFTPD

Để bảo mật kết nối FTP, bạn có thể sử dụng TLS. Trong phần này, chúng tôi sẽ cấu hình ProFTPD với chứng chỉ TLS từ Let's Encrypt (một nhà cung cấp SSL miễn phí) và kích hoạt chứng chỉ mới được tạo trong tệp cấu hình.

Đầu tiên, cài đặt OpenSSL

Mã nguồn [Chọn]
$ sudo apt-get install openssl -y

Bây giờ chúng ta đã cài đặt OpenSSL, hãy tạo chứng chỉ SSL.

Mã nguồn [Chọn]
$ sudo openssl req -x509 -newkey rsa:1024 -keyout /etc/ssl/private/proftpd.key -out /etc/ssl/certs/proftpd.crt -nodes -days 365
Chúng ta hãy xem nhanh những gì đang xảy ra ở đây. Chúng tôi đang tạo thư mục nơi chứng chỉ SSL sẽ được tạo (/ etc / ssl), tạo yêu cầu chứng chỉ và cấp cho nó hiệu lực một năm (365 ngày). Chúng tôi cũng đang chỉ định tệp khóa cá nhân và tệp chứng chỉ. Bạn sẽ phải trả lời một số câu hỏi về tổ chức của mình như câu hỏi dưới đây. Chỉ cần nhập câu trả lời và nhấn Enter


Lệnh trên sẽ tạo hai tệp: proftpd.key và proftpd.crt mà chúng ta sẽ cần để cấu hình ProFTPD.

Thay đổi quyền của các tệp khóa và thành 600.

Mã nguồn [Chọn]
$ sudo chmod 600 /etc/ssl/private/proftpd.key
Mã nguồn [Chọn]
$ sudo chmod 600 /etc/ssl/certs/proftpd.crt
Bây giờ chúng ta cần chỉnh sửa tệp cấu hình chính, nằm tại /etc/proftpd/proftpd.conf và thêm một số thông tin về tệp chứng chỉ mới được tạo của chúng ta.

Mã nguồn [Chọn]
$ sudo nano /etc/proftpd/proftpd.conf
Bỏ ghi chú phần SSL và TLS bằng cách xóa "#" ở đầu dòng, để bạn có thể sử dụng FTP qua SSL.


Lưu và đóng tập tin. Bây giờ hãy cấu hình tệp tls.conf

Mã nguồn [Chọn]
$ sudo nano /etc/proftpd/tls.conf
Tìm và bỏ ghi chú các dòng sau bằng cách xóa "#" ở đầu mỗi dòng.




Lưu và đóng tập tin. Đừng quên khởi động lại dịch vụ.

Mã nguồn [Chọn]
$ sudo systemctl restart proftpd
Nếu bạn muốn kiểm tra xem mọi thứ có hoạt động như mong đợi hay không, hãy sử dụng ứng dụng khách FTP và kết nối với máy chủ của bạn có bật SSL. Bạn sẽ nhận được cảnh báo TLS từ ứng dụng khách FTP của mình.

Thông thường nhận được cảnh báo TLS từ các máy khách FTP. Sau khi bạn cho phép hoặc OK cảnh báo, kết nối SSL sẽ được thiết lập và bạn có thể tiếp tục sử dụng ứng dụng khách FTP như bình thường.

Trong hướng dẫn này, chúng tôi đã cài đặt ProFTPD trên máy chủ Ubuntu 20.04 của mình, tạo người dùng cho kết nối FTP và kiểm tra chức năng của nó. Chúng tôi cũng đã định cấu hình TLS để bảo mật kết nối FTP khỏi bị nghe trộm hoặc giả mạo dữ liệu đang truyền. Trong trường hợp bạn cần thêm thông tin về các tùy chọn cấu hình ProFTPD, hãy đảm bảo kiểm tra tài liệu chính thức của chúng.