postfix/squirrelmail вход только для собственного домена

В настоящее время у меня есть сервер с postfix/dovecot/postfixadmin и squirrelmail для нескольких доменов. Я использую mysql для хранения данных учетной записи / домена. Однако, если я перейду к веб-почте домена на моем сервере, я могу войти во все учетные записи электронной почты в любом домене на моем сервере. Как я могу сделать возможным только вход в почтовый аккаунт, используя правильный домен? И если я это сделал, возможно ли также разрешить вход на все почтовые аккаунты, используя ip-адрес сервера напрямую?

Короче говоря, я хочу, чтобы, если пользователь зашел на domain1.com/webmail, он мог войти только на emailaccounts с @ domain1.com, но если пользователь зашел на ABCD/webmail, он мог войти на все emailaccounts на сервере.

редактировать:
Я думаю, что я не был достаточно ясен в своем посте, поэтому я попытаюсь объяснить немного лучше, что у меня есть:
У меня есть одна установка postfix/squirrelmail, и squirrelmail может быть доступен на любом домене через domain.com/webmail (/webmail aliased). Но поскольку у меня только одна установка, вы можете войти во все домены на моем сервере, используя любой домен. Например, если у меня есть domain1.com и domain2.com, вы можете войти с помощью somemail@domain1.com по адресу www.domain2.com/webmail. Я не хочу этого. Единственное исключение из этого правила заключается в том, что я хочу иметь доступ к полному почтовому серверу, поэтому вся электронная почта обрабатывается на всех доменах, используя ip-адрес сервера (ABCD / веб-почта). Извините, если мой вопрос не ясен, английский не является моим основным языком, поэтому у меня иногда возникают проблемы с объяснением моих проблем на английском языке.

1 ответ

Решение

Для этого вам нужно изменить код в Squirrelmail.

Страница, которая выполняет вход в систему, с которой вы можете с помощью PHP взглянуть на имя домена, а затем убедиться, что после @ находится только текущий домен. Если вы не являетесь разработчиком PHP, может потребоваться некоторое время, чтобы выяснить, как это сделать, и я не очень рекомендую это решение.

Вместо этого вы должны создать одну веб-почту, с которой все пользователи будут входить в систему, а затем зашифровать страницу с помощью SSL, чтобы убедиться, что пользователи не отправляют свои учетные данные электронной почты в виде открытого текста, а затем перенаправить domain.com/webmail на например, https://ssl.yoursite.com/webmail

Я создал несколько сред общего хостинга, на которых размещены тысячи клиентов, но ни одна из них не предназначена для каждого домена. Все они находятся в безопасном месте (просто потому, что я отказываюсь создавать доступ к веб-почте без SSL).

Теперь причина такого подхода заключается в том, что пользователи обычно получают доступ к своей веб-почте откуда угодно, что резко увеличивает риск того, что кто-то перехватит сетевой трафик и тем самым получит доступ.

Не хотелось бы, чтобы это произошло, потому что в этом случае ваш сервер мог бы использоваться в качестве источника нежелательной массовой электронной почты (СПАМ).

Другие вопросы по тегам