У нас есть внешний хост горячего резервирования, который я хочу периодически синхронизировать с нашим сервером imap с помощью imapsync. Я хотел бы знать, можно ли использовать аутентификацию сертификата RSA для входа с --authuser1 в --authuser2. Если я использую rsync поверх ssh, это не представляет проблемы. Но подключение к cyrus-imap через imapsync несколько сложнее.
Если нет, то каков рекомендуемый способ передачи паролей авторизации команде imapsync при итеративном запуске внутри скрипта?
В текущем выпуске imapsync 1.607 нет возможности с помощью переключателей командной строки добавлять сертификаты для режимов подключения ssl или tls. Я мог бы добавить его в будущем, я только что поместил этот запрос в файл TODO. В любом случае, теперь должно быть легко взломать его прямым способом, imapsync - это бесплатное программное обеспечение и передавать все, что вам нужно, в функции "set_ssl". Затем все передается базовому модулю Perl Mail :: IMAPClient. См. Perldoc Mail :: IMAPClient для этого.
В выпуске imapsync 1.678 и более поздних можно передавать любой параметр ssl, поэтому сертификаты могут использоваться таким образом.
--sslargs1 str : Pass any ssl parameter for host1 ssl or tls connection. Example:
--sslargs1 SSL_verify_mode=1 --sslargs1 SSL_version=SSLv3
--sslargs2 str : Pass any ssl parameter for host2 ssl or tls connection.
См. Все возможности метода new () IO :: Socket :: SSL по адресу http://search.cpan.org/perldoc?IO::Socket::SSL#Description_Of_Methods
Для безопасной передачи паролей в imapsync используйте --passfile1 secretfile и измените права доступа на 600 для файла secretfile. Добавленный к ssl- или tls-соединению, он не будет менее безопасным, чем файл закрытого ключа, хранящийся в той же учетной записи Unix.