Показаны сообщения с ярлыком networks. Показать все сообщения
Показаны сообщения с ярлыком networks. Показать все сообщения

четверг, 29 августа 2019 г.

cisco l2tp ipsec vpn, разграничения для клиентов по подсетям

В офисе завалялся Cisco router 2611, это модель начала 2000 годов, решили сделать из него VPN gate. Скорее всего конфиг подойдет и для других Cisco. На нашей 2611 System image file is "flash:c2600-advsecurityk9-mz.124-18.bin", на всякий случай.
Суть: пользователь i_ivanov подключаясь получает адрес из пула VPN-POOL-1,
пользователь n_romanov подключаясь получает адрес из пула VPN-POOL-2.

Для этих пулов разные права доступа - см. ip access-list extended office_and_tech.
vpn-gate#sh run
Building configuration...

Current configuration : 3734 bytes
!
version 12.4
service timestamps debug datetime msec
service timestamps log datetime msec
service password-encryption
!
hostname vpn-gate
!
boot-start-marker
boot-end-marker
!
logging buffered 4096 debugging
enable secret 5 $1$Q/p7$AFkWerymo9xG1/h.g/NdB3.
!
aaa new-model
!
!
aaa authentication ppp VPDN_AUTH local
aaa authorization network VPDN_AUTH local
!
aaa attribute list ATTR-LIST-2
 attribute type addr-pool "VPN-POOL-2" service ppp protocol ip
!
aaa attribute list ATTR-LIST-1
 attribute type addr-pool "VPN-POOL-1" service ppp protocol ip
!
aaa session-id common
no network-clock-participate slot 1
no network-clock-participate wic 0
ip cef
!
!
ip auth-proxy max-nodata-conns 3
ip admission max-nodata-conns 3
!
!
ip domain name domain.name.local
vpdn enable
!
vpdn-group L2TP
! Default L2TP VPDN group
 description Default L2TP VPDN group
 accept-dialin
  protocol l2tp
  virtual-template 1
 no l2tp tunnel authentication
!
vpdn-group L2TP2
 description Default L2TP2 VPDN group
 accept-dialin
  protocol l2tp
  virtual-template 2
 no l2tp tunnel authentication
!
!
!
!
!
username admin privilege 15 secret 5 $1$N5A.$2H.pEryBrQwmTFiAD93/
username i_ivanov password 7 1133101712051F5A53333E
username i_ivanov aaa attribute list ATTR-LIST-1
username j_johnson password 7 1423171915087205147D040725
username i_ivanov aaa attribute list ATTR-LIST-2
username v_lenin password 7 10400810161E17532D
username v_lenin aaa attribute list ATTR-LIST-1
username l_trotskiy password 7 09674F1B1808151D075F500A
username l_trotskiy aaa attribute list ATTR-LIST-1
username n_romanov password 7 013B14100C535502356C
username n_romanov aaa attribute list ATTR-LIST-2
username queen_victoria password 7 09494B1A1C0C0F1B0E
username queen_victoria aaa attribute list ATTR-LIST-1
archive
 log config
  logging enable
  hidekeys
 path tftp://192.168.2.1/cisco_2611/cisco_2611
 write-memory
 time-period 10080
!
!
controller E1 0/0
!
ip ssh version 2
!
!
crypto isakmp policy 1
 encr 3des
 authentication pre-share
 group 2
crypto isakmp key YOUR_SECRET_KEY address 0.0.0.0 0.0.0.0
!
!
crypto ipsec transform-set L2TP-Set2 esp-3des esp-sha-hmac
 mode transport
!
crypto dynamic-map dyn-map 10
 set nat demux
 set transform-set L2TP-Set2
!
!
crypto map outside_map 65535 ipsec-isakmp dynamic dyn-map
!
!
!
interface Loopback1
 description loopback for IPsec-pool
 ip address 192.168.19.1 255.255.255.255
!
interface Loopback2
 description loopback for IPsec-pool2
 ip address 192.168.19.65 255.255.255.255
!
interface FastEthernet0/0
 ip address 8.8.8.8 255.255.255.252
 ip access-group office_and_tech out
 no ip route-cache cef
 duplex auto
 speed auto
 crypto map outside_map
!
interface FastEthernet0/1
 no ip address
 shutdown
 duplex auto
 speed auto
!
interface Virtual-Template1
 ip unnumbered Loopback1
 peer default ip address pool VPN-POOL-1
 ppp authentication ms-chap-v2 VPDN_AUTH
 ppp authorization VPDN_AUTH
