Сетевые сервисы: rsync

 

rsync чрезвычайно эффективный метод для зеркального отражения файлов. Он сохраняет связи, права доступа, время файла и прочее. В дополнение к этому, rsync поддерживает анонимный режим (который я использую для зеркального отражения этого документа). Программа rsync может работать как клиент (при запуске из командной строки или скрипта) или как сервер (обычно при запуске из inetd.conf). Программа непосредственно совершенно безопасна: не требуется привилегий root для работы как клиент или сервер (хотя это возможно, если Вы действительно хотите этого) и поддерживает chroot, заменяя корневой каталог на каталог зеркалирования (это однако требует привилегий root и может быть более опасно, чем работа без такой поддержки). Вы можете также задать user id и group id для обращения к системе (обычно nobody для большинства precompiled-пакетов rsync, и, вероятно, это самый лучший выбор). В неанонимном режиме rsync поддерживает username и пароли, которые зашифрованы с использованием 128-битного MD4. man-страница для rsyncd.conf совершенно ясно описывает установку rsync как сервера и настройку его, как относительно безопасного. Заданный по умолчанию файл конфигурации: /etc/rsyncd.conf. Он имеет глобальный раздел и разделы модулей (в основном, каждый разделенный каталог представляет собой модуль).

Пример файла rsyncd.conf:

motd file = /etc/rsync.motd # specifies a file to be displayed, # legal disclaimer, etc. max connections = 5 # maximum number of connections so you don't # get flooded [pub-ftp] comment = public ftp area # simple comment path = /home/ftp/pub # path to the directory being exported read only = yes # make it read only, great for exported # directories chroot = yes # chroot to /home/ftp/pub uid = nobody # explicitly set the UID gid = nobody # explicitly set the GID [secret-stuff] comment = my secret stuff path = /home/user/secret # path to my stuff list = no # hide this module when asked for a list secrets file = /etc/rsync.users # password file auth users = me, bob, santa # list of users I trust to see my # secret stuff hosts allow = 1.1.1.1, 2.2.2.2 # list of hosts to allow

Как Вы можете видеть, rsync легко настроить, и он очень безопасен, кроме передачи файлов, которые никогда не шифруются. Если Вы нуждаетесь в защите, я предлагаю, чтобы Вы использовали SSH для туннелирования подключения или некоторое VPN-решение подобне FreeS/WAN. Также удостоверитесь, что Вы работаете с rsync 2.3.x или выше, поскольку в 2.2.x была сияющая дыра в защите. Rsync доступен на http://rsync.samba.org. Rsync работает через порт 873, протокол tcp.

ipfwadm -I -a accept -P tcp -S 10.0.0.0/8 -D 0.0.0.0/0 873 ipfwadm -I -a accept -P tcp -S some.trusted.host -D 0.0.0.0/0 873 ipfwadm -I -a deny -P tcp -S 0.0.0.0/0 -D 0.0.0.0/0 873

или

ipchains -A input -p tcp -j ACCEPT -s 10.0.0.0/8 -d 0.0.0.0/0 873 ipchains -A input -p tcp -j ACCEPT -s some.trusted.host -d 0.0.0.0/0 873 ipchains -A input -p tcp -j DENY -s 0.0.0.0/0 -d 0.0.0.0/0 873

Back

Security Portal

Written by Kurt Seifried