paint-brush
Thiết lập máy chủ FTP/SFTP MinIO — Hiện có nhiều tùy chọn dữ liệu hơn bao giờ hếttừ tác giả@minio
8,302 lượt đọc
8,302 lượt đọc

Thiết lập máy chủ FTP/SFTP MinIO — Hiện có nhiều tùy chọn dữ liệu hơn bao giờ hết

từ tác giả MinIO6m2023/07/25
Read on Terminal Reader

dài quá đọc không nổi

Mặc dù API S3 về cơ bản là vượt trội, nhưng API này thiếu tính đơn giản cơ bản của FTP/SFTP và khả năng chạy trong các môi trường có nhiều hạn chế. Do đó, MinIO đã thêm hỗ trợ cho FTP và SFTP vào Máy chủ MinIO.
featured image - Thiết lập máy chủ FTP/SFTP MinIO — Hiện có nhiều tùy chọn dữ liệu hơn bao giờ hết
MinIO HackerNoon profile picture
0-item
1-item
2-item

Thật kỳ lạ khi nghĩ về thời gian mà Giao thức truyền tệp ( FTP ) đã tồn tại. Được phát triển lần đầu tiên vào năm 1971 bởi Abhay Bhushan, một sinh viên tại MIT, ban đầu nó được sử dụng để truyền tệp giữa các máy tính trên ARPANET. Không cần phải nói nó đã phát triển - với các tính năng xác thực, mã hóa và nén. Nó vẫn là một giao thức được sử dụng rộng rãi để truyền tệp qua Internet, đặc biệt trong trường hợp tệp lớn hoặc số lượng lớn tệp cần được truyền nhanh chóng và đáng tin cậy.


Mặc dù API S3 về cơ bản là vượt trội, nhưng nó thiếu tính đơn giản của FTP/SFTP và khả năng chạy trong các môi trường có nhiều hạn chế. Do đó, MinIO đã thêm hỗ trợ FTPSFTP vào Máy chủ MinIO. Với chức năng mới này, người dùng (hoặc ứng dụng) nghĩ rằng họ đang nói chuyện với máy chủ FTP trong khi thực tế họ đang nói chuyện với MinIO. Những lợi thế phải rõ ràng - việc di chuyển dữ liệu lên MinIO trở nên liền mạch và từ góc độ ứng dụng/người dùng, mọi thứ về cơ bản là giống nhau - từ chính sách, bảo mật, v.v.


Các hoạt động FTP/SFTP hiện được hỗ trợ như sau:


lệnh ftp-client

hỗ trợ

lấy

Đúng

đặt

Đúng

ls

Đúng

mkdir

Đúng

rmdir

Đúng

xóa bỏ

Đúng

nối thêm

KHÔNG

đổi tên

KHÔNG


MinIO hỗ trợ các giao thức dựa trên FTP/SFTP sau để truy cập và quản lý dữ liệu.


  • Giao thức truyền tệp an toàn ( SFTP ) – Được Lực lượng đặc nhiệm kỹ thuật Internet (IETF) xác định là phiên bản mở rộng của SSH 2.0, cho phép truyền tệp qua SSH và để sử dụng với các ứng dụng VPN và Bảo mật tầng vận chuyển (TLS).


  • Giao thức truyền tệp qua SSL/TLS ( FTPS ) – Giao tiếp FTP được mã hóa qua chứng chỉ TLS.


  • Giao thức truyền tệp ( FTP ) – Được xác định ban đầu bởi RFC114 và được thay thế bằng giao tiếp FTP không được mã hóa RFC765 và RFC959

    • Điều này KHÔNG được khuyến nghị