!
interface Virtual-Template2
 ip unnumbered Loopback2
 peer default ip address pool VPN-POOL-2
 ppp authentication ms-chap-v2 VPDN_AUTH
 ppp authorization VPDN_AUTH
!
ip local pool VPN-POOL-1 192.168.19.5 192.168.19.62
ip local pool VPN-POOL-2 192.168.19.70 192.168.19.126
ip forward-protocol nd
ip route 0.0.0.0 0.0.0.0 8.8.8.1
!
no ip http server
no ip http secure-server
!
ip access-list extended office_and_tech
 permit ip host 8.8.8.8 any
 permit ip 192.168.19.0 0.0.0.255 172.16.0.0 0.15.255.255
 permit ip 192.168.19.0 0.0.0.63 192.168.0.0 0.0.255.255
!
access-list 23 permit 192.168.2.0 0.0.0.255
!
!
control-plane
!
!
!
!
line con 0
line aux 0
line vty 0 4
 access-class 23 in
 exec-timeout 60 0
 logging synchronous
 transport input ssh
 transport output ssh
!
!
end


среда, 16 января 2019 г.

Назначение и удаление привилегий на коммутаторе Cisco 2960.

Добавить привилегии:
privilege interface level 4 shutdown
privilege interface level 4 switchport
privilege interface level 4 description
privilege configure level 4 interface
privilege exec level 4 vlan
privilege exec level 4 write memory
privilege exec level 4 write
privilege exec level 4 configure terminal
privilege exec level 4 configure
privilege exec level 4 show running-config
privilege exec level 4 show


Удалить имеющиеся привилегии можно так:
privilege exec reset configure
privilege exec reset vlan
privilege exec reset write
privilege exec reset show

privilege interface reset shutdown
privilege interface reset description
privilege interface reset switchport
privilege configure reset interface

вторник, 5 июня 2018 г.

Настройка сети в Ubuntu-server 18.04

Вместо привычного /etc/network/interfaces, в Ubuntu 18.04 сеть
настраивается в файлах в каталоге /etc/netplan/. Вот так, например,
выглядит настройка статического адреса для интерфейса enp0s3.

cd /etc/netplan/
cat 01-netcfg.yaml

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
    enp0s3:
     dhcp4: no
     addresses: [192.168.1.222/24]
     gateway4: 192.168.1.1
     nameservers:
       addresses: [8.8.8.8,8.8.4.4]


Так настраивается динамика:

cat 01-netcfg.yaml
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
    enp0s3:
      dhcp4: yes


Важно соблюдение отступов!


После настройки сделать:


sudo netplan apply

понедельник, 28 мая 2018 г.

bonding

Делалось на Ubuntu 14.04:

1. apt-get install ifenslave
2. echo 'bonding' > /etc/modules
2. nano /etc/network/interfaces

# The loopback network interface
auto lo
iface lo inet loopback

auto bond0
iface bond0 inet static
    address 192.168.1.225
    netmask 255.255.255.128
    network 192.168.1.128
    broadcast 192.168.1.255
    gateway 192.168.1.129
    dns-nameservers 192.168.1.1 192.168.1.2
    domain domain.local
    search domain.local
    slaves eth0 eth1
    bond_mode 4
    bond_xmit_hash_policy layer2+3
    bond_miimon 100
    bond_downdelay 200
    bond_updelay 200

auto eth0
iface eth0 inet manual
        bond-master bond0

auto eth1
iface eth1 inet manual
        bond-master bond0


4. shutdown -r now

На Cisco 2960:

interface Port-channel6
 description bkpserv
 switchport access vlan 108
 switchport mode access

interface GigabitEthernet1/0/14
 switchport access vlan 2
 switchport mode access
 channel-protocol lacp
 channel-group 6 mode active

interface GigabitEthernet1/0/15
 switchport access vlan 2
 switchport mode access
 channel-protocol lacp
 channel-group 6 mode active


вторник, 13 марта 2018 г.

Multicast вещание

Multicast вещание нескольких видео файлов на multicast IP-адреса 239.255.1.1 и 239.255.1.2

0. apt-get install vlc

Вещаем по RTP, консоль сервера:
===========
1. vlc --ttl 12 --color -I telnet --telnet-password 123

2. Открываем вторую консоль на том же хосте
telnet localhost 4212

