#!/bin/bash
# Copy files between server A and Server B with root privileges
# even though root is prohibited with PermitRootLogin no in /etc/ssh/sshd_config
# On server1 use something like this
# On server2 dst server
# add in /etc/sudoers
# rsyncuser ALL=NOPASSWD:/usr/bin/rsync

user='rsyncuser';
dst_host='$dst_host';
dst_dir='/root/tmp/';
src[1]="/etc/hosts.deny";
src[2]="/etc/sysctl.conf";
src[3]="/etc/samhainrc";
src[4]="/etc/pki/tls/";
src[5]="/usr/local/bin/";
src[6]="/etc/ftp-transfer/";
src[7]="/etc/stunnel/";
src[8]="/etc/ssh/sshd_config";
src[9]="/etc/httpd/";
src[10]="/etc/increments/";
src[11]="/etc/nagios/nrpe.cfg";
src[12]="/etc/sysctl.conf";
src[13]="/etc/logrotate.conf";
src[14]="/etc/logrotate.d/";
src[15]="/etc/lsyncd.conf";
src[16]="/etc/rsyslog.conf";
src[17]="/etc/yum.conf";
#src[18]="/usr/local/bin/";
src[18]="/var/www/vhosts/test/protected/";
src[19]="/var/www/vhosts/test2/protected/";
src[20]="/var/ftp-archive/";
#src[21]="/var/www/vhosts/";
src[21]="/var/ftp/ftp-aaa/upload/pdfimport/";
src[22]="/var/ftp/";
#echo ${src[@]};
for i in $(echo ${src[@]}); do
rsync -aPz -e 'ssh' '--rsync-path=sudo rsync' /var/ftp $rsyncuser@$dst_host:/root/tmp
echo rsync -aPvz --delete --dry-run -e 'ssh' '--rsync-path=sudo rsync' "$i" $rsyncuser@$dst_host:/root/tmp/"$i";
done
echo rsync -aPvz -e 'ssh' '--rsync-path=sudo rsync' --dry-run --delete --exclude 'dialog' -e 'ssh' '--rsync-path=sudo rsync' $rsyncuser@$dst_host:/root/tmp/usr/local/bin
echo rsync -aPvz -e 'ssh' '--rsync-path=sudo rsync' --dry-run --delete -avze ssh /var/www/vhosts/ $rsyncuser@$dst_host:/var/www/vhosts | grep -v statistik

