Так-как Архива часто содержит строго конфиденциальную информацию, настоятельно рекомендуется защита доступа к веб-консоли c помощью HTTPS (HTTP / TLS).
Есть два способа настроить защищенный доступ к консоли:
Можно использовать только для Архива |
a) Раскомментируйте строку:
<Connector port="443" allowUnsafeLegacyRenegotiation="false" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" keystoreAlias="tomcat" keystoreFile="/etc/opt/mailarchiva/ROOT/mailarchivacerts" keystorePass="changeit"> |
b) измените значения поля keystorePass на значение полученное утилитой getkeystoresecret. Убедитесь в правильности ввода.
c) при желании, закомментируйте (небезопасные) соединение по умолчанию на порту 8090.
Отредактируйте web.xml расположенный в [главный путь к приложению]\server\webapps\ROOT\WEB-INF
Раскомментируйте строку:
<security-constraint> <web-resource-collection> <web-resource-name>Protected Context</web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint> </security-constraint> |
Перезапустите сервис Архива server, он должен быть доступен по адресу https://you_server
При использовании командной строки используется утилита keytool включенная в дистрибутив JRE. Если Архива была установлена правильно и по умолчанию то данная утилита будет располагаться в директории C:\Program Files\MailArchiva\jre64\bin or /opt/mailarchiva/jre64/bin.
Среди прочего, утилита keytool предоставляет возможность генерировать запросы на сертификат и устанавливать сертификаты в файл хранилища ключей Java.
Приведенные ниже инструкции в значительной степени основана на Tomcat SSL How To. |
Создайте новое хранилище ключей
Вместо того чтобы вводить имя и фамилию, когда будет предложено сделать это, пожалуйста, введите полное доменное имя сервера Архива (например archiva.company.com) Выбирите надежный путь для хранилища закрытых ключей Tomcat. |
keytool -genkey -alias tomcat -keyalg RSA -keystore \path\to\my\keystore |
Создайте запрос:
keytool -certreq -keyalg RSA -alias tomcat -file certreq.csr -keystore |
Импортируйте цепь сертификатов один сертификат за одним, начиная с root:
keytool -import -alias root -keystore -trustcacerts -file b. keytool -import -alias tomcat -keystore -trustcacerts -file |
Отредактирйте server.xml и раскомментируйте соединение TLS прослушивающее порт 443. Измените соединение обозначив правильное хранилище ключей и пароль.
<Connector protocol="org.apache.coyote.http11.Http11NioProtocol" port="443" minSpareThreads="5" maxSpareThreads="75" enableLookups="true" disableUploadTimeout="true" acceptCount="100" maxThreads="200" scheme="https" secure="true" SSLEnabled="true" keystoreFile="<path\to\keystore>" keystorePass="changeit" clientAuth="false" sslProtocol="TLS"/> |
Если вы хотите автоматически перенаправить обращение к порту 80 на порт 443, отредактируйте web.xml в C:\Program Files\MailArchiva\Server\webapps\ROOT\WEB-INF\web.xml (Windows) или /opt/mailarchiva/server/webapps/ROOT/WEB-INF/web.xml (Linux) дабавьте следующие линии перед закрывающим тегом </web-app>:
<security-constraint> <web-resource-collection> <web-resource-name>Protected Context</web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> auth-constraint goes here if you requre authentication <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint> </security-constraint> |
Перезапустите сервис Архива, он должен быть доступен по адресу https://you_server или http://you_server вы будете автоматически направленны на безопасное соединение https