3.
> new channel1 broadcast enabled
> setup channel1 input /path/to/file_1.avi
> setup channel1 output #rtp{mux=ts,dst=239.255.1.1,sap,name="Channel1"}
> new channel2 broadcast enabled
> setup channel2 input /path/to/file_2.avi
> setup channel2 output #rtp{mux=ts,dst=239.255.1.2,sap,name="Channel2"}
> control channel1 play
> control channel2 play

На клиенте:
========
запускаем vlc проигрыватель
нажимаем «Инструменты» -> «Настройки», там, в нижнем левом углу жмем в «Показывать настройки» на «Все», затем раскрываем «Вывод потока», а там ищем «Модули вывода», в поле «Интерфейс вывода IPv4 multicast» пишем IP-адрес, который прописан на вашей сетевой карте ( смотрящей в сторону сервера вещающего поток), жмем «Сохранить»

Для просмотра потока по RTP:

После того как выполнили настройки: «Файл» ->«Открыть URL»
в строке MRL пишем:
rtp://@239.255.1.1:5004 (что бы посмотреть видео из файла file_1.avi)
или
rtp://@239.255.1.2:5004 (что бы посмотреть видео из файла file_2.avi соответственно)

Источник:
http://subnets.ru/blog/?p=12

вторник, 19 сентября 2017 г.

Проброс порта для доступа к локальным ресурсам по внешнему адресу.

Допустим, в сети имеется шлюз, и внутри сети, за шлюзом находится ресурс имеющий внутренний адрес напр. 192.168.1.7. Доступ из Интернет к 192.168.1.7 организован с помощью проброса портов с шлюза имеющего внешний адрес напр. 1.2.3.4. Также из Интернета доступ к серверу возможен по имени name.ru.
Но что будет если мы обратимся из внутренней сети с ip 192.168.1.9 к серверу по имени name.ru? Нашим хостом будет проигнорирован ответ с name.ru, т.к. он придет с адреса 192.168.1.7, а не 1.2.3.4. Для того чтобы хосты понимали друг-друга нужно правило на шлюзе заменяющее адрес хоста-клиента (192.168.1.9) на внутренний адрес шлюза напр. 192.168.1.1, в таком случае пакеты от 192.168.1.7 пойдут через шлюз и на 192.168.1.9 придут с адреса 1.2.3.4.

iptables -t nat -A POSTROUTING --dst 192.168.1.7 -p tcp -m tcp --dport 443 -j SNAT --to-source 192.168.1.1

Для того чтобы получить доступ к name.ru с сервера, который являетя шлюзом необходимо следующее правило:

iptables -t nat -A OUTPUT --dst 1.2.3.4 -p tcp -m tcp --dport 443 -j DNAT --to-destination 192.168.1.7

Если мы используем прокси-сервер на 192.168.1.1 то достаточно добавить name.ru в исключения прокси.

пятница, 3 февраля 2017 г.

gprs soft router

Для обеспечения доступа к Интернет, а также к доступа к ресурсам локальной сети в удаленных подразделениях нашей организации была применена описанная ниже конфигурацию.
При работающем vpn-канале роутер обеспечивает маршрутизацию через сеть головного офиса, при отсутствующем через Интернет.

Софт-роутер построен на базе Ubuntu-server 16.04.
1.После инсталляции сервера вставим в usb-порт модем, убедимся, что модем определился в системе.
lsusb
Вывод будем примерно таким:
Bus 002 Device 002: ID 13d3:5711 IMC Networks
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 12d1:1506 Huawei Technologies Co., Ltd. Modem/Networkcard
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Видно, что модем присутствует.

2. Настроим ppp-интерфейс и попробуем подключиться к Интернет.

nano /etc/ppp/peers/megafon

Создаем файл с следующим содержанием:

# Используемое для подключения устройство
/dev/ttyUSB0
# chat-скрипт
# В параметре "-T" передаётся имя точки доступа
# Для получения статического ip используем значение FixedIP.nw, для динамике обычно пишется internet.
connect '/usr/sbin/chat -v -f /etc/chatscripts/gprs -T FixedIP.nw'
# Надо ли менять маршрут по умолчанию
# Закомментируйте если не надо
defaultroute
# Использовать ли DNS-сервера провайдера
# Закомментируйте если не надо
usepeerdns
# Номер ppp-интерфейса (в данном случае будет ppp100)
unit 100
# Подключаться в случае обрыва
persist
# Перепосылать пакеты авторизации каждые 60 секунд
# Позволяет избежать обрыва соединения при отсутствии трафика
chap-interval 60
# Идентификатор соединения, используемый для поиска паролей в соответствующих файлах,
# А так же передаваемый ip-up и ip-down-скриптам
ipparam megafon
# Имя пользователя (пароль описывается в файле "/etc/ppp/chap-secrets") у Мегафона не требуется аутентификация, поэтому используем значение noauth.
#user "megafon"
noauth
# Отключаем любое сжатие
nopcomp
novjccomp
nobsdcomp
nodeflate
noaccomp
# Правильная обработка обрывов соединения
lcp-echo-interval 2
lcp-echo-failure 3
# IP адрес мы будем получать от провайдера, а не назначать сами
noipdefault

