Portál AbcLinuxu, 6. května 2025 01:42

Dotaz: rsync TLS push synchronizacia

2.5.2014 20:24 ivan
rsync TLS push synchronizacia
Přečteno: 434×
Odpovědět | Admin
Ake parametre prikazu rsync + stunnel je potrebne pouzit na:
  1. push synchronizaciu: prikaz rsync sa spusta na klientovi (CLIENT) odkial sa kopiruju subory na server (SERVER:PORT) do modulu MODULE,
  2. modul ma nadefinovanu autentifikaciu (USER, PASS),
  3. je potrebne prenos sifrovat (TLS - stunnel),
  4. vsetko musi byt zadane v CLI, prikaz sa bude spustat v CRONe bez zasahu pouzivatela?
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Jendа avatar 2.5.2014 20:52 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: rsync TLS push synchronizacia
Odpovědět | | Sbalit | Link | Blokovat | Admin
Nešlo by použít SSH, pro které má rsync už vestavěnou podporu?
3.5.2014 12:20 ivan
Rozbalit Rozbalit vše Re: rsync TLS push synchronizacia
Pri pouziti SSH je nutne mat na RSYNC serveri shell konto? Ak bude mat viacero RSYNC modulov (s vlastnou autentifikaciou) musim mat aj zodpovedajuci pocet shell kont?
3.5.2014 14:58 ewew | skóre: 40 | blog: ewewov_blog
Rozbalit Rozbalit vše Re: rsync TLS push synchronizacia

Možno existuje riešenie použitia ssh s zakazaným shellom. Stačí vytvoriť tunnel pomocou príkazu ssh -Nf -L localport:remoteip:remoteport user@serverip a potom nasmerovať rsync na lokálny port a port na serveri. Ďalší krok je pripojenie na rsync s ip localhostu na lokálnom PC. Zadavanie hesla je možné obísť pomocou kľúčov.

Root v linuxe : "Root povedal, linux vykona."
3.5.2014 15:21 Radovan Garabik
Rozbalit Rozbalit vše Re: rsync TLS push synchronizacia
Pri pouziti SSH je nutne mat na RSYNC serveri shell konto?
Ak sa použije štandardný ssh, tak áno (a o iných veľmi neviem). Ja riešim v podobnom prípade bezpečnosť kombináciou rssh (nie je to 100% nepreniknuteľné, ale podstatne lepšie než nechať shell prístup) a pam limitov (nproc robí zázraky).
Ak bude mat viacero RSYNC modulov (s vlastnou autentifikaciou) musim mat aj zodpovedajuci pocet shell kont?
Dá sa autentifikovať ssh kľúčmi, jedno konto môže mať bez problémov viac kľúčov. Otázka je, čo je cieľom...
Jendа avatar 3.5.2014 15:56 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: rsync TLS push synchronizacia
Ja riešim v podobnom prípade bezpečnosť kombináciou rssh
Je vůbec potřeba shell? Nestačí mu dát command="rsync --server"?
Jendа avatar 3.5.2014 15:55 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: rsync TLS push synchronizacia
Ak bude mat viacero RSYNC modulov (s vlastnou autentifikaciou) musim mat aj zodpovedajuci pocet shell kont?
Možná. Dřevorubecké řešení je prostě vytvořit unixová konta. Lepší by bylo emulovat je třeba pomocí pam_nějakásql nebo pam_ldap. Ještě lepší by bylo zjistit, jestli nejde uživatele nasměrovat pomocí "command" parametru v authorized_keys. Pak by stačil jeden uživatel.
6.5.2014 15:01 rws
Rozbalit Rozbalit vše Re: rsync TLS push synchronizacia
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ja to pouzival takhle.

Na RSYNC-SERVER, /etc/rsyncd.conf:
address=127.0.0.1
use chroot=yes
numeric ids=yes
munge symlinks=no
uid=root
gid=root

[MODULE]
path=/PATH
auth users=USER
secrets file=/etc/rsyncd.users
read only=no
write only=no
a seznam uzivatelu v /etc/rsyncd.users:
USER:UserPassword
Na STUNNEL-SERVER-HOST (stunnel server - konvertuje ssl do plain-text), /etc/stunnel4/stunnel.conf
cert = /etc/stunnel/https-to-rsync.cert
key = /etc/stunnel/https-to-rsync.key
sslVersion = SSLv3
chroot = /var/lib/stunnel4/
setuid = stunnel4
setgid = stunnel4
pid = /stunnel4-rsync-ssl-to-rsync.pid
socket = l:TCP_NODELAY=1
socket = r:TCP_NODELAY=1
verify = 3
CAfile = /etc/stunnel/rsync-to-https.cert
[rsync-ssl]
accept  = 874
connect = RSYNC-SERVER:873
Na STUNNEL-CLIENT-HOST (stunnel client - konvertuje plain-text do ssl), /etc/stunnel4/stunnel.conf:
cert = /etc/stunnel/rsync-to-https.cert
key = /etc/stunnel/rsync-to-https.key
sslVersion = SSLv3
chroot = /var/lib/stunnel4/
setuid = stunnel4
setgid = stunnel4
pid = /stunnel4-rsync-to-rsync-ssl.pid
socket = l:TCP_NODELAY=1
socket = r:TCP_NODELAY=1
verify = 3
CAfile = /etc/stunnel/https-to-rsync.cert
client = yes
[rsync-ssl]
accept  = 874
connect = STUNNEL-SERVER-HOST:874

Na rsync clientovi (pouzij rsync prepinace, ktere potrebujes):
RSYNC_PASSWORD=UserPassword rsync -a --stats --partial --delete SRC-DIR rsync://USER@STUNNEL-CLIENT-HOST:874/MODULE/DST-DIR

Samozrejme muzes STUNNEL-SERVER-HOST config nastavit na RSYNC-SERVERu a STUNNEL-CLIENT-HOST konfiguraci muzes mit i na rsync clientovi. Ale muzes mit ty stunnely na zvlastnich masinach a pak mit na ruznych portech na stunnel clientech ruznych tunely na ruzny cilovy stunnel servery, a na jednom stunnel serveru muzes mit presmerovani na ruzne rsync cilove servery, pokud jsou v jedne "bezpecne" siti, kde ti nebude vadit, ze jdou data plain-text.

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.