Những gì được đề cập trong phiên bản này:


  • Tất cả Thông tin đăng nhập IAM đều được phép truy cập ngoại trừ thông tin đăng nhập luân phiên, thông tin đăng nhập luân phiên không được phép đăng nhập qua cổng FTP/SFTP . Bạn phải sử dụng cổng API S3 nếu bạn đang sử dụng thông tin đăng nhập luân phiên.


  • Quyền truy cập vào (các) bộ chứa và (các) đối tượng được quản lý thông qua các chính sách IAM được liên kết với thông tin xác thực đăng nhập đến.


  • Cho phép xác thực và truy cập cho tất cả

    • Người dùng IDP tích hợp và tài khoản dịch vụ tương ứng của họ
    • Người dùng LDAP/AD và tài khoản dịch vụ tương ứng của họ
    • Tài khoản dịch vụ OpenID/OIDC


  • Trên các bộ chứa được phiên bản, FTP/SFTP chỉ hoạt động trên các đối tượng mới nhất. Nếu cần truy xuất phiên bản cũ hơn, bạn phải sử dụng S3 API client chẳng hạn như mc .


  • Tất cả các tính năng mà bộ chứa của bạn hiện đang sử dụng sẽ hoạt động “nguyên trạng” mà không có bất kỳ thay đổi nào
    -SSE (Mã hóa phía máy chủ)
    -Replication (Sao chép phía máy chủ)


Về cơ bản, đây phải là một bổ sung giao thức liền mạch theo quan điểm của nhà phát triển/quản trị viên.

Điều kiện tiên quyết và Ghi chú

Chức năng này khả dụng bắt đầu với RELEASE.2023-04-20T17-56-55Z .


Người ta cho rằng người dùng đã được tạo và định cấu hình với các chính sách truy cập có liên quan . MinIO khuyên bạn nên bắt đầu với chính sách đóng hộp "đọc ghi" cơ bản để kiểm tra tất cả các hoạt động trước khi hoàn thiện mức độ hạn chế nào là cần thiết cho người dùng.


Không cần thao tác "quản trị viên:*" để truy cập FTP/SFTP vào (các) bộ chứa và (các) đối tượng. Chúng có thể bị bỏ qua vì những hạn chế.


Lưu ý quan trọng: FTP/SFTP không được bật theo mặc định. Nó cần được kích hoạt khi thiết lập. Hơn nữa, không có chức năng quản trị nào có sẵn qua FTP , điều này phải được thực hiện thông qua dòng lệnh.

Cách sử dụng

Bắt đầu MinIO trong một thiết lập phân tán, có bật FTP/SFTP .


 minio server http://server{1...4}/disk{1...4} --ftp="address=:8021" --ftp="passive-port-range=30000-40000" \ --sftp="address=:8022" --sftp="ssh-private-key=/home/miniouser/.ssh/id_rsa" ... ...


Ví dụ sau đây cho thấy kết nối qua ứng dụng khách ftp bằng thông tin đăng nhập minioadmin và liệt kê một nhóm có tên là runner :


 ftp localhost -P 8021 Connected to localhost. 220 Welcome to MinIO FTP Server Name (localhost:user): minioadmin 331 User name ok, password required Password: 230 Password ok, continue Remote system type is UNIX. Using binary mode to transfer files. ftp> ls runner/ 229 Entering Extended Passive Mode (|||39155|) 150 Opening ASCII mode data connection for file list drwxrwxrwx 1 nobody nobody 0 Jan 1 00:00 chunkdocs/ drwxrwxrwx 1 nobody nobody 0 Jan 1 00:00 testdir/ ...


Ví dụ sau đây cho thấy cách liệt kê một đối tượng và tải xuống cục bộ thông qua ứng dụng khách ftp :


 ftp> ls runner/chunkdocs/metadata 229 Entering Extended Passive Mode (|||44269|) 150 Opening ASCII mode data connection for file list -rwxrwxrwx 1 nobody nobody 45 Apr 1 06:13 chunkdocs/metadata 226 Closing data connection, sent 75 bytes ftp> get (remote-file) runner/chunkdocs/metadata (local-file) test local: test remote: runner/chunkdocs/metadata 229 Entering Extended Passive Mode (|||37785|) 150 Data transfer starting 45 bytes 45 3.58 KiB/s 226 Closing data connection, sent 45 bytes 45 bytes received in 00:00 (3.55 KiB/s) ...

Ghi chú về SFTP

Nếu có chứng chỉ được bật trên máy chủ, SFTP có thể được sử dụng. Với điều kiện máy khách FTP có khả năng, TLS có thể được sử dụng để bảo mật quá trình truyền. Điều này sẽ yêu cầu một cờ bổ sung cho khóa riêng.