Затем настроим интерфейсы... Приводим файл /etc/network/interfaces примерно к такому виду:

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.27.1
netmask 255.255.255.128

auto megafon
iface megafon inet ppp
provider megafon

Теперь можно перезагрузиться, после рестарта должен появиться Интернет.

3. Теперь разрешим форвардинг между интерфейсами.

В файле /etc/sysctl.conf расскомментируем строку
net.ipv4.ip_forward=1

4. Настроим файервол и NAT.

Добавим нужные правила фаейрвола:

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -A POSTROUTING -o ppp100 -j SNAT --to-source XX.XX.XX.XX (тут должен быть внешний ip-адрес)
iptables -A INPUT -p icmp -j ACCEPT
iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth0 -j ACCEPT
iptables -A INPUT -i ppp100 -p tcp -m tcp -m multiport --dports 22 -j ACCEPT
iptables -A INPUT -p gre -j ACCEPT
iptables -A INPUT -m conntrack --ctstate INVALID -j DROP
iptables -A FORWARD -p icmp -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth0 -o ppp100 -j ACCEPT
iptables -A FORWARD -s 192.168.27.0/25 -i eth0 -j ACCEPT
iptables -A FORWARD -i ppp12 -o eth0 -j ACCEPT


Теперь добавим эти правила в автозагрузку:
echo "#! /sbin/iptables-restore" > /etc/network/if-up.d/iptables-rules
iptables-save >> /etc/network/if-up.d/iptables-rules
chmod +x /etc/network/if-up.d/iptables-rules

5. Установим и настроим dhcp-сервер.

apt-get install dnsmasq

Откроем файл /etc/dnsmasq.conf и подправим 2-3 строки под наши нужды:

interface=eth0 
Интерфейс с которого раздаются адреса.

dhcp-range=192.168.27.40,192.168.27.125,12h
Область выдачи.

dhcp-option=option:dns-server,192.168.0.4,8.8.8.8
Назначаемые dns-серверы. Первый для VPN, второй при отсутствующем VPN.

Теперь можно перезагрузиться, а затем подключить по сети к серверу какой-нибудь ПК, и проверить назначение IP, а так же работу Интернет.

6. Теперь подключимся к VPN, и создадим скрипт мониторинга и управления соединениями.

Установим pptp-client

apt-get install pptp-linux

Создадим и отредактируем файл /etc/ppp/peers/vpn следующим образом:

pty "pptp XX.XX.XX.XX --nobuffer  --nolaunchpppd --loglevel 0" #тип и адрес сервера
name DOMAIN\\user
remotename VPN
require-mppe-128 #включаем поддержку MPPE
require-mschap-v2
defaultroute
replacedefaultroute
ms-dns 192.168.21.145
unit 12 #номер ppp интерфейса
persist #переподключаться при обрыве
maxfail 10 #количество попыток переподключения
holdoff 10 #интервал между подключениями
file /etc/ppp/options.pptp
ipparam $TUNNEL


в файле  /etc/ppp/chap-secrets пишем учетные данные для нашего vpn соединения:

"DOMAIN\\user"      VPN     "Pa$$W0rd"

Пробуем продключиться

pon vpn nodetach



Теперь создадим файл-скрипт /home/user/recconnect.sh для мониторинга и подключений соединений.

#!/bin/bash
if ! /bin/ping 8.8.8.8 -c 10 -q -w 30 &>/dev/null
then
/sbin/ifdown megafon
/bin/sleep 2
kill $(ps aux | grep '/usr/sbin/pppd' | awk '{print $2}')
/bin/sleep 2
/sbin/ifup megafon &
/bin/sleep 45
fi

if ! /sbin/ifconfig | grep ppp12
then
/usr/bin/poff vpn
/bin/sleep 5
/usr/bin/pon vpn
/bin/sleep 45
fi

