Вопрос действительно простой. Если я хочу настроить почтовый сервер, нужен ли он мне или это просто проблема безопасности? Какие проблемы это может вызвать?
Вы хотите, чтобы люди не узнали ваш пароль? Это особенно просто с WiFi. Затем используйте шифрование (SSL).
Вы заботитесь о том, чтобы иметь самоподписанный сертификат (получать предупреждение об этом)? Если нет, просто подпишите себя. Но будьте осторожны, есть приложения (Outlook), которые не позволяют вам игнорировать это предупреждение, увидев его однажды.
Суть SSL в том, что он включает в себя шифрование и проверку личности в одном протоколе. Для первого вам не нужен сертификат, но для второго вам нужен. Если вы не подозреваете, что кто-то собирается перенаправить ваши попытки входа в систему на другой сервер, вам не нужна проверка личности: так что подпишите себя. И даже тогда это не проблема. Потому что в большинстве клиентов после того, как вы приняли свой собственный сертификат, он снова выдаст предупреждение при его изменении.
Если вам нужен сертификат (мне нравится его наличие), используйте Startcom SSL. Они позволяют бесплатно получить простой сертификат SSL.
Изменить: Startcom больше нельзя рекомендовать, потому что они были занесен в черный список основных браузеров, потому что их новый владелец, WoSign, нарушил правила.
Ну, вы не указываете тип почтового сервера. Например, у меня есть Microsoft Exchange, который, насколько мне известно, может работать без сертификата, с самоподписанным сертификатом или, конечно, с официальным сертификатом.
Пользователь, конечно, заметит разницу, если будет нажимать на предупреждения системы безопасности.
Для получения почты (POP / IMAP) и MSA использование, хотя это не обязательно, но определенно хорошая идея. В настоящее время многие люди получают доступ к электронной почте из сетей, которым нельзя доверять, обычно с мобильного телефона в открытой сети Wi-Fi. Подключить пользователей через SSL / TLS - хорошая идея.
Для MTA использования, вам, вероятно, не следует ожидать SSL / TLS. В принципе, это была бы хорошая идея, но лишь немногие MTA поддерживают соединения SSL / TLS между собой. (Видеть этот вопрос для подробностей.) Здесь есть несколько вариантов:
Если вы включите SSL / TLS только на своем MTA (без какой-либо возможности взаимодействия без его включения), вы фактически исключите себя из ряда других MTA, которые его не поддерживают.
Если вы включите как SSL / TLS, так и обмен данными в виде обычного текста:
Помните, что проверка того, что SSL / TLS используется (и используется правильно, включая проверку сертификата) является исключительной обязанностью клиента, то есть другого MTA здесь (на стороне сервера ничего нельзя сделать в случае перехода на более раннюю версию MITM-атак, если только клиент- сертификаты также используются, что маловероятно между MTA).
Если ваш сервер действует как MTA и как MSA (т.е. он ожидает прямых подключений от пользователя), я бы предложил включить как с SSL / TLS, так и без него, но посоветуйте вашим пользователям использовать опцию SSL / TLS.