Uitgave van de SFTP-server SFTPGo 2.2.0

De release van de SFTPGo-server 2.2 is gepubliceerd, waarmee u op afstand toegang kunt krijgen tot bestanden via de protocollen SFTP, SCP/SSH, Rsync, HTTP en WebDav. SFTPGo kan ook worden gebruikt om toegang te verlenen tot Git-repositories via het SSH-protocol. Gegevens kunnen worden geleverd vanuit het lokale bestandssysteem of externe opslagcompatibele oplossingen zoals Amazon S3, Google Cloud Storage en Azure Blob Storage. Gegevens kunnen in versleutelde vorm worden opgeslagen. Voor het opslaan van de gebruikersdatabase en metadata worden relationele databases met SQL-ondersteuning of key/value-formaten gebruikt, zoals PostgreSQL, MySQL, SQLite, CockroachDB of bbolt, maar er is ook de mogelijkheid om metadata in het geheugen op te slaan zonder verbinding met een externe database. De projectcode is geschreven in de programmeertaal Go en verspreid onder de GPLv3-licentie.

In de nieuwe versie:

  • Ondersteuning voor twee-factor-authenticatie met tijdgebonden eenmalige wachtwoorden (TOTP, RFC 6238) is toegevoegd. Applicaties zoals Authy en Google Authenticator kunnen als authenticatoren worden gebruikt.
  • De mogelijkheid om functionaliteit uit te breiden via plugins is geïmplementeerd. Onder de reeds beschikbare plugins bevinden zich ondersteuning voor extra sleuteluitwisselingsdiensten, integratie van het Publish/Subscribe-schema, en opslag en zoeken van gebeurtenisinformatie in een database.
  • In de REST API is ondersteuning voor authenticatie via sleutels toegevoegd, naast JWT-tokens, en is het mogelijk om gegevensopslagbeleid (beperking van de levensduur van gegevens) in te stellen voor specifieke mappen en gebruikers. Swagger UI is standaard ingeschakeld voor navigatie door de API-resources zonder gebruik van externe tools.
  • In de webinterface is ondersteuning voor schrijfoperaties (bestanden uploaden, mappen aanmaken, hernoemen en verwijderen) toegevoegd, evenals de mogelijkheid om een wachtwoord opnieuw in te stellen met e-mailbevestiging. Een teksteditor en PDF-viewer zijn geïntegreerd. De mogelijkheid om HTTP-links te creëren voor het verlenen van toegang aan externe gebruikers tot specifieke bestanden en mappen is toegevoegd, met de optie om een apart toegangswachtwoord in te stellen, beperkingen op IP-adressen, de levensduur van de link en het aantal downloads te limiteren.