if ! ping -I ppp12 192.168.28.13 -c 10 -q -w 30 &>/dev/null # пингуем другую точку тоннеля
then
/usr/bin/poff vpn
/bin/sleep 5
/usr/bin/pon vpn
/bin/sleep 45
fi

if ! route -n | grep 192.168.28.13 | grep 192.168.0.0
then
route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.28.13 ppp12 # маршрут в сеть предприятия
/bin/sleep 5
fi

exit 0

Сделаем скрипт исполняемым:

chmod +x /home/user/recconnect.sh

и добавим выполнение скрипта по крону

crontab -e

*/03 * * * *    sudo /home/user/recconnect.sh

Теперь все должно работать автоматом.

вторник, 31 января 2017 г.

Скрипт мониторинга и запуска сетевых интерфейсов.

#!/bin/bash
export PATH=/usr/bin:/sbin:/bin
if ! ping 8.8.8.8 -c 10 -q -w 30 &>/dev/null
   then
ifdown ppp0
sleep 2
killall -9 pppd
sleep 2
ifup ppp0 &
sleep 45
   fi
if ! ifconfig | grep ppp12
   then
poff vpn
sleep 5
pon vpn
sleep 45
   fi
if ! ping -I ppp12 192.168.28.7 -c 10 -q -w 30 &>/dev/null
   then
poff vpn
sleep 5
pon vpn
sleep 45
   fi
exit 0

Сначала мониторим есть ли соединение с Интернет, который подключен как ppp  (gprs/3g,4g, pppoe и т.п.),  если нет - выключаем интерфейс, и заново его поднимаем.
Потом мониторим есть ли интефейс pptp vpn, если нет отключаем vpn, затем опять затем опять запускаем соединение.
Затем мониторим пингуется ли точка на другой стороне тоннеля, если нет - тоже самое, что выше.

среда, 26 октября 2016 г.

Определить к какому порту коммутатора подключен хост с определенным IP-адресом.

Допустим коммутатор Cisco 2960, ip-адрес хоста 192.168.11.1

На коммутаторе к которому подключен хост выполним команду:

sw-main#sh ip arp | i 192.168.11.1
Internet          192.168.11.1              0    0033.5577.9901  ARPA Vlan11

Если команда не дала никакого вывода, но мы уверены, что хост подключен именно к этому коммутатору, пустим пинг до хоста. Таблица arp обновится, и можно будет увидеть, что хочется.

Затем, когда уже известен mac, определим к какому порту коммутатора подключен хост:

sw-main# sh mac address-table | i 0033.5577.9901
 11    0033.5577.9901 STATIC   Gi1/0/19

Хост подключен к 19-му порту.

понедельник, 3 октября 2016 г.

Перенаправление (forward) портов iptables

Допустим, есть сервер в локальной сети (или виртуалка), на которой работает ssh-server на порту 22, как обычно и бывает.
И допустим, нужно предоставить к этому серверу доступ из Интернет, но сервер за NAT, а шлюзом является сервер c Linux и iptables. Короче, нужно два правила:

iptables -t nat -A PREROUTING -i eth0 -p tcp -d x.x.x.x --dport 4444 -j DNAT --to-destination 192.168.1.3:22

iptables -A FORWARD -i eth0 -o eth1 -d 192.168.1.3 -p tcp --dport 22 -j ACCEPT

в которых - x.x.x.x внешний адрес шлюза, 192.168.1.3 адрес сервера, 4444 порт доступный из интернет, 22 порт ssh 192.168.1.3, eth0 смотрит в Интернет, eth1 смотрит в локалку.  

среда, 28 сентября 2016 г.

Rsync через ssh



У нас есть два сервера:
1) 1.1.1.1 - основной сервер (файлы, почта, что угодно иное), пользователь user1.
2) 2.2.2.2 - сервер, на котором хранятся резервные копии, пользователь user2.
Считаем, что раньше вы не настраивали доступ по ssh к серверам по ключам, а используете пароли. Заодно от паролей избавимся.
Идея: находясь на сервере 2.2.2.2, мы запускаем процесс копирования данных с основного сервера 1.1.1.1 (к себе, на 2.2.2.2).
Проверяем коннект ssh с паролем
Если мы с сервера 2.2.2.2 не сможем с паролем соединиться по ssh к 1.1.1.1, то дальше можно и не продолжать.
Готовим почву
На серверах установим rsync:
yum install xinetd rsync

