Është publikuar versioni i serverit SFTPGo 2.5.0, i cili lejon organizimin e aksesit në skedarë përmes protokolleve SFTP, SCP/SSH, Rsync, HTTP dhe WebDav, si dhe ofrimin e aksesit në depo Git duke përdorur protokollin SSH. Të dhënat mund të merren si nga sistemi lokal i skedarëve ashtu edhe nga magazinat e jashtme, të pajtueshme me Amazon S3, Google Cloud Storage dhe Azure Blob Storage. Është e mundur ruajtja e të dhënave në formë të enkriptuar. Për ruajtjen e bazës së përdoruesve dhe të dhënave metadatike përdoren DB me mbështetje për SQL ose formatin çelës/vlerë, si PostgreSQL, MySQL, SQLite, CockroachDB ose bbolt, por ka gjithashtu mundësinë e ruajtjes së metadatas në memorjen e përkohshme, e cila nuk kërkon lidhje me një DB të jashtme. Kodi i projektit është shkruar në gjuhën Go dhe shpërndahet nën licencën GPLv3.
Në këtë version të ri:
- Në ndërfaqen web është ofruar mundësia për mbylljen e mesazheve të gabimeve. Në ndërfaqen web për administratoret është shtuar mbështetje për kërkimin në regjistrin e auditi dhe eksportimin e të dhënave nga ai, realizuar menaxhimi i listave IP-adresave dhe rrjetet, është ofruar mundësia për konfigurimin e SMTP dhe parametrave standardë ACME dhe SFTP. Në ndërfaqen klientike web është realizuar një formë hyrjeje të vetën (në vend të basic auth), është shtuar operacione kopjimi dhe është hequr kufizimi në madhësinë e ngarkesave.

