Подтвердить что ты не робот

Eclipse WTP: Как включить SSL на Tomcat?

Eclipse WTP создает собственный файл server.xml, который он размещает в некоторой папке, которая настраивает экземпляр tomcat, который вы используете для своего веб-проекта. Если вы дважды щелкните по серверу в списке серверов, вы получите хороший экран, который упростит настройку некоторых аспектов файла server.xml.

Как настроить новое подключение, чтобы разрешить SSL-соединения на порту 8443. Каждый раз, когда я вручную редактирую файл server.xml, eclipse перезаписывает мои изменения с настройками, которые он хранил на странице свойств сервера конфигурации, и кажется, что там это не способ добавить новый соединитель из интерфейса, который обеспечивает eclipse.

Возможно ли это? Вот коннектор, который я хочу добавить:

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
    maxThreads="150" scheme="https" secure="true"
    keystoreFile="D:\apache-tomcat-6.0.18\keystore\key.ssl" keystorePass="pass"
    clientAuth="false" sslProtocol="TLS" />
4b9b3361

Ответ 1

Если вы уже создали сервер, вы можете отредактировать шаблон server.xml, который он копирует. Если вы используете проводник проекта, он находится в разделе Другие проекты- > Серверы- > Имя сервера Tomcat- > server.xml

Ответ 2

Вот как вы его получите:
Создайте хранилище ключей:

keytool -genkey -alias tomcat -keypass mypassword -keystore keystore.jks -storepass mypassword -keyalg RSA -validity 360 -keysize 2048

(Следуйте инструкциям и заполните информацию)
Затем он должен сохранить файл keystore.key в вашем домашнем каталоге.
Чтобы заставить его работать в eclipse:

<Connector port="8443" SSLEnabled="true"
        maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
        enableLookups="true" disableUploadTimeout="true"
        acceptCount="100" debug="0" scheme="https" secure="true"
        clientAuth="false" sslProtocol="TLSv1"
        keystoreFile="/home/myUsername/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/conf/keystore.key"
        keystorePass="mypassword" />

Вышеупомянутый путь для keystoreFile - это то, что вам абсолютно необходимо для правильного использования. Когда eclipse использует место метаданных рабочей области для запуска tomcat, он копирует некоторые файлы в путь, который выглядит как выше. В OS X это будет:

/Users/<username>/Documents/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/conf/keystore.key

Надеюсь, что это поможет.

Дополнительная ссылка: Конфигурация SSL/TLS HOW-TO в Apache Tomcat 7

Ответ 3

Я понял это. Когда вы сначала создаете новый сервер в представлении "Серверы", щелкнув его правой кнопкой мыши и выбрав "Создать" > "Сервер". Eclipse WTP принимает ваш существующий server.xml файл из установки tomcat и создает новый файл server.xml для вашего проекта с использованием оригинала в качестве шаблона.

Если вы измените исходный файл server.xml с конфигурацией, необходимой для создания нового сервера в eclipse, вы сохраните эти настройки.

Слишком плохое затмение не позволяет добавлять эти типы конфигураций после факта.

Ответ 4

Если у вас есть сертификат и хранилище ключей, как упоминалось ранее в этом сообщении, я нашел следующее решение для настройки Eclipse для связи с серверами с поддержкой SSL. При использовании инструмента конфигурации Tomcat вы должны добавить записи на вкладку "Java", текстовое поле "Параметры Java", как показано ниже:

-Dbusinessobjects.orb.oci.protocol=ssl
-Dcertdir=c:\ssl
-DtrustedCert=c:\ssl\cacert.der
-DsslCert=c:\ssl\servercert.der
-DsslKey=c:\ssl\server.key
-Dpassphrase=c:\ssl\passphrase.txt

Аналогично в Eclipse щелкните правой кнопкой мыши имя сервера в окне Project Explorer, выберите "Профиль как | Конфигурации профилей | Аргументы и добавьте те же параметры, что и выше, в текстовое поле" Аргументы VM:". Это должно позволить вам запускать и отлаживать программы снова с серверов с поддержкой SSL.

Eclipse" Аргументы VM: текстовое поле