ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π²ΡΠΏΡΡΠΊ ΡΠ΅ΡΠ²Π΅ΡΠ° SFTPGo 2.2, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅Π³ΠΎ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠ΄Π°Π»ΡΠ½Π½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ°ΠΉΠ»Π°ΠΌ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠ² SFTP, SCP/SSH, Rsync, HTTP ΠΈ WebDav. Π ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ SFTPGo ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Git-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» SSH. ΠΠ°Π½Π½ΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΎΡΠ΄Π°Π²Π°ΡΡΡΡ ΠΊΠ°ΠΊ Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΡΠ°ΠΊ ΠΈ ΠΈΠ· Π²Π½Π΅ΡΠ½ΠΈΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡ, ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΡ Ρ Amazon S3, Google Cloud Storage ΠΈ Azure Blob Storage. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ Π² Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅. ΠΠ»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΉ Π±Π°Π·Ρ ΠΈ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π‘Π£ΠΠ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ SQL ΠΈΠ»ΠΈ ΡΠΎΡΠΌΠ°ΡΠ° ΠΊΠ»ΡΡ/Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ PostgreSQL, MySQL, SQLite, CockroachDB ΠΈΠ»ΠΈ bbolt, Π½ΠΎ ΠΈΠΌΠ΅Π΅ΡΡΡ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, Π½Π΅ ΡΡΠ΅Π±ΡΡΡΠ°Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π²Π½Π΅ΡΠ½Π΅ΠΉ ΠΠ. ΠΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° ΡΠ·ΡΠΊΠ΅ Go ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ GPLv3.
Nooca cusub:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π΄Π²ΡΡ ΡΠ°ΠΊΡΠΎΡΠ½ΠΎΠΉ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΎΠ΄Π½ΠΎΡΠ°Π·ΠΎΠ²ΡΡ ΠΏΠ°ΡΠΎΠ»Π΅ΠΉ Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΌ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΠΆΠΈΠ·Π½ΠΈ (TOTP, RFC 6238). Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊ Authy ΠΈ Google Authenticator.
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ ΡΠ΅ΡΠ΅Π· ΠΏΠ»Π°Π³ΠΈΠ½Ρ. Π‘ΡΠ΅Π΄ΠΈ ΡΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ²: ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΎΠ±ΠΌΠ΅Π½Π° ΠΊΠ»ΡΡΠ°ΠΌΠΈ, ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ ΡΡ Π΅ΠΌΡ Publish/Subscribe, Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠΈΡΠΊ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΡΠΎΠ±ΡΡΠΈΡΡ Π² Π‘Π£ΠΠ.
- Π REST API Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΠΎ ΠΊΠ»ΡΡΠ°ΠΌ, ΠΏΠΎΠΌΠΈΠΌΠΎ ΡΠΎΠΊΠ΅Π½ΠΎΠ² JWT, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ»ΠΈΡΠΈΠΊ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ (ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΆΠΈΠ·Π½ΠΈ Π΄Π°Π½Π½ΡΡ ) Π² ΠΏΡΠΈΠ²ΡΠ·ΠΊΠ΅ ΠΊ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°ΠΌ ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°Π½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Swagger UI Π΄Π»Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ ΠΏΠΎ ΡΠ΅ΡΡΡΡΠ°ΠΌ API Π±Π΅Π· ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Π½Π΅ΡΠ½ΠΈΡ ΡΡΠΈΠ»ΠΈΡ.
- Π web-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π·Π°ΠΏΠΈΡΠΈ (Π·Π°Π³ΡΡΠ·ΠΊΠ° ΡΠ°ΠΉΠ»ΠΎΠ², ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ², ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅), ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ±ΡΠΎΡΠ° ΠΏΠ°ΡΠΎΠ»Ρ Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ email, ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Ρ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΠΏΡΠΎΡΠΌΠΎΡΡΡΠΈΠΊ PDF-Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ². ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ HTTP-ΡΡΡΠ»ΠΎΠΊ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π½Π΅ΡΠ½ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°ΠΌ, Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ Π·Π°Π΄Π°Π½ΠΈΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΡΠΎΠ»Ρ Π΄ΠΎΡΡΡΠΏΠ°, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΏΠΎ IP-Π°Π΄ΡΠ΅ΡΠ°ΠΌ, Π·Π°Π΄Π°Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΆΠΈΠ·Π½ΠΈ ΡΡΡΠ»ΠΊΠΈ ΠΈ Π»ΠΈΠΌΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΡΠ»Π° Π·Π°Π³ΡΡΠ·ΠΎΠΊ.
Astaamaha ugu muhiimsan ee SFTPGo:
- Akoon kasta waa la go'doomiyay, iyada oo xaddidaysa gelitaanka tusaha guriga ee isticmaalaha. Waa suurtogal in la abuuro hagayaal macmal ah oo tixraacaya xogta ka baxsan hagaha guriga ee isticmaalaha.
- Xisaabaadka waxa lagu kaydiyaa kaydka macluumaadka isticmaalaha macmalka ah ee aan ka dhexayn xogta isticmaalaha nidaamka. SQLite, MySQL, PostgreSQL, bbolt iyo kaydinta xusuusta gudaha waxaa loo isticmaali karaa in lagu kaydiyo xogta isticmaalaha. Macnaha waxa la bixiyaa khariidaynta xisaabaadka farsamada iyo nidaamka - khariidad toos ah ama aan sabab lahayn waa suurtogal
- Furaha dadweynaha, furaha SSH, iyo xaqiijinta erayga sirta ah waa la taageerayaa (oo ay ku jiraan sugida is dhexgal ee gelitaanka erayga sirta ah ee kiiboodhka). Waa suurtogal in la xidho dhawr furayaal isticmaale kasta, iyo sidoo kale in la dejiyo xaqiijinta arrimo badan iyo marxalado badan (tusaale ahaan, haddii lagu guuleysto xaqiijinta furaha, furaha sirta ah ayaa sidoo kale la codsan karaa).
- Waa suurtagal in loo habeeyo habab kala duwan oo xaqiijin ah isticmaale kasta, iyo sidoo kale qeexida hababkooda ay fuliyeen iyaga oo wacaya barnaamijyada xaqiijinta dibadda (tusaale ahaan, xaqiijinta iyada oo loo marayo LDAP) ama u dirista codsiyada HTTP API.
- Waa suurtogal in lagu xidho gacan-qablayaasha dibadda ama HTTP API wicitaannada si firfircooni leh loo beddelo goobaha adeegsadaha ee loo yaqaan ka hor intaan isticmaaluhu soo gelin. Waxay taageertaa abuurista isticmaale firfircoon ee isku xirka.
- Taageerada kootada gaarka ah ee cabbirka xogta iyo tirada faylasha.
- Taageerada xaddidaadda xajmiyeedka oo leh goobo kala duwan oo loogu talagalay xaddidaadda taraafikada soo galaya iyo kuwa baxaya, iyo sidoo kale xaddididda tirada isku xirka isku mar.
- Helitaanka qalabka xakamaynta ee u dhaqma ee la xidhiidha isticmaalaha ama tusaha (waxaad xaddidi kartaa daawashada liiska faylalka, mamnuuci kartaa raritaanka, soo dejinta, dib u qorida, tirtirida, beddelka ama bedelida xuquuqaha gelitaanka, mamnuucida abuurista hagayaasha ama isku xidhka astaanta, iwm.).
- Isticmaale kasta, waxaad qeexi kartaa xaddidaadaha shabakadaha gaarka ah, tusaale ahaan, waxaad kaliya u oggolaan kartaa gelitaanka IP-yada qaarkood ama shabakadaha hoose.
- Waxay taageertaa isku xirka filtarrada waxyaabaha la soo dejisan karo ee la xiriira isticmaaleyaasha iyo hagaha gaarka ah (tusaale, waxaad xannibi kartaa soo dejinta faylalka leh kordhin gaar ah).
- Waxaad ku xidhi kartaa maamulayaasha la bilaabay hawlgallada kala duwan ee faylka (loading, deleted, renameing, etc.). Marka laga soo tago wacitaanka maamulayaasha, dirida ogeysiisyada qaabka codsiyada HTTP waa la taageeray.
- Joojinta tooska ah ee xidhiidhada aan shaqayn
- Cusboonaysiinta qaabeynta atomiga iyada oo aan la jebin isku xirka
- Bixinta cabbirada la socodka Prometheus.
- Hab-maamuuska HAProxy PROXY waxa la taageeraa si loo habeeyo isu dheelitirka culayska ama isku xidhka wakiillada adeegyada SFTP/SCP iyada oo aan lumin aqoonta isha IP-ga ee isticmaalaha.
- REST API ee lagu maareeyo isticmaalayaasha iyo hagayaasha, abuurista kaydin iyo ka warbixinta xidhiidhada firfircoon.
- Isku xirka shabakadda (http://127.0.0.1:8080/web) ee qaabeynta iyo la socodka (habaynta iyada oo loo marayo faylalka qaabeynta caadiga ah ayaa sidoo kale la taageerayaa).
- Awoodda lagu qeexo habaynta JSON, TOML, YAML, HCL iyo qaababka envfile.
- Taageerada isku xidhka SSH oo leh xaddidan gelitaanka amarrada nidaamka. Tusaale ahaan, amarrada looga baahan yahay Git (git-receive-pack, git-upload-pack, git-upload-archive) iyo rsync waa la oggol yahay inay shaqeeyaan, iyo sidoo kale dhowr amar oo gudaha ah (scp, md5sum, sha * sum, cd, pwd, sftpgo-koobi iyo sftpgo-saar).
- Habka la qaadi karo ee wadaaga hal buug oo la wadaago oo leh jiil toos ah oo aqoonsiga xidhiidhka oo lagu xayeysiiyay DNS-ka multicast.
- Nadaamka sifada lagu dhex dhisay ee falanqaynta waxqabadka.
- Habka guuritaanka koontada nidaamka Linux ee la fududeeyay.
- Ku kaydinta diiwaannada qaabka JSON
- Taageerada hagayaasha farsamada (tusaale ahaan, waxa ku jira tuse gaar ah lagama bixin karo nidaamka faylalka deegaanka, laakiin kaydinta daruuraha dibadda).
- Taageerada cryptfs si ay si hufan u sireeyaan xogta duullimaadka marka lagu kaydinayo nidaamka faylka oo ay furto marka la soo shubayo.
- Taageerada u gudbinta isku xirka serfarada kale ee SFTP
- Awoodda loo isticmaalo SFTPGo sidii nidaam hoosaad SFTP ah oo loogu talagalay OpenSSH.
- Awoodda lagu kaydiyo aqoonsiga iyo xogta sirta ah qaab sir ah iyadoo la isticmaalayo KMS server-yada (Adeegyada Maareynta Furaha), sida Vault, GCP KMS, AWS KMS.
Source: opennet.ru