Az SFTP-kiszolgáló SFTPGo 1.0 kiadása

Megtörtént a szerver első jelentős kiadása SFTPGo 1.0, amely lehetővé teszi a fájlok távoli elérésének megszervezését az SFTP, SCP/SSH és Rsync protokollok használatával. Az SFTPGo többek között arra is használható, hogy az SSH-protokoll használatával hozzáférést biztosítsanak a Git-tárolókhoz. Az adatok a helyi fájlrendszerből és az Amazon S3-mal és a Google Cloud Storage-gal kompatibilis külső tárhelyről is átvihetők. A felhasználói adatbázis és a metaadatok tárolására SQL-t vagy kulcs/érték formátumot támogató DBMS-eket használnak, például PostgreSQL 9.4+, MySQL 5.6+, SQLite 3.x vagy bbolt 1.3.x. A metaadatok RAM-ban való tárolására is van mód, amelyhez nincs szükség külső adatbázis csatlakoztatására. A projekt kódja a Go és nyelven van írva forgalmazza GPLv3 licenccel.

Főbb jellemzői:

  • Minden fiók chrootolt, ami korlátozza a hozzáférést a felhasználó kezdőkönyvtárához. Lehetőség van virtuális könyvtárak létrehozására, amelyek a felhasználó saját könyvtárán kívüli adatokra hivatkoznak.
  • A fiókokat a rendszer egy virtuális felhasználói adatbázisban tárolja, amely nem fedi át a rendszer felhasználói adatbázisát. Felhasználói adatbázisok tárolására SQLite, MySQL, PostgreSQL, bbolt és memórián belüli tárolás használható. Lehetőségek biztosítottak a virtuális és rendszerfiókok leképezésére – közvetlen vagy véletlenszerű leképezés lehetséges (egy rendszerfelhasználó hozzárendelhető egy másik virtuális felhasználóhoz).
  • A nyilvános kulcsokkal, SSH-kulcsokkal és jelszavakkal történő hitelesítés támogatott (beleértve az interaktív hitelesítést a billentyűzetről beírt jelszóval). Lehetőség van minden felhasználóhoz több kulcs kötésére, valamint többtényezős és többlépcsős hitelesítés beállítására (például sikeres kulcshitelesítés esetén további jelszó is kérhető).
  • Minden felhasználó számára lehetőség van különböző hitelesítési módszerek konfigurálására, valamint saját módszerek definiálására, amelyeket külső hitelesítő programok hívásával (például LDAP-n keresztüli hitelesítéshez) vagy HTTP API-n keresztüli kérések küldésével valósítanak meg.
  • Lehetőség van külső kezelők vagy HTTP API-hívások csatlakoztatására a felhasználói paraméterek dinamikus megváltoztatásához, amelyeket a felhasználó bejelentkezése előtt hívnak meg. Támogatott dinamikus felhasználók létrehozása csatlakozáskor.
  • Támogatja az adatméretre és a fájlok számára vonatkozó egyedi kvótákat.
  • A sávszélesség korlátozásának támogatása a bejövő és kimenő forgalom korlátozásainak külön konfigurációjával, valamint az egyidejű kapcsolatok számának korlátozásával.
  • Hozzáférés-szabályozási eszközök, amelyek egy felhasználóhoz vagy könyvtárhoz kapcsolódnak (korlátozhatja a fájllista megtekintését, tilthatja a feltöltést, letöltést, felülírást, törlést, átnevezést vagy hozzáférési jogok módosítását, megtilthatja könyvtárak vagy szimbolikus hivatkozások létrehozását stb.).
  • Minden felhasználó számára egyedi hálózati korlátozásokat határozhat meg, például csak bizonyos IP-címekről vagy alhálózatokról engedélyezheti a bejelentkezést.
  • Támogatja a szűrők összekapcsolását a letöltött tartalomhoz az egyes felhasználókhoz és könyvtárakhoz (például blokkolhatja a fájlok letöltését bizonyos kiterjesztéssel).
  • Lehetőség van a különféle műveletek során elindított kezelők fájlhoz kötésére (letöltés, törlés, átnevezés stb.). A kezelők hívása mellett az értesítések HTTP kérések formájában történő küldése is támogatott.
  • Az inaktív kapcsolatok automatikus megszakítása.
  • Atomic konfiguráció frissítés a kapcsolatok megszakítása nélkül.
  • Gondoskodás mérőszámok a figyeléshez a Prometheusban.
  • A HAProxy PROXY protokoll támogatja a terheléselosztást vagy a proxy kapcsolatokat az SFTP/SCP szolgáltatásokhoz anélkül, hogy elveszne a felhasználó forrás IP-címére vonatkozó információ.
  • REST API felhasználók és címtárak kezelésére, biztonsági másolatok készítésére és jelentések készítésére az aktív kapcsolatokról.
  • Webes felület (http://127.0.0.1:8080/web) a konfigurációhoz és a felügyelethez (a szokásos konfigurációs fájlokon keresztül történő konfigurálás is támogatott).
  • Lehetőség a beállítások megadására JSON, TOML, YAML, HCL és envfile formátumokban.
  • támogatás SSH-n keresztüli kapcsolatok korlátozott hozzáféréssel a rendszerparancsokhoz. Például a Githez (git-receive-pack, git-upload-pack, git-upload-archive) és az rsynchez szükséges parancsok, valamint számos beépített parancs (scp, md5sum, sha*sum) futtatása engedélyezett. , cd, pwd, sftpgo-copy és sftpgo-remove).
  • rezsim hordozható egy közös címtár megosztása a multicast DNS-en keresztül hirdetett csatlakozási hitelesítő adatok automatikus generálásával.
  • Beágyazott rendszer profilalkotás teljesítményelemzéshez.
  • Egyszerűsített folyamat Linux rendszerfiókok migrációja.
  • tárolás JSON formátumban naplózza.

Forrás: opennet.ru

Hozzászólás