Belangrijkste mogelijkheden van SFTPGo:

  • Voor elke account wordt chroot-isolatie toegepast, die de toegang tot de thuismap van de gebruiker beperkt. Het is mogelijk om virtuele mappen te maken die verwijzen naar gegevens buiten de thuismap van de gebruiker.
  • Accounts worden opgeslagen in een virtuele gebruikersdatabase die niet overlapt met de systeemgebruikersdatabase. Voor het opslaan van de gebruikersdatabase kunnen SQLite, MySQL, PostgreSQL, bbolt en opslag in het geheugen worden gebruikt. Er zijn middelen beschikbaar om virtuele en systeemaccounts aan elkaar te koppelen - directe of willekeurige mapping is mogelijk (één systeemgebruiker kan aan een andere virtuele gebruiker worden gekoppeld).
  • Authenticatie via openbare sleutels, SSH-sleutels en wachtwoorden (inclusief interactieve authenticatie met invoer van het wachtwoord via het toetsenbord) wordt ondersteund. Het is mogelijk om meerdere sleutels voor elke gebruiker toe te wijzen, evenals het instellen van multifactor- en meervoudige authenticatie (bijvoorbeeld kan na succesvolle authenticatie met de sleutel additioneel om een wachtwoord worden gevraagd).
  • Voor elke gebruiker kan een andere authenticatiemethode worden ingesteld, evenals het definiëren van eigen methoden die worden geïmplementeerd via het aanroepen van externe authenticatieprogramma's (bijvoorbeeld voor authenticatie via LDAP) of het versturen van verzoeken via de HTTP API.
  • Het is mogelijk om externe handlers of HTTP API-aanroepen aan te sluiten voor het dynamisch wijzigen van de gebruikersparameters die vóór de gebruikersinlog worden aangeroepen. Dynamisch gebruikers aanmaken bij inloggen wordt ondersteund.
  • Ondersteuning voor individuele quota voor gegevensgrootte en aantal bestanden.
  • Ondersteuning voor bandbreedtebeperkingen met afzonderlijke instellingen voor inkomend en uitgaand verkeer, evenals beperkingen op het aantal gelijktijdige verbindingen.
  • Toegangsbeheertools die gebonden zijn aan gebruikers of mappen (het is mogelijk om het bekijken van bestandslijsten te beperken, uploads, downloads, overschrijven, verwijderen, hernoemen of wijziging van toegangsrechten te verbieden, het maken van mappen of symbolische links te verbieden, enz.).
  • Voor elke gebruiker kunnen individuele netwerkbeperkingen worden ingesteld, bijvoorbeeld toegang kan alleen vanaf bepaalde IP-adressen of subnetten worden toegestaan.
  • Er wordt ondersteuning geboden voor het koppelen van contentfiltering voor afzonderlijke gebruikers en catalogi (bijvoorbeeld, het blokkeren van uploads van bestanden met bepaalde extensies).
  • Het is mogelijk om handlers te koppelen die worden uitgevoerd bij verschillende bestandsbewerkingen (upload, verwijderen, hernoemen, enz.). Naast het aanroepen van handlers wordt ook ondersteuning geboden voor het versturen van meldingen in de vorm van HTTP-verzoeken.
  • Automatische beëindiging van inactieve verbindingen.
  • Atomaire configuratie-updates zonder verbroken verbindingen.
  • Het bieden van metrics voor monitoring in Prometheus.
  • Ondersteuning voor het HAProxy PROXY-protocol voor het organiseren van load balancing of het proxy'en van verbindingen naar SFTP/SCP-diensten zonder verlies van informatie over het IP-adres van de gebruiker.
  • REST API voor gebruikers- en catalogusbeheer, het maken van back-ups en het genereren van rapporten over actieve verbindingen.
  • Webinterface (http://127.0.0.1:8080/web) voor configuratie en monitoring (configuratie via gewone configuratiebestanden wordt ook ondersteund).
  • De mogelijkheid om instellingen te definiëren in JSON-, TOML-, YAML-, HCL- en envfile-indelingen.
  • Ondersteuning voor SSH-verbindingen met beperkte toegang tot systeemcommando's. Bijvoorbeeld, commando's die nodig zijn voor Git (git-receive-pack, git-upload-pack, git-upload-archive) en rsync zijn toegestaan, evenals een aantal ingebouwde commando's (scp, md5sum, sha*sum, cd, pwd, sftpgo-copy en sftpgo-remove).
  • Portable modus voor het delen van één gemeenschappelijke catalogus met automatische generatie van inloggegevens voor verbinding, aangekondigd via multicast DNS.
  • Ingebouwd profileringssysteem voor prestatie-analyse.
  • Vereenvoudigd proces voor het migreren van Linux-systeemaccounts.
  • Opslag van logs in JSON-indeling.
  • Ondersteuning voor virtuele catalogi (bijvoorbeeld, de inhoud van een bepaalde catalogus kan worden geleverd vanuit een externe cloudopslag in plaats van de lokale bestandssystemen).
  • Ondersteuning voor cryptfs voor transparante versleuteling van gegevens in realtime bij opslag in het bestandssysteem en ontsleuteling bij levering.
  • Ondersteuning voor het doorsturen van verbindingen naar andere SFTP-servers.
  • De mogelijkheid om SFTPGo te gebruiken als een SFTP-subsysteem voor OpenSSH.
  • De mogelijkheid om account- en vertrouwelijke gegevens in versleutelde vorm op te slaan met behulp van KMS-servers (Key Management Services), zoals Vault, GCP KMS, AWS KMS.

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster