Uživatelské nástroje

Nástroje pro tento web


Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

cs:public:cloud_backups_access [2020/06/05 08:38] (aktuální)
jose1711 vytvořeno
Řádek 1: Řádek 1:
 +Zde je popsán postup, jakým se možno dostat ke cloudovým zálohám i bez použití TO. Tímto způsobem můžeš zkontrolovat,​ co je vlastně obsahem záloh nebo obnovit jenom konkrétní soubor. Postup byl testován pouze na Omnii.
  
 +Potřebuješ 2 informace:
 +
 +  * ''​REG_CODE'':​ registrační kód (''/​usr/​share/​server-uplink/​registration_code''​)
 +  * heslo k zálohám nastavené ve Forisu
 +
 +Nejprve zjistíš id zálohy, kterou chceš stáhnout
 +
 +  REG_CODE=$(cat /​usr/​share/​server-uplink/​registration_code)
 +  URL="​https://​rb.turris.cz"​
 +  ​
 +  # list backups with ids
 +  curl '​Content-Type:​ application/​json' ​ -H "​Authorization:​Token ${REG_CODE}"​ "​${URL}/​backups/"​
 +
 +Poté nastavíš proměnnou ''​id''​ a zálohu si vyžádáš:​
 +
 +  # download a backup with specified id
 +  id=XXXXXX
 +  curl -o turris_cloud_backup.tbz.gpg -H '​Content-Type:​ application/​json'​ -H "​Authorization:​Token ${REG_CODE}"​ "​${URL}/​backups/​${id}/"​
 +  ​
 +Nyní máš staženou zálohu v zašifrované formě. Pro dešifrování je nutné použít heslo, resp. jeho zakryptovanou formu.
 +
 +  python
 +  import pbkdf2
 +  pbkdf2.crypt('​MOJEHESLO'​)
 +
 +Pokud heslo neznáš, ale máš přístup k Omnii, tak ho lze (v již zakryptovaném tvaru) nalézt v ''/​etc/​config/​ssbackups''​.
 +
 +  echo '​$ENC$HESLO'​ | gpg --batch -d -o turris_cloud_backup.tbz --passphrase-fd 0 turris_cloud_backup.tbz.gpg
 +  ​
 +=== Stažení zálohy na TO ===
 +
 +Celý postup výše je výrazně jednodušší pokud Omnie běží a máš k ní přístup:
 +  # python3
 +  import ssbackups_client
 +  ​
 +  reg_code = ssbackups_client.get_registration_code('/​usr/​share/​server-uplink/​registration_code'​)
 +  url = "​https://​rb.turris.cz"​
 +  ssbackups_client.backup_list(reg_code,​ url)
 +  latest_backup_id = ssbackups_client.backup_list(reg_code,​ url)[0]['​id'​]
 +  password = [x.split()[-1].replace("'",​ ""​) for x in open('/​etc/​config/​ssbackups'​).readlines() if '​option password'​ in x][0]
 +  ssbackups_client.backup_retrieve(reg_code,​ url, latest_backup_id,​ '/​tmp/​mybackup.tbz',​ password)
 +  ​
 +Výsledkem je dekryptovaný archiv v ''/​tmp/​mybackup.tbz''​.
 +
 +Zdroj: https://​forum.turris.cz/​t/​ako-sa-da-dostat-ku-cloudovym-zaloham/​11672/​2