- Është shtuar mbështetje për politikat e përdorimit të fjalëkalimeve, për shembull, është e mundur të përcaktohen kërkesat për besueshmërinë e fjalëkalimit dhe të caktohet koha e jetës së fjalëkalimit.
- Në EventManager është shtuar mundësia e tregimit të njoftimeve për fjalëkalimet e skaduara, është realizuar operacioni i kopjimit, është shtuar mbështetje për veprimet e paraqitura (pre-*) dhe për procesorët që aktivizohen gjatë veprimeve të caktuara (për shembull, është shtuar një procesor që aktivizohet gjatë hyrjes së përdoruesit).
- Është shtuar mundësia për t'u dhënë përdoruesve të drejtat e administratorit.
- Në ndërfaqen e komandave të linjës janë shtuar komandat për rinovimin e fjalëkalimit të administratorit dhe kontrolle të funksionimit të shërbimit.
- Është shtuar mbështetje për operatorët kushtorë gjatë kryerjes së rinovimit masiv të skedarëve në anën e ofruesve të mjeteve në cloud.
- Është shtuar mbështetje për ndjekjen dhe rinovimin automatik Certifikatat TLS.
- Është shtuar mundësia për përcaktimin e MIME-type-ve të veta për WebDAV.
- Për SSH është aktivizuar si standard autentifikimi interaktiv duke përdorur tastierën.
- Në modalitetin e transportueshëm është shtuar mundësia për ngarkimin e fjalëkalimeve nga një skedë.
- Shtuar mbështetje eksperimentale për shërbimin Terraform.
Karakteristikat kryesore të SFTPGo:
- Për çdo llogari aplikohet izolimi chroot, i cili kufizon aksesin në katalogun e shtëpisë së përdoruesit. Është e mundur të krijohen katalogë virtualë që i referohen të dhënave jashtë katalogut të shtëpisë së përdoruesit.
- Llogaritë ruhet në një bazë virtuale përdoruesish, e cila nuk përputhet me DB-në sistemike të përdoruesve. Për ruajtjen e DB-së së përdoruesve mund të përdoren SQLite, MySQL, PostgreSQL, bbolt dhe ruajtja në memorie. Ofrohen mjete për të përputhur llogaritë virtuale me ato sistemike — është e mundur përputhja direkte ose arbitrare (një përdorues sistemik mund të përputhet me një përdorues tjetër virtual).
- Mbështetet autentifikimi me çelësa publikë, çelësa SSH dhe fjalëkalime (përfshirë autentifikimin interaktiv me futjen e fjalëkalimit nga tastiera). Është e mundur lidhja e disa çelësave për secilin përdorues, si dhe konfigurimi i autentifikimit me shumë faktorë dhe shumë hapa (për shembull, në rastin e autentifikimit të suksesshëm me çelës, mund të kërkohet gjithashtu një fjalëkalim).
- Çdo përdorues ka mundësi të konfigurojë metoda të ndryshme autentikimi, si dhe të përcaktojë metoda të veçanta, që realizohen përmes thirrjes së programeve autentifikues të jashtme (p.sh., për autentikimin përmes LDAP) ose dërgimit të kërkesave përmes API HTTP.
- Është e mundur lidhja me përpunues të jashtëm ose thirrjet API HTTP për ndryshimin dinamik të parametrave të përdoruesit, që thirren përpara hyrjes së përdoruesit. Krijimi dinamik i përdoruesve mbështetet gjatë lidhjes.
- Mbështetje për kuota individuale për madhësinë e të dhënave dhe numrin e skedarëve.
- Mbështetje për kufizimin e bandwidth-it me konfigurim të ndarë të kufizimeve për trafik hyrës dhe dalës, si dhe kufizime për numrin e lidhjeve njëkohëshe.
- Mjetet e ndarjes së aksesit, që veprojnë në lidhje me përdoruesin ose katalogun (mund të kufizojnë shikimin e listës së skedarëve, të ndalojnë shkarkimin, ngarkimin, rishkrimin, fshirjen, rinovimin ose ndryshimin e të drejtave të aksesit, të ndalojnë krijimin e katalogëve ose lidhjeve simbolike etj.).
- Për çdo përdorues mund të përcaktohen kufizime të veçanta të rrjetit, për shembull, mund të lejohet hyrja vetëm nga IP ose nëndivizione të caktuara.
- Mbështetet lidhja e filtrave të ngarkesës së përmbajtjes në lidhje me përdoruesit dhe katalogët e veçantë (për shembull, mund të bllokoni ngarkimin e skedarëve me një zgjerim të caktuar).
- Është e mundur lidhja e përpunuesve që aktivizohen gjatë operacioneve të ndryshme me skedarin (ngarkim, fshirje, rinovim, etj.). Përveç thirrjes së përpunuesve, mbështetet dërgimi i njoftimeve në formën e kërkesave HTTP.
- Mbarimi automatik i lidhjeve të paaktivizuara.
- Përditësimi atomar i konfiguracionit pa ndërprerjen e lidhjeve.
- Ofrimi i metrike për monitorim në Prometheus.
- Mbështetet protokolli HAProxy PROXY për organizimin e balancimit të ngarkesës ose për proksimin e lidhjeve në shërbimet SFTP/SCP pa humbur informacion për IP-në origjinë të përdoruesit.
- REST API për menaxhimin e përdoruesve dhe katalogëve, krijimin e kopjeve rezerva dhe formimin e raporteve mbi lidhjet aktive.
- Ndërfaqja e Web-it (http://127.0.0.1:8080/web) për konfigurimin dhe monitorimin (organizimi përmes skedave të zakonshme të konfiguratës është gjithashtu i mbështetur).

- Mundësia për të caktuar cilësimet në formate JSON, TOML, YAML, HCL dhe envfile.
- Mbështetje për lidhjen me SSH me akses të kufizuar në komandat sistemike. Për shembull, lejohet ekzekutimi i komandave të nevojshme për punën me Git (git-receive-pack, git-upload-pack, git-upload-archive) dhe rsync, si dhe disa komandat e integruara (scp, md5sum, sha*sum, cd, pwd, sftpgo-copy dhe sftpgo-remove).
- Režimi portable për ndarjen e një direktoriumi të përbashkët me gjenerimin automatik të kredencialeve për lidhje, të njoftuara përmes multicast DNS.
- Sistemi i integruar i profilizimit për analizën e performancës.
- Procedura e thjeshtuar për migrimin e llogarive të sistemit Linux.
- Ruajtja e logjeve në formatin JSON.
- Mbështetje për katalogët virtualë (për shembull, përmbajtja e një katalogu të caktuar mund të dorëzohet jo nga sistemi lokal i skedarëve, por nga një ruajtje e jashtme në re).
- Mbështetje për cryptfs për enkriptimin e të dhënave në mënyrë transparente gjatë ruajtjes në FSh dhe dekryptimin gjatë dorëzimit.
- Mbështetje për kalimin e lidhjeve në servera të tjerë SFTP.
- Mundësia e përdorimit të SFTPGo si një nën sistem SFTP për OpenSSH.
- Mundësia e ruajtjes së të dhënave të llogarive dhe të dhënave të ndjeshme në formë të koduar duke përdorur serverë KMS (Shërbimi për Menaxhimin e Çelësave), si Vault, GCP KMS, AWS KMS.
- Mbështetje për autentifikim dyfaktor me përdorimin e fjalëkalimeve njëherësh me jetëgjatësi të kufizuar (TOTP, RFC 6238). Aplikacione si Authy dhe Google Authenticator mund të përdoren si autentifikues.
- Zgjerimi i funksionalitetit përmes plugin-eve. P.sh., janë në dispozicion plugin-e që mbështesin shërbime të tjera për shkëmbimin e çelësave, integrimin e skemës Publish/Subscribe, ruajtjen dhe kërkimin e informacionit rreth ngjarjeve në DBMS.
Burimi: opennet.ru


