Я ищу способ для 1 сервера, расположенного в Швейцарии (действующего как веб-сервер / сервер db), для совместного использования / синхронизации файлов, таких как правила deny.hosts и iptables, с моим другим сервером (DNS / mail), расположенным в Северной Америке, в безопасном путь.
Это возможно?
Я надеюсь, что это сэкономит время, так как мне нужно обновить только 1 сервер, чтобы изменения распространялись.
Спасибо за вашу помощь
В чем разница между управлением 10 серверами и 1000?
Ничего, если вы все сделали правильно.
Это работа по управлению конфигурацией. Загляните в Ansible / Cfengine / Chef / Puppet / etc.
Я согласен с blacklight в комментарии выше, rsync, вероятно, хороший выбор для этого:
Rsync работает так:
$ rsync options source destination
Итак, если вы хотите использовать метод «push», когда вы отправляете изменения из Швейцарии в США, вы можете запустить что-то вроде этого:
$ rsync -avz /etc/deny.hosts myuser@<your host>:/etc/
и если у вас есть ssh-ключи для myuser, вам не нужны пароли, и если вы установите это в crontab, вы можете сделать это автоматически.
чтобы сделать запись в crontab, вы можете отредактировать / etc / crontab (я часто использую редактор pico)
pico /etc/crontab
формат такой:
MIN HOUR DOM MON DOW CMD
поэтому, чтобы запускать команду каждый день в 22:00, вы можете сделать эту строку:
0 22 * * * rsync -avz /etc/deny.hosts myuser@<your host>:/etc/
или еще лучше - создать сценарий со всеми вашими командами rsync, а затем запустить сценарий из crontab, но одна строка, подобная этой, также должна работать.
дополнительные параметры Rsync можно найти в страница руководства, и страница руководства crontab