Назад | Перейти на главную страницу

Безопасное копирование (передача файлов) между двумя серверами Linux в одном центре обработки данных (Linode)

У меня два линода в одном дата-центре. Я хочу копировать файлы из одного в другой каждую ночь или по запросу (примерно в течение следующего месяца, пока этот проект не будет завершен). Итак, я думаю об использовании rsync.

У меня вопрос: как мне настроить два сервера Linode для безопасной связи через частные IP-адреса? Оба сервера имеют усиленный SSH, они используют denyhosts и имеют довольно ограничительную настройку iptables.

Я знаю, что мне нужно сначала назначить частные IP-адреса каждому серверу, а затем настроить статическую сеть в соответствии с это руководство.

Что дальше? Какие настройки SSH или iptables необходимы, чтобы эти два сервера могли обмениваться данными?

Какую дополнительную информацию мне нужно предоставить в этом вопросе? Я ищу базовое пошаговое руководство, как это сделать.

Поскольку вы используете Linux, у вас есть все необходимые инструменты. Просто используйте rsync поверх ssh

rsync -avz -e ssh user@remotehost:/remote/dir /this/dir/

Нет необходимости в частных IP-адресах и т. Д., Так как это обеспечивает сквозное шифрование вашего трафика.

Как упоминалось в комментарии ErikA, одним из преимуществ использования частных IP-адресов в Linode является то, что вы не платите за пропускную способность в их частной сети. И весь мой вопрос состоял в том, чтобы спросить, как это сделать с частными IP. Итак, я отвечаю на свой вопрос решением, которое в итоге использовал.

Какие настройки SSH или iptables необходимы, чтобы эти два сервера могли обмениваться данными?

Никаких изменений не потребовалось. Иан был прав. Связь по-прежнему осуществляется через тот же порт, и этот порт уже был открыт в iptables. Несмотря на то, что этот сервер имеет "усиленный SSH", никаких изменений там, где это необходимо, при использовании частных IP-адресов вместо общедоступных IP-адресов.

Как указано в моем первоначальном вопросе, я планировал использовать rsync - и это стало окончательным решением. Но использование настраиваемого порта и ключевого файла требует цитирования части команды ssh, как показано здесь:

rsync -av -e "ssh -p 222 -i /home/user/.ssh/id222_rsa" /this/dir/ --delete-excluded --exclude-from=my_exclude_list.txt user@www.example.com:/remote/dir

Выяснение необходимости цитат и того, какая часть цитат находится внутри них, было единственной незначительной проблемой для всего этого. В итоге все оказалось проще, чем я думал.

Если Linode не предоставит вам частную VLAN, использование внутренних IP-адресов не сделает ее более безопасной.

Самым простым решением было бы настроить простой туннель OpenVPN между двумя машинами, а затем отправить через него трафик rsync. Вы даже можете использовать слабый шифр, такой как arcfour, с rsync, чтобы ускорить процесс, поскольку шифрование будет обрабатываться самим VPN-туннелем.

Существует множество очень простых руководств по OpenVPN с использованием сертификатов x509 для аутентификации, а в Linux вы можете настроить его за считанные минуты.

Вот простое руководство http://www.smallnetbuilder.com/security/security-howto/30353-how-to-set-up-a-site-to-site-vpn-with-openvpn