Я пытался настроить dkimproxy на своем сервере после того, как долгое время успешно использовал dkfilter. Причина, по которой я выбрал «обновление», заключается в том, что протокол DKIM, похоже, лучше поддерживается, чем DomainKeys, основными поставщиками, такими как Gmail.
Я хочу подписывать только исходящие сообщения, а не проверять входящие. Я настроил dkimproxy_out.conf
правильно но rcdkimproxy start
ничего не делает. Если я сделаю rcdkimproxy start-out
вместо этого он работает.
Я не большой эксперт по bash, но я нашел это в /etc/init.d/dkimproxy
start)
test -f $DKIMPROXY_IN_CFG && $0 start-in || exit $?
test -f $DKIMPROXY_OUT_CFG && $0 start-out || exit $?
;;
Что «должно» проверить, существует ли файл конфигурации, и если да, то запустить команду запуска dkimproxy. Я уверен, что файл существует и является правильным (иначе он не запустится вручную), однако я обнаружил, что вручную выполняя test -f /usr/share/dkimproxy/etc/dkimproxy_out.conf; echo $?
возвращает 0.
Что могло быть не так в этих утверждениях? Я использую ядро openSUSE 11.3 2.6.32. Если вы считаете, что этот сценарий не работает, я могу попытаться сообщить об ошибке автору dkimproxy.
Спасибо
Новейшие пакет dkimproxy использует следующие строки:
start)
test -f $DKIMPROXY_IN_CFG && { $0 start-in || exit $?; }
test -f $DKIMPROXY_OUT_CFG && { $0 start-out || exit $?; }
;;
Изменение сценария инициализации на использование приведенных выше строк должно правильно решить проблему с проверкой наличия файлов конфигурации.
Забавно то, что в Debian оба формата работают вообще без проблем.
Как обычно, сценарий использует / bin / sh вместо bash, а в некоторых системах (включая Debian) sh - это Bourne Shell, а / bin / bash - более продвинутая Bourne Again Shell. Обе оболочки ожидают от теста 0 в качестве успеха, поэтому "test && command" является правильным форматом, когда вы хотите запустить команду, если тест завершится успешно.