Ví dụ sau đây cho thấy kết nối qua ứng dụng khách sftp bằng thông tin đăng nhập minioadmin và liệt kê một nhóm có tên là runner :


 sftp -P 8022 minioadmin@localhost minioadmin@localhost's password: Connected to localhost. sftp> ls runner/ chunkdocs testdir


Ví dụ sau đây cho thấy cách tải xuống một đối tượng cục bộ thông qua ứng dụng khách sftp :


 sftp> get runner/chunkdocs/metadata metadata Fetching /runner/chunkdocs/metadata to metadata metadata 100% 226 16.6KB/s 00:00 sftp>

Tùy chọn nâng cao

Thay đổi cổng FTP mặc định

Cổng mặc định 8021 có thể được thay đổi thông qua


 --ftp="address=:3021"

Thay đổi phạm vi cổng thụ động FTP

Theo mặc định, FTP yêu cầu HĐH tự động cung cấp một cổng miễn phí, tuy nhiên, bạn có thể muốn hạn chế điều này đối với các cổng cụ thể trong một số môi trường bị hạn chế thông qua


 --ftp="passive-port-range=30000-40000"

Thay đổi cổng SFTP mặc định

Cổng mặc định 8022 có thể được thay đổi thông qua


 --sftp="address=:3022"

TLS (FTP)

Không giống như máy chủ SFTP , máy chủ FTP không an toàn theo mặc định. Để hoạt động ở chế độ TLS, bạn cần cung cấp chứng chỉ qua


 --ftp="tls-private-key=path/to/private.key" --ftp="tls-public-cert=path/to/public.crt"


LƯU Ý : nếu thiết lập phân tán MinIO đã được định cấu hình để chạy trong TLS, FTP sẽ tự động sử dụng các chứng chỉ có liên quan từ chuỗi chứng chỉ máy chủ, điều này chủ yếu là để thêm tính đơn giản cho thiết lập. Tuy nhiên, nếu bạn muốn chấm dứt chứng chỉ TLS qua một miền khác cho máy chủ FTP của mình, bạn có thể chọn các tùy chọn dòng lệnh ở trên.

Hạn chế

Chúng tôi đã lưu ý trước đó rằng Nối và Đổi tên không phải là chức năng hỗ trợ.


Do tính đơn giản của FTP - việc tạo phiên bản cũng có vấn đề. Phiên bản không được FTP hỗ trợ và các ứng dụng khách FTP không biết nó thực sự là gì - nhưng các bộ chứa thường sẽ có nhiều phiên bản của một đối tượng. Do đó, cùng một đối tượng có tên mới sẽ là một đối tượng mới. Đối tượng trùng tên sẽ là một phiên bản mới - nhưng FTP không có khái niệm về điều đó, nó cần được quản lý thông qua S3. Nó có thể di chuyển dữ liệu, nhưng nó không có sự tinh vi của S3 để hiểu các khái niệm nhất định.


Cuối cùng, như đã lưu ý, không có chức năng quản trị nào có sẵn trên FTP .

Bản tóm tắt

FTP/SFTP là các giao thức tồn tại lâu dài đặc biệt và chúng tiếp tục tìm thấy các trường hợp sử dụng và tiện ích mới cho đến những năm 50 của chúng. Chúng tôi đã đơn giản hóa việc sử dụng FTP để lấy dữ liệu vào MinIO và lấy nó ra.


Quan trọng hơn, chức năng FTP/SFTP sẽ hoạt động trơn tru với việc triển khai MinIO hiện tại của bạn - chỉ cần nâng cấp và cung cấp cho bạn các bộ chứa MinIO với tất cả dữ liệu mà trước đó bạn phải chuyển đổi thành MinIO.


Chúng tôi có một video tuyệt vời về chủ đề này ở đây . Chúng tôi có trang GitHub của mình tại đây . Chúng tôi sẵn sàng hỗ trợ cộng đồng tại đây và rõ ràng, nếu bạn là khách hàng thương mại, bạn có thể tìm thấy chúng tôi 24/7/365 trên SUBNET.


Cũng được xuất bản ở đây .


L O A D I N G
. . . comments & more!

About Author

MinIO HackerNoon profile picture
MinIO@minio
MinIO is a high-performance, cloud-native object store that runs anywhere (public cloud, private cloud, colo, onprem).

chuyên mục

BÀI VIẾT NÀY CŨNG CÓ MẶT TẠI...