Rilis Server SFTPGo 2.2.0 SFTP

Rilis server SFTPGo 2.2 telah diterbitkan, yang memungkinkan Anda mengatur akses jarak jauh ke file menggunakan protokol SFTP, SCP/SSH, Rsync, HTTP dan WebDav. SFTPGo antara lain dapat digunakan untuk menyediakan akses ke repositori Git menggunakan protokol SSH. Data dapat ditransfer baik dari sistem file lokal maupun dari penyimpanan eksternal yang kompatibel dengan Amazon S3, Google Cloud Storage, dan Azure Blob Storage. Dimungkinkan untuk menyimpan data dalam bentuk terenkripsi. Untuk menyimpan database pengguna dan metadata, DBMS dengan dukungan untuk SQL atau format kunci/nilai digunakan, seperti PostgreSQL, MySQL, SQLite, CockroachDB atau bbolt, tetapi dimungkinkan juga untuk menyimpan metadata dalam RAM, yang tidak memerlukan koneksi ke server. basis data eksternal. Kode proyek ditulis dalam Go dan didistribusikan di bawah lisensi GPLv3.

ΠΎΠ²ΠΎΠΉ Срсии:

  • Menambahkan dukungan untuk autentikasi dua faktor menggunakan kata sandi satu kali berbatas waktu (TOTP, RFC 6238). Aplikasi seperti Authy dan Google Authenticator dapat digunakan sebagai autentikator.
  • Kemampuan untuk memperluas fungsionalitas melalui plugin telah diterapkan. Di antara plugin yang sudah tersedia: dukungan untuk layanan pertukaran kunci tambahan, integrasi skema Publikasikan/Berlangganan, penyimpanan dan pencarian informasi tentang peristiwa di DBMS.
  • REST API telah menambahkan dukungan untuk otentikasi menggunakan kunci, selain token JWT, dan juga menyediakan kemampuan untuk mengatur kebijakan penyimpanan data (membatasi masa pakai data) sehubungan dengan masing-masing direktori dan pengguna. Secara default, Swagger UI diaktifkan untuk menavigasi sumber daya API tanpa menggunakan utilitas eksternal.
  • Dukungan untuk operasi tulis telah ditambahkan ke antarmuka web (mengunggah file, membuat direktori, mengganti nama dan menghapus), kemampuan untuk mengatur ulang kata sandi dengan konfirmasi melalui email telah diterapkan, editor file teks dan penampil dokumen PDF telah terintegrasi. Menambahkan kemampuan untuk membuat tautan HTTP untuk memberi pengguna eksternal akses ke file dan direktori individual, dengan kemampuan untuk menetapkan kata sandi akses terpisah, membatasi alamat IP, mengatur masa pakai tautan, dan membatasi jumlah unduhan.

