Phát hành Máy chủ SFTP SFTPGo 2.2.0

Bản phát hành máy chủ SFTPGo 2.2 đã được xuất bản, cho phép bạn tổ chức truy cập từ xa vào các tệp bằng các giao thức SFTP, SCP/SSH, Rsync, HTTP và WebDav. Trong số những thứ khác, SFTPGo có thể được sử dụng để cung cấp quyền truy cập vào kho Git bằng giao thức SSH. Dữ liệu có thể được truyền cả từ hệ thống tệp cục bộ và từ các bộ lưu trữ bên ngoài tương thích với Amazon S3, Google Cloud Storage và Azure Blob Storage. Có thể lưu trữ dữ liệu ở dạng mã hóa. Để lưu trữ cơ sở dữ liệu và siêu dữ liệu người dùng, các DBMS có hỗ trợ SQL hoặc định dạng khóa/giá trị được sử dụng, chẳng hạn như PostgreSQL, MySQL, SQLite, CockroachDB hoặc bbolt, nhưng cũng có thể lưu trữ siêu dữ liệu trong RAM mà không yêu cầu kết nối cơ sở dữ liệu bên ngoài. Mã dự án được viết bằng Go và được phân phối theo giấy phép GPLv3.

Trong phiên bản mới:

  • Đã thêm hỗ trợ xác thực hai yếu tố bằng mật khẩu một lần có giới hạn thời gian (TOTP, RFC 6238). Các ứng dụng như Authy và Google Authenticator có thể được sử dụng làm trình xác thực.
  • Khả năng mở rộng chức năng thông qua các plugin đã được triển khai. Trong số các plugin đã có sẵn: hỗ trợ các dịch vụ trao đổi khóa bổ sung, tích hợp sơ đồ Xuất bản/Đăng ký, lưu trữ và tìm kiếm thông tin về các sự kiện trong DBMS.
  • API REST đã bổ sung hỗ trợ xác thực bằng cách sử dụng khóa, ngoài mã thông báo JWT, đồng thời cung cấp khả năng đặt chính sách lưu trữ dữ liệu (giới hạn thời gian tồn tại của dữ liệu) liên quan đến từng thư mục và người dùng. Theo mặc định, Swagger UI được bật để điều hướng tài nguyên API mà không cần sử dụng các tiện ích bên ngoài.
  • Hỗ trợ các thao tác ghi đã được thêm vào giao diện web (tải tệp lên, tạo thư mục, đổi tên và xóa), khả năng đặt lại mật khẩu bằng xác nhận qua email đã được triển khai, trình chỉnh sửa tệp văn bản và trình xem tài liệu PDF đã được tích hợp. Đã thêm khả năng tạo liên kết HTTP để cung cấp cho người dùng bên ngoài quyền truy cập vào các tệp và thư mục riêng lẻ, với khả năng đặt mật khẩu truy cập riêng, giới hạn địa chỉ IP, đặt thời gian tồn tại của liên kết và giới hạn số lần tải xuống.

