Hopp til hovedinnhold

Rsync daemon

Kapittel 7

I daemon-modus fungerer Rsync som en server klienter kan koble til. Daemonen er alltid remote, men kan være både kilde eller destinasjon.

Daemon startes med opsjonen

--daemon

Rsync bruker port 873/TCP, som må være åpen på serveren:

sudo ufw allow 873/tcp

Konfigurasjon

Rsync-daemonen må konfigureres i /etc/rsyncd.conf. Hvis filen ikke eksisterer, opprett den:

sudo nano /etc/rsyncd.conf

Innstillingene deles i to deler:

  • global parameters
  • module definitions

Eksempel på konfigurasjon

#global parameters
max connections = 4

default er 0, som betyr ingen grense

#module definitions
[modulename]
path = /home/john/rsync-files
read only = no

default er yes alternativt kan du bruke write only = yes

Forklaring: Write only og read only lar deg bestemme om brukere kan lese eller skrive filer.

Rsync-daemonen jobber som root-bruker, men filoverføringene kjøres som brukeren nobody i gruppen nobody (eller som brukeren nobody i gruppen nogroup på Ubuntu/Debian).

Dette kan føre til problemer med filrettigheter, derfor bør du definere bruker og gruppe direkte i modul-definisjonene:

uid = user
gid = group

Eksempel:

[modulename]
path = /home/john/rsync-files
read only = no
uid = john
gid = john

Dette er greit i mindre oppsett, men i organisasjoner der flere skal jobbe med Rsync bør du opprette en egen rsync-bruker og gruppe.

Starte daemon

For å starte Rsync-daemonen:

sudo systemctl start rsync

Sjekk status:

systemctl status rsync

Høydepunkter

Åpne port i brannmur

sudo ufw allow 873/tcp

Opprett konfigurasjon

sudo nano /etc/rsyncd.conf

Eksempel

[modulename]
path = /home/john/rsync-files
read only = no
uid = john
gid = john

Start daemon

sudo systemctl start rsync

Sjekk status

systemctl status rsync
Robert Kristoffersen
Fullstack-utvikler • Webno