Portál AbcLinuxu, 9. května 2024 14:23


Dotaz: sshd_config: Match dle keyfile

11.9.2019 20:08 Deryl | skóre: 11
sshd_config: Match dle keyfile
Přečteno: 492×
Odpovědět | Admin

Ahoj,

každý vzdálený počítač má vygenerován vlastní klíč, jehož veřejná část je na serveru v .ssh/authorized_keys a který se použije na připojení adresáře ze serveru:

sshfs -oIdentityFile=/path/to/id_rsa root@server:/shared/path /mnt/point

Rád bych omezil použití těchto klíčů na přístup pouze k sshfs daného adresáře. Toho lze docílit v /etc/ssh/sshd_config na serveru:

Match User someuser 
ChrootDirectory /chroot/%u
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no

Potíž je, že jsem nenašel/nepochopil, zda lze nějakým způsobem filtrovat nikoli podle User, Host, atd. ale podle public key. Lze to?

Pokud by to nešlo v sshd_conf, tak bych mohl použít COMMAND=xxxxx v authorized_keys, ale netuším, co se na serveru spouští za příkaz při výše uvedeném sshfs...


Řešení dotazu:


Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

12.9.2019 13:55 NN
Rozbalit Rozbalit vše Re: sshd_config: Match dle keyfile
Odpovědět | | Sbalit | Link | Blokovat | Admin
Predpokladam, ze zadny ze vzdalenych PC se nepripojuje jako root a kazde vzdalene PC se pripojuje jako jiny uzivatel. Potom to vubec nemusis resit a kombinace Match User + Host + ChrootDirectory musis bohate stacit.
13.9.2019 16:08 Deryl | skóre: 11
Rozbalit Rozbalit vše Re: sshd_config: Match dle keyfile

Jedná se o scénář: borgmatic na všech počítačích v síti posílá zálohy na server. Stejným způsobem je zálohován i server, jen lokálně.

  • Vzdálené počítače se na server přihlásí klíčem (každý počítač svůj). Klíč je omezen jen na spuštění `borg serve` a jen na konkrétní cestu k repu.
  • Pro zálohy se sdílí jedno REPO (kvůli deduplikaci).
  • To bohužel způsobí, že se musí přepočítávat Borg cache pro repo na každém počítači při spuštění zálohy - časově náročná operace.
  • Rád bych to obešel tím, že všechny počítače budou sdílet Borg cache ze serveru (přes sshfs).

Na vzdálených počítačích běží borgmatic jako root. Původní záměr byl, že i na serveru poběží `borg serve` jako root (REPO je vlastěno rootem) a BORG_CACHE se připojí pod rootem (protože je též vlastněna rootem).

Nicméně, asi na serveru vytvořím nového uživatele vlastnícího BORG_REPO a BORG_CACHE, v chrootu přes sshd_config. Bude to snazší než si vytvářet vlastní wrapper pro klíč uživatele přihlášeného pod rootem. Předpokládám, že lokální (na serveru) borgmatic půjde prohnat přes localhost loopback stejným stylem jako vzdálené počítače.

24.2.2020 17:16 majales | skóre: 29 | blog: Majales
Rozbalit Rozbalit vše Re: sshd_config: Match dle keyfile
Podařilo se vám s to s tou sdílenou Borg cache?
24.2.2020 18:26 Deryl | skóre: 11
Rozbalit Rozbalit vše Re: sshd_config: Match dle keyfile

Ano. Zatím nechávám borgmatic proběhnout každou noc. Pro připojení BORG_CACHE ze serveru jsem nakonec zvolil CIFS (Samba) namísto SSHFS.

Ale. Výhledově to chci předělat:

  • neb sdílení BORG_CACHE (shodného BORG_REPO) mezi několika vzdálenými počítači není doporučeno z pohledu bezpečnosti proti útoku (je to někde v dokumentaci BORG Backup).
  • a proto každý počítač bude mít svou vlastní BORG_REPO, tedy i svou jedinečnou BORG_CACHE (u sebe).
  • z hlediska deduplikace už to není takový problém, neb většinu dat uživatelů jsem mezitím přestěhoval na server do Nextcloudu - tedy pokud data náhodou nesdílí přímo přes Nextcloudu, tak je alespoň budu deduplikovat v BORG_REPO toho serveru.

Tedy cílový stav:

  • extra uživatel "borgbackup" na serveru pro proces "borg serve" s přístupem pouze na disk se zálohou.
  • borgmatic běžící s právy roota na každém počítači vč. serveru přihlašující se pomocí SSH jako borgbackup@server pomocí klíče.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.