Các tính năng chính của SFTPGo:

  • Mỗi tài khoản đều được chroot, hạn chế quyền truy cập vào thư mục chính của người dùng. Có thể tạo các thư mục ảo tham chiếu dữ liệu bên ngoài thư mục chính của người dùng.
  • Tài khoản được lưu trữ trong cơ sở dữ liệu người dùng ảo không trùng lặp với cơ sở dữ liệu người dùng hệ thống. SQLite, MySQL, PostgreSQL, bbolt và lưu trữ trong bộ nhớ có thể được sử dụng để lưu trữ cơ sở dữ liệu người dùng. Các phương tiện được cung cấp để ánh xạ các tài khoản ảo và hệ thống - có thể ánh xạ trực tiếp hoặc ngẫu nhiên (một người dùng hệ thống có thể được ánh xạ tới một người dùng ảo khác).
  • Hỗ trợ xác thực bằng khóa chung, khóa SSH và mật khẩu (bao gồm xác thực tương tác bằng mật khẩu được nhập từ bàn phím). Có thể liên kết nhiều khóa cho mỗi người dùng, cũng như thiết lập xác thực đa yếu tố và nhiều bước (ví dụ: trong trường hợp xác thực khóa thành công, mật khẩu có thể được yêu cầu bổ sung).
  • Đối với mỗi người dùng, có thể định cấu hình các phương thức xác thực khác nhau, cũng như xác định các phương thức của riêng bạn, được triển khai bằng cách gọi các chương trình xác thực bên ngoài (ví dụ: để xác thực qua LDAP) hoặc gửi yêu cầu qua API HTTP.
  • Có thể kết nối các trình xử lý bên ngoài hoặc các lệnh gọi API HTTP để tự động thay đổi các tham số của người dùng, được gọi trước khi người dùng đăng nhập. Hỗ trợ tạo động người dùng khi kết nối.
  • Hỗ trợ hạn ngạch riêng cho kích thước dữ liệu và số lượng tệp.
  • Hỗ trợ giới hạn băng thông với cấu hình hạn chế riêng biệt cho lưu lượng đến và đi, cũng như hạn chế về số lượng kết nối đồng thời.
  • Các công cụ kiểm soát truy cập hoạt động liên quan đến người dùng hoặc thư mục (bạn có thể hạn chế xem danh sách tệp, cấm tải lên, tải xuống, ghi đè, xóa, đổi tên hoặc thay đổi quyền truy cập, cấm tạo thư mục hoặc liên kết tượng trưng, ​​v.v.).
  • Đối với mỗi người dùng, bạn có thể xác định các hạn chế mạng riêng lẻ, ví dụ: bạn chỉ có thể cho phép đăng nhập từ một số IP hoặc mạng con nhất định.
  • Nó hỗ trợ kết nối các bộ lọc cho nội dung đã tải xuống liên quan đến từng người dùng và thư mục (ví dụ: bạn có thể chặn tải xuống các tệp có phần mở rộng nhất định).
  • Có thể liên kết các trình xử lý được khởi chạy trong các hoạt động khác nhau bằng một tệp (tải xuống, xóa, đổi tên, v.v.). Ngoài trình xử lý cuộc gọi, việc gửi thông báo dưới dạng yêu cầu HTTP cũng được hỗ trợ.
  • Tự động chấm dứt các kết nối không hoạt động.
  • Cập nhật cấu hình nguyên tử mà không ngắt kết nối.
  • Cung cấp số liệu để giám sát trong Prometheus.
  • Giao thức HAProxy PROXY được hỗ trợ để tổ chức cân bằng tải hoặc kết nối proxy tới các dịch vụ SFTP/SCP mà không làm mất thông tin về địa chỉ IP nguồn của người dùng.
  • API REST để quản lý người dùng và thư mục, tạo bản sao lưu và tạo báo cáo về các kết nối đang hoạt động.
  • Giao diện web (http://127.0.0.1:8080/web) để cấu hình và giám sát (cấu hình qua các tệp cấu hình thông thường cũng được hỗ trợ).
  • Khả năng xác định cài đặt ở các định dạng JSON, TOML, YAML, HCL và envfile.
  • Hỗ trợ kết nối qua SSH với quyền truy cập hạn chế vào các lệnh hệ thống. Ví dụ: nó được phép chạy các lệnh cần thiết cho Git (git-receive-pack, git-upload-pack, git-upload-archive) và rsync, cũng như một số lệnh tích hợp (scp, md5sum, sha*sum , cd, pwd, sftpgo-copy và sftpgo-remove).
  • Chế độ di động để chia sẻ một thư mục chung với việc tạo thông tin xác thực kết nối tự động được quảng cáo qua DNS đa hướng.
  • Hệ thống hồ sơ tích hợp để phân tích hiệu suất.
  • Quy trình đơn giản hóa để di chuyển tài khoản hệ thống Linux.
  • Lưu trữ nhật ký ở định dạng JSON.
  • Hỗ trợ các thư mục ảo (ví dụ: nội dung của một thư mục nhất định có thể được cung cấp không phải từ FS cục bộ mà từ bộ lưu trữ đám mây bên ngoài).
  • Cryptfs hỗ trợ mã hóa dữ liệu nhanh chóng trong suốt khi lưu vào FS và giải mã khi quay lại.
  • Hỗ trợ chuyển tiếp kết nối tới các máy chủ SFTP khác.
  • Khả năng sử dụng SFTPGo làm hệ thống con SFTP cho OpenSSH.
  • Khả năng lưu trữ thông tin xác thực và dữ liệu bí mật ở dạng mã hóa bằng máy chủ KMS (Dịch vụ quản lý khóa), chẳng hạn như Vault, GCP KMS, AWS KMS.

Nguồn: opennet.ru

Thêm một lời nhận xét