Vrijgave van SFTP-server SFTPGo 2.5.0

De release van de SFTPGo 2.5.0-server is gepubliceerd, waarmee u externe toegang tot bestanden kunt organiseren met behulp van de SFTP-, SCP / SSH-, Rsync-, HTTP- en WebDav-protocollen, evenals toegang tot Git-repositories met behulp van het SSH-protocol. Gegevens kunnen zowel vanuit het lokale bestandssysteem als vanuit externe opslag worden aangeboden die compatibel is met Amazon S3, Google Cloud Storage en Azure Blob Storage. Het is mogelijk om gegevens versleuteld op te slaan. Voor het opslaan van de gebruikersdatabase en metadata wordt gebruik gemaakt van DBMS'en met ondersteuning voor SQL of key/value-formaat, zoals PostgreSQL, MySQL, SQLite, CockroachDB of bbolt, maar er is ook de mogelijkheid om metadata op te slaan in RAM, waarvoor geen externe databaseverbinding nodig is. De projectcode is geschreven in Go en gedistribueerd onder de GPLv3-licentie.

In de nieuwe versie:

  • De webinterface biedt de mogelijkheid om foutmeldingen af ​​te sluiten. In de webinterface voor de beheerder is ondersteuning toegevoegd voor het zoeken in het auditlogboek en het exporteren van gegevens daaruit, is het beheer van lijsten met IP-adressen en netwerken geïmplementeerd en is de mogelijkheid geboden om SMTP en typische ACME- en SFTP-parameters te configureren. De webinterface van de klant implementeerde zijn eigen inlogformulier (in plaats van basisauthenticatie), voegde kopieerbewerkingen toe en verwijderde de limiet op de grootte van downloads.
    Vrijgave van SFTP-server SFTPGo 2.5.0
  • Ondersteuning toegevoegd voor wachtwoordbeleid, u kunt bijvoorbeeld vereisten voor wachtwoordsterkte definiëren en de levensduur van wachtwoorden instellen.
  • De mogelijkheid toegevoegd om meldingen over verlopen wachtwoorden weer te geven in de EventManager, een kopieerbewerking geïmplementeerd, ondersteuning toegevoegd voor vooraf opgeroepen acties (pre-*) en handlers die worden geactiveerd door bepaalde acties (bijvoorbeeld een handler toegevoegd die wordt opgeroepen wanneer een gebruiker inlogt).
  • De mogelijkheid toegevoegd om beheerdersrechten aan gebruikers te verlenen.
  • Opdrachten toegevoegd aan de opdrachtregelinterface om het beheerderswachtwoord opnieuw in te stellen en de status van de service te controleren.
  • Ondersteuning toegevoegd voor voorwaardelijke verklaringen bij het bulksgewijs hernoemen van bestanden aan de kant van cloudproviders.
  • Ondersteuning toegevoegd voor het volgen en automatisch opnieuw laden van TLS-certificaten.
  • Mogelijkheid toegevoegd om aangepaste MIME-typen voor WebDAV te definiëren.
  • SSH is standaard ingeschakeld voor interactieve toetsenbordverificatie.
  • In draagbare modus werd het mogelijk om wachtwoorden uit een bestand te laden.
  • Experimentele ondersteuning toegevoegd voor de Terraform-service.