Fitur utama SFTPGo:

  • Setiap akun di-chroot, membatasi akses ke direktori home pengguna. Dimungkinkan untuk membuat direktori virtual yang merujuk ke data di luar direktori home pengguna.
  • Akun disimpan dalam basis data pengguna virtual yang tidak bersinggungan dengan basis data pengguna sistem. SQLite, MySQL, PostgreSQL, bbolt, dan penyimpanan dalam memori dapat digunakan untuk menyimpan basis data pengguna. Sarana disediakan untuk memetakan akun virtual dan sistem - pemetaan langsung atau sewenang-wenang dimungkinkan (satu pengguna sistem dapat dipetakan ke pengguna virtual lainnya).
  • Kunci publik, kunci SSH, dan autentikasi kata sandi didukung (termasuk autentikasi interaktif dengan entri kata sandi keyboard). Dimungkinkan untuk mengikat beberapa kunci untuk setiap pengguna, serta mengatur otentikasi multi-faktor dan multi-tahap (misalnya, jika otentikasi kunci berhasil, kata sandi juga dapat diminta).
  • Dimungkinkan untuk mengonfigurasi metode autentikasi yang berbeda untuk setiap pengguna, serta menentukan metode mereka sendiri yang diterapkan dengan memanggil program autentikator eksternal (misalnya, untuk autentikasi melalui LDAP) atau mengirim permintaan melalui HTTP API.
  • Dimungkinkan untuk menghubungkan penangan eksternal atau panggilan API HTTP untuk secara dinamis mengubah pengaturan pengguna yang dipanggil sebelum pengguna masuk. Pembuatan dinamis pengguna saat terhubung didukung.
  • Dukungan untuk kuota individu untuk ukuran data dan jumlah file.
  • Dukungan untuk pembatasan bandwidth dengan pengaturan terpisah untuk batas lalu lintas masuk dan keluar, serta batas jumlah koneksi simultan.
  • Alat kontrol akses yang bertindak terkait dengan pengguna atau direktori (Anda dapat membatasi tampilan daftar file, melarang mengunggah, mengunduh, menimpa, menghapus, mengganti nama atau mengubah hak akses, melarang pembuatan direktori atau tautan simbolik, dll.).
  • Untuk setiap pengguna, Anda dapat menentukan batasan jaringan individual, misalnya, Anda hanya dapat mengizinkan akses dari IP atau subnet tertentu.
  • Ini mendukung koneksi filter untuk konten yang dapat diunduh sehubungan dengan pengguna dan direktori individu (misalnya, Anda dapat memblokir unduhan file dengan ekstensi tertentu).
  • Anda dapat mengikat penangan yang diluncurkan selama berbagai operasi dengan file (memuat, menghapus, mengganti nama, dll.). Selain penangan panggilan, pengiriman pemberitahuan dalam bentuk permintaan HTTP juga didukung.
  • Pemutusan otomatis koneksi tidak aktif.
  • Pembaruan konfigurasi atom tanpa memutus koneksi.
  • Menyediakan metrik untuk pemantauan di Prometheus.
  • Protokol HAProxy PROXY didukung untuk mengatur load balancing atau koneksi proxy ke layanan SFTP/SCP tanpa kehilangan pengetahuan tentang alamat IP sumber pengguna.
  • REST API untuk mengelola pengguna dan direktori, membuat cadangan, dan melaporkan koneksi aktif.
  • Antarmuka web (http://127.0.0.1:8080/web) untuk konfigurasi dan pemantauan (konfigurasi melalui file konfigurasi biasa juga didukung).
  • Kemampuan untuk menentukan pengaturan dalam format JSON, TOML, YAML, HCL dan envfile.
  • Dukungan untuk terhubung melalui SSH dengan akses terbatas ke perintah sistem. Misalnya, perintah yang diperlukan untuk Git (git-receive-pack, git-upload-pack, git-upload-archive) dan rsync diizinkan untuk dijalankan, serta beberapa perintah bawaan (scp, md5sum, sha*sum, cd, pwd, sftpgo-copy dan sftpgo-remove).
  • Mode portabel untuk berbagi satu direktori bersama dengan pembuatan otomatis kredensial koneksi yang diiklankan melalui DNS multicast.
  • Sistem pembuatan profil bawaan untuk analisis kinerja.
  • Proses migrasi akun sistem Linux yang disederhanakan.
  • Menyimpan log dalam format JSON.
  • Dukungan untuk direktori virtual (misalnya, konten direktori tertentu dapat diberikan bukan dari sistem file lokal, tetapi dari penyimpanan cloud eksternal).
  • Dukungan untuk cryptfs untuk mengenkripsi data secara transparan dengan cepat saat menyimpan ke sistem file dan mendekripsi saat mengunggah.
  • Dukungan untuk meneruskan koneksi ke server SFTP lainnya.
  • Kemampuan untuk menggunakan SFTPGo sebagai subsistem SFTP untuk OpenSSH.
  • Kemampuan untuk menyimpan kredensial dan data rahasia dalam bentuk terenkripsi menggunakan server KMS (Key Management Services), seperti Vault, GCP KMS, AWS KMS.

Sumber: opennet.ru

Tambah komentar