Portál AbcLinuxu, 13. května 2025 02:59
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:
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ě.
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.
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:
Tedy cílový stav:
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.