Belangrijkste kenmerken van SFTPGo:

  • Elk account wordt gechroot, waardoor de toegang tot de thuismap van de gebruiker wordt beperkt. Het is mogelijk om virtuele mappen aan te maken die verwijzen naar gegevens buiten de thuismap van de gebruiker.
  • Accounts worden opgeslagen in een virtuele gebruikersdatabase die niet samenvalt met de systeemgebruikersdatabase. SQLite, MySQL, PostgreSQL, bbolt en in-memory storage kunnen worden gebruikt om gebruikersdatabases op te slaan. Er worden middelen geboden voor het in kaart brengen van virtuele en systeemaccounts - directe of willekeurige toewijzing is mogelijk (een systeemgebruiker kan worden toegewezen aan een andere virtuele gebruiker).
  • Publieke sleutel-, SSH-sleutel- en wachtwoordauthenticatie wordt ondersteund (inclusief interactieve authenticatie met toetsenbordwachtwoordinvoer). Het is mogelijk om meerdere sleutels voor elke gebruiker te binden, evenals multifactor- en meertrapsauthenticatie in te stellen (in het geval van succesvolle sleutelauthenticatie kan bijvoorbeeld extra om een ​​wachtwoord worden gevraagd).
  • Het is mogelijk om verschillende authenticatiemethoden voor elke gebruiker te configureren, evenals hun eigen methoden te definiëren die worden geïmplementeerd door externe authenticatieprogramma's aan te roepen (bijvoorbeeld voor authenticatie via LDAP) of verzoeken te verzenden via de HTTP API.
  • Het is mogelijk om externe handlers of HTTP API-aanroepen aan te sluiten om dynamisch de gebruikersinstellingen te wijzigen die worden aangeroepen voordat de gebruiker inlogt. Dynamische creatie van gebruikers bij verbinding wordt ondersteund.
  • Ondersteuning voor individuele quota voor gegevensgrootte en aantal bestanden.
  • Ondersteuning voor bandbreedtebeperking met aparte instellingen voor limieten voor inkomend en uitgaand verkeer, evenals limieten voor het aantal gelijktijdige verbindingen.
  • Toegangscontroletools die werken in relatie tot een gebruiker of map (u kunt de weergave van de lijst met bestanden beperken, uploaden, downloaden, overschrijven, verwijderen, hernoemen of wijzigen van toegangsrechten verbieden, het maken van mappen of symbolische links verbieden, enz.).
  • Voor elke gebruiker kunt u individuele netwerkbeperkingen definiëren, u kunt bijvoorbeeld alleen toegang toestaan ​​vanaf bepaalde IP's of subnetten.
  • Het ondersteunt de koppeling van filters voor downloadbare inhoud met betrekking tot individuele gebruikers en mappen (u kunt bijvoorbeeld het downloaden van bestanden met een bepaalde extensie blokkeren).
  • Handlers die tijdens verschillende bewerkingen worden gestart, kunt u aan het bestand binden (laden, verwijderen, hernoemen, enz.). Naast oproephandlers wordt het verzenden van meldingen in de vorm van HTTP-verzoeken ondersteund.
  • Automatische beëindiging van inactieve verbindingen.
  • Atomaire configuratie-update zonder verbindingen te verbreken.
  • Metrische gegevens leveren voor monitoring in Prometheus.
  • Het HAProxy PROXY-protocol wordt ondersteund om loadbalancing of proxyverbindingen met SFTP/SCP-services te organiseren zonder de kennis van het bron-IP-adres van de gebruiker te verliezen.
  • REST API voor het beheren van gebruikers en mappen, het maken van back-ups en het rapporteren over actieve verbindingen.
  • Webinterface (http://127.0.0.1:8080/web) voor configuratie en monitoring (configuratie via reguliere configuratiebestanden wordt ook ondersteund).
    Vrijgave van SFTP-server SFTPGo 2.5.0
  • Mogelijkheid om instellingen te definiëren in JSON-, TOML-, YAML-, HCL- en envfile-indelingen.
  • Ondersteuning voor verbinding via SSH met beperkte toegang tot systeemopdrachten. Commando's die vereist zijn voor Git (git-receive-pack, git-upload-pack, git-upload-archive) en rsync mogen bijvoorbeeld worden uitgevoerd, evenals verschillende ingebouwde commando's (scp, md5sum, sha*sum, cd, pwd, sftpgo-copy en sftpgo-remove).
  • Draagbare modus voor het delen van één gedeelde map met automatisch genereren van verbindingsreferenties geadverteerd via multicast DNS.
  • Ingebouwd profileringssysteem voor prestatieanalyse.
  • Vereenvoudigd migratieproces voor Linux-systeemaccounts.
  • Logboeken opslaan in JSON-formaat.
  • Ondersteuning voor virtuele mappen (de inhoud van een bepaalde map kan bijvoorbeeld niet uit het lokale bestandssysteem worden gegeven, maar uit externe cloudopslag).
  • Ondersteuning voor cryptfs om gegevens direct transparant te versleutelen bij het opslaan in het bestandssysteem en ontsleutelen bij het uploaden.
  • Ondersteuning voor het doorsturen van verbindingen naar andere SFTP-servers.
  • Mogelijkheid om SFTPGo te gebruiken als een SFTP-subsysteem voor OpenSSH.
  • De mogelijkheid om inloggegevens en vertrouwelijke gegevens in versleutelde vorm op te slaan met behulp van KMS-servers (Key Management Services), zoals Vault, GCP KMS, AWS KMS.
  • Ondersteuning voor tweefactorauthenticatie met eenmalige wachtwoorden met een beperkte levensduur (TOTP, RFC 6238). Applicaties zoals Authy en Google Authenticator kunnen als authenticators worden gebruikt.
  • Uitbreiding van functionaliteit door middel van plugins. Er zijn bijvoorbeeld plug-ins beschikbaar met ondersteuning voor aanvullende sleuteluitwisselingsservices, integratie van het publiceren/abonneren van schema's, opslag en ophalen van informatie over gebeurtenissen in het DBMS.

Bron: opennet.ru

Voeg een reactie