Редактируем конфиг xinetd для rsync:
nano /etc/xinetd.d/rsync

...
disable = no
# flags         = IPv6
...

Создадим отдельного пользователя rsync без домашней директории и /sbin/nologin. Да, я люблю вместо общего nobody для важных задач создавать отдельных пользователей. Никогда не знаешь наперед, когда придется анализировать, что и где глючит.
Редактируем (создаем) минимальный конфиг rsync на сервере 1.1.1.1:
nano /etc/rsyncd.conf

uid = rsync
gid = rsync
use chroot = true
max connections = 5
pid file = /var/run/rsyncd.pid
motd file = /etc/rsync.motd

# Logging
log file = /var/log/rsyncd.log
transfer logging = true
log format = %t %a %m %f %b
syslog facility = local3
timeout = 300
service xinetd restart

Проверим:
netstat -lnpt | grep 873
tcp        0      0 :::873         :::*       LISTEN      16269/xinetd

Ок, xinetd слушает порт rsync и при запросе запустит его.

На сервере 2.2.2.2 (с которого будем коннектится) сгенерируем сертификат для доступа без пароля:
# ssh-keygen -f ~/.ssh/id_rsa -q -P "" -b 4096

где:
-q - silense
-f - имя файла ключа
-P "" - пустой пароль
-b 4096 - размер ключа, бит
Просмотрим публичный ключ, который надо будет скопировать на 1.1.1.1, куда будем впоследствии подсоединяться:
# cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLVDBIpdpfePg/a6h8au1HTKPPrg8wuTrjdh0QFVPpTI4KHctf6/
FGg1NOgM++hrDlbrDVStKn/b3Mu65//tuvY5SG9sR4vrINCSQF++a+YRTGU6Sn4ltKpyj3usHERvBndtFXoDxsYKR
CtPfgm1BGTBpoSl2A7lrwnmVSg+u11FOa1xSZ393aaBFDSeX8GlJf1SojWYIAbE25Xe3z5L232vZ5acC2PJkvKctz
vUttJCP91gbNe5FSwDolE44diYbNYqEtvq2Jt8x45YzgFSVKf6ffnPwnUDwhtvc2f317TKx9l2Eq4aWqXTOMiPFA5
ZRM/CF0IJCqeXG6s+qVfRjB root@cloudads
На сервере 1.1.1.1 (откуда будем копировать файлы).
Скопируем этот ключ на сервер 1.1.1.1, на который будем логиниться, в директорию пользователя user1, под которым будем логинитсья, в файл ~/.ssh/authorized_keys file.
Если директории .ssh на 1.1.1.1 не существует, создадим ее:
mkdir ~/.ssh
chmod 0700 ~/.ssh
touch ~/.ssh/authorized_keys
chmod 0644 ~/.ssh/authorized_keys
chown -R user1:user1 /home/user1

В файл ~/.ssh/authorized_keys копируем содержимое публичного ключа, созданного на сервере 2.2.2.2 (файл id_rsa.pub) и перезапускаем sshd:
# service sshd restart

Все, мы готовы проверить соединение с 2.2.2.2 на 1.1.1.1 по ssh:
ssh -i /home/user2/.ssh/id_rsa -p 22 user1@1.1.1.1

Если соединение прошло, можно двигаться дальше. Если нет - надо обязательно понять, где проблема (firewall, ошибка copy/paste ключа, забыли restart sshd, что-то еще).
Запускаем rsync через ssh
Мы будем копировать файлы /data/* с сервера 1.1.1.1 на сервер 2.2.2.2 в папку /backup/.
Формат простой: rsync [опции] [откуда] [куда]
rsync -avz -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress 1.1.1.1:/data/data.zip /backup/

или так:
rsync -avz -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress user1@1.1.1.1:/data/* /backup/

или даже так:
rsync -avz -e "ssh -p 22" --progress user1@1.1.1.1:/data/* /backup/

-e "ssh ..." - указываем, что хотим все передавать по ssh;
-p 22 - указываем порт, на котором работает ssh на сервере 1.1.1.1;
-a, --archive – архивный режим, включает рекурсивное копирование и сохранение прав и владельца;
-v - расширенный вывод;
-z - использовать компрессию данных;
user1 - локальный пользователь сервера 1.1.1.1, настроенный на логин по ssh по ключу.
Естественно, пользователь user1 должен иметь права доступа в /data/.
Вот и все. После копирования проверим, создался ли файл на сервере 2.2.2.2:
ls -al /backup/

Взято тут.