Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
2> server1/mirror:
yum install rsync
3> server1:
useradd -d /home/rsync -m -s /bin/bash rsync
passwd rsync
4> mirror:
rsync -avz -e ssh rsync@203.197.32.159:/var/www/Project
/samba1/LiveBackup/Baybuy
<-- yes
5> mirror:
mkdir /root/rsync
ssh-keygen -t dsa -b 2048 -f /root/rsync/mirror-rsync-key
It is important that you do not enter a passphrase otherwise the mirroring will
not work without human interaction so simply hit enter!
6> mirror:
7> server1:
8> server1:
(Still as someuser(i.e.rsync))
vi /home/rsync/.ssh/authorized_keys
Now we want to allow connections only from mirror.example.com, and the connecting
user should be allowed to use only rsync, so we add
command="/home/someuser(rsync)/rsync/checkrsync",from="192.168.0.2",no-port-
forwarding,no-X11-forwarding,no-pty
9> server1:
vi /home/rsync/.ssh/authorized_keys
10> server1:
vi /home/rsync/.ssh/authorized_keys
command="/home/someuser/rsync/checkrsync",from="mirror.example.com",no-port-
forwarding,no-X11-forwarding,no-pty ssh-dss AAAAB3NzaC1kc3MAAA[...]lSUom root@
mirror
11> server1:
mkdir ~/rsync
vi ~/rsync/checkrsync
#!/bin/sh
case "$SSH_ORIGINAL_COMMAND" in
*\&*)
echo "Rejected"
;;
*\(*)
echo "Rejected"
;;
*\{*)
echo "Rejected"
;;
*\;*)
echo "Rejected"
;;
*\<*)
echo "Rejected"
;;
*\`*)
echo "Rejected"
;;
rsync\ --server*)
$SSH_ORIGINAL_COMMAND
;;
*)
echo "Rejected"
;;
esac
mirror:
13> mirror:
crontab -e
and create a cron job like this:
30 10 * * 1 sh /home/mes_admin/backup
On server:
cd /home/rsync
vi dbbackup
30 19 * * * sh /home/rsync/dbbackup