Как обновить tomcat до последней версии на windows

Обновлено: 07.07.2024

Открываем «e:\tomcat\apache-tomcat-8.0.15\bin\». Видим много батников и sh сценариев.

Открываем «catalina.bat». Там видим много закомментированных строк с переменными окружения, которые должны быть объявлены, или которые можно объявлять, а можно и нет.

Те переменные, которые должны быть объявлены — это

  • set CATALINA_HOME="e:\tomcat\apache-tomcat-8.0.15"
  • set JAVA_HOME="e:\ProgramFiles\Java\jre1.8.0_25"

причём желательно это сделать в отдельном файле с именем setenv.bat, для этого просто в текстовом редакторе вбиваем эти две строки и сохраняем файл с таким именем в «e:\tomcat\apache-tomcat-8.0.15\bin\»

Примечание: если папка с установленным jre содержит пробелы, то имя должно состоять из максимум шести первых букв реального названия папки, и если такое сочетание по алфавиту в диске первое, то

1, если второе, то

Например, название папки, внутри которой находится jre, “C:\Program Files\JRE”, а кроме того есть папка «C:\places\», тогда вторая строчка в setenv.bat будет

Естественно, это не очень хорошо, особенно когда у вас две папки “Program Files” и «Program Files (x86)». В таком случае, чтобы проименовать правильно папку с JRE, придётся поэкспериментировать

Если глобальные переменные сконфигурированы верно, и запустилось окно java – консоли, но какие-то настройки сделаны неверно, то ошибки можно посмотреть в папке «e:\tomcat\apache-tomcat-8.0.15\logs\».

Если пункт 4 выполнен полностью успешно, то в окне браузера можно набрать 127.0.0.1:8080 и в окне будет окно tomcat сервера.

Но если мы захотим войти в настройки Host Manager, и т. д., то нас попросят ввыести логин и пароль. Взять их негде, но в папке conf есть файл tomcat-users.xml, который, если открыть, то сначала кажется правильным, но роли и пользователи там взяты в комментарий . Да и роли, и пользователи там явно неверные. Итак, что же делать.

Для ответа на вопрос, какие роли должны быть, и каких пользоватей назначать, чтобы войти в админку, на страничке 127.0.0.1:8080. Например, про роли manager можно узнать на страничке ttp://127.0.0.1:8080/docs/manager-howto.html, и вместо одного пользователя admin, как было раньше, теперь есть два пользователя: admin-gui и admin-script.

Итак, открываем файл conf\tomcat-user.xml и добавляем там после закомментированного блока с логинами и паролями

Таким образом, мы получим пользователя superadmin с паролем pass.

Tеперь при помощи скриптов shutdown.bat и startup.bat перезапускаем сервер, и можем войти в админку.

можно ещё создать в админке ссылку на хост (Это то же самое, что мы сейчас сделали).

При создании новых записей в hosts для win8, сначала копируем файл в другую папку, там правим, и затем пишем обратно. После этого рестарт компьютера или сервера не нужен.

Определение и обновление версии Tomcat (windows, centos, springboot)

Введение: В последнее время tomcat подвергся уязвимостям безопасности. Все версии должны быть обновлены до последней. Из Интернета вы можете записать метод напрямую и сохранить его как сценарий оболочки для использования нуждающимися друзьями.

В этой статье в основном объясняется метод определения версии и обновления Tomcat.

1. Обзор уязвимостей

20 февраля Национальная платформа обмена уязвимостями информационной безопасности (CNVD) выпустила файл Apache Tomcat, содержащий уязвимость (CNVD-2020-10487 / CVE-2020-1938). Уязвимость вызвана ошибкой в ​​протоколе Tomcat AJP. Злоумышленники могут использовать эту уязвимость для чтения произвольных файлов в серверном веб-приложении, создав определенные параметры. Если на целевом сервере также есть функция загрузки файлов, злоумышленник может дополнительно реализовать удаленное выполнение кода. В настоящее время производитель выпустил новую версию, чтобы завершить исправление ошибки.
Tomcat - важный проект Apache Software Foundation. Он имеет стабильную производительность и бесплатный. В настоящее время это популярный сервер веб-приложений. Поскольку Tomcat имеет широкий спектр приложений, влияние этой уязвимости относительно велико.

2. Сфера влияния

Затронутая версия

  • Apache Tomcat 6
  • Apache Tomcat 7 < 7.0.100
  • Apache Tomcat 8 < 8.5.51
  • Apache Tomcat 9 < 9.0.31

Незатронутая версия

  • Apache Tomcat = 7.0.100
  • Apache Tomcat = 8.5.51
  • Apache Tomcat = 9.0.31

3. Обнаружение уязвимости

3.1 Windows

Обычно имя установочного пакета, загруженного с официального сайта Apache Tomcat, будет содержать текущий номер версии Tomcat. Пользователи могут проверить имя распакованной папки, чтобы определить текущую версию.

Если имя каталога Tomcat после распаковки было изменено или установлено с помощью установщика служб Windows, вы можете использовать модуль версии, поставляемый с программным обеспечением, для получения текущей версии. Войдите в каталог bin каталога установки Tomcat и введите команду version.bat, чтобы просмотреть номер текущей версии программного обеспечения.

3.2 Linux

3

Выполнить первым ps -ef|grep tomcat Проверьте путь запуска Tomcat и информацию.Если имя не было изменено, отображаемое имя папки является номером версии Tomcat. Если имя было изменено, войдите в каталог bin Tomcat и выполните ./version.sh Посмотреть номер версии

3.3 Проект SpringBoot

4

спросить: Как мы все знаем, проект springboot интегрирует tomcat, тогда как проверить версию tomcat?
ответ: При запуске проекта вы можете быстро определить версию tomcat, просмотрев журнал запуска.

4. Предложения по устранению уязвимостей

4.1 Под CentOS

  1. Загрузите последнюю версию пакета двоичных файлов tomcat, и те, кому он нужен, могут загрузить его на официальный сайт tomcat. Вот ссылка для загрузки:tar-пакет версии tomcat-9.0.31
  2. Найдите каталог tomcat, загрузите последнюю версию только что загруженного двоичного файла tomcat или можете напрямую wget скачать
  3. выполненный touch change-tomcat.sh , Создайте файл оболочки
  4. Скопируйте следующий контент в скрипт, затем sh change-tomcat.sh Выполнить скрипт

4.2 Spring Boot

Добавьте следующий контент прямо в файл pom и повторно разверните его. Не обновляйте Spring boot напрямую, иначе возникнут проблемы несовместимости зависимостей.

4.3 Официальное обновление

В настоящее время чиновник исправил эту уязвимость в последней версии, пожалуйста, обновите версию, чтобы защитить уязвимых пользователей как можно скорее, официальная ссылка для скачивания:

4.4 Другие защитные меры

Интеллектуальная рекомендация

совместный запрос mysql с тремя таблицами (таблица сотрудников, таблица отделов, таблица зарплат)

1. Краткое изложение проблемы: (внизу есть инструкция по созданию таблицы, копирование можно непосредственно практиковать с помощью (mysql)) Найдите отделы, в которых есть хотя бы один сотрудник. Отоб.


[Загрузчик классов обучения JVM] Третий день пользовательского контента, связанного с загрузчиком классов


IP, сеанс и cookie

Apache Tomcat — это необходимый компонент, требующийся для запуска веб-консоли ESMC.

Используйте эти инструкции для обновления Apache Tomcat вручную (если у вас нет последней версии комплексного установщика ESMC).

Действия перед обновлением

1. Убедитесь, что используется актуальная версия Java/OpenJDK.

С января 2019 года для общедоступных обновлений Oracle JAVA SE 8 нужна лицензия, если ПО используется в целях ведения бизнеса, коммерции или производства. Если вы не хотите приобретать подписку JAVA SE, можете воспользоваться этим руководством, чтобы перейти на бесплатную альтернативу и установить один из указанных поддерживаемых выпусков Java.

2. Проверьте, какая версия Apache Tomcat используется в настоящее время.

a. Перейдите в папку установки Apache Tomcat:
C:\Program Files\Apache Software Foundation\[ Tomcat папка ]\

b. Откройте файл RELEASE-NOTES в текстовом редакторе и проверьте номер версии (например, 7.0.90).

c. Если доступна более новая поддерживаемая версия, выполните обновление.

Обновление

1. Остановите службу Apache Tomcat: Перейдите в меню Пуск > Службы , щелкните правой кнопкой мыши службу Apache Tomcat и выберите пункт Остановить .

Закройте файл Tomcat7w.exe в области уведомлений, если он запущен.

2. Сделайте резервные копии следующих файлов:

C:\Program Files\Apache Software Foundation\[ Tomcat папка ]\ .keystore
C:\Program Files\Apache Software Foundation\[ Tomcat папка ]\ conf\server.xml
C:\Program Files\Apache Software Foundation\[ Tomcat папка ]\ webapps\era\WEB-INF\classes\sk\eset\era\g2webconsole\server\modules\config\EraWebServerConfig.properties

Если вы используете хранилище SSL-сертификатов с пользовательскими настройками в папке Tomcat , выполните также резервное копирование сертификата.

3. Удалите текущую версию Apache Tomcat.

4. Удалите следующую папку, если она все еще присутствует в вашей системе:

C:\Program Files\Apache Software Foundation\[ Tomcat папка ]\

6. Установите более новую версию Apache Tomcat, которую вы загрузили:

7. Восстановите .keystore , server.xml и настраиваемые сертификаты в первоначальные расположения.

10. Восстановите EraWebServerConfig.properties в исходной папке.

11. Запустите Apache Tomcat и задайте правильную виртуальную машину Java. Для этого выполните следующие действия:

a) Перейдите к папке C:\Program Files\Apache Software Foundation\[ Tomcat папка ]\ bin и запустите Tomcat9w.exe .

b) На вкладке Общие установите для параметра Тип запуска значение Автоматический и щелкните Запустить .

c) Перейдите на вкладку Java и убедитесь, что флажок Использовать умолчания не установлен, а виртуальная машина Java содержит путь к файлу jvm.dll (см. иллюстрированные указания в нашей базе знаний), а затем нажмите кнопку OK.

12. Подключитесь к веб-консоли ESMC и удостоверьтесь, что программа работает правильно.

Устранение неполадок

Я новичок в Tomcat . У нас есть машина dev с запущенными приложениями 5. Несмотря на то, что это dev, он используется нашими клиентами довольно сильно во время тестирования.

Итак, скажем, нам нужно сделать одно небольшое изменение в одном файле класса. Прямо сейчас, мы должны выключить Tomcat (затрагивая другие четыре приложения), удалить WAR файл (и каталог веб-приложений), повторно разверните новый WAR файл и перезапустите Tomcat .

конечно, это расстраивает несколько человек, потому что он уничтожает все регистрируется в сеансах для всех приложений.

есть ли лучший способ сделать это? Я имею в виду, есть ли способ только перезагрузить класс это изменилось вместо всего на машине dev?

вы пытались использовать менеджер приложения Tomcat? Это позволяет вам undeploy / deploy war файлы с выключением Tomcat вниз.

Если вы не хотите использовать приложение Manager, вы также можете удалить файл war из каталога webapps, Tomcat будет отменить развертывание приложения через короткий промежуток времени. Затем вы можете скопировать файл войны обратно в каталог, и котяра развернуть war-файл.

Если вы используете Tomcat в Windows, вам может понадобиться настроить ваш контекст, чтобы не блокировать различные файлы.

Если вы абсолютно не можете иметь простоя, вы можете посмотреть на параллельные развертывания Tomcat 7 можно развернуть несколько версий веб-приложения с одним и тем же контекстным путем одновременно. Для соответствия запросов контекстной версии используются следующие правила:

  • если в запросе нет информации о сеансе, используйте последнюю версия.
  • если информация о сеансе присутствует в запросе, проверьте диспетчер сеансов каждой версии для соответствующего сеанса, и если он найден, используйте эту версию.
  • если информация о сеансе присутствует в запросе, но соответствующий сеанс не найден, используйте последнюю версию.

есть несколько простых способов.

просто нажмите web.XML-код любого веб-приложения.

вы также можете обновить определенный файл jar в WEB-INF/lib, а затем коснуться web.xml, а не создание всего файла war и его повторное развертывание.

удалить каталог webapps/YOUR_WEB_APP, Tomcat начнет развертывание war в течение 5 секунд (при условии, что ваш файл war все еще существует в webapps папка.)

обычно перезапись файла войны с новой версией автоматически перераспределяется tomcat. Если нет, вы можете коснуться паутины.XML, как описано выше.

скопировать над уже взорванным "каталогом" в вашу папку webapps

в каталоге conf apache tomcat вы можете найти контекст.XML-файл. В этом теге редактирования как Context reloadable= "true">. это должно решить проблему и вам не нужно перезагружать сервер

Запуск производственного веб-сервера с Ubuntu 12.04, который поставляется с Tomcat 7.0.26. Должен ли я заботиться об обновлении установки Tomcat до последней версии 7.0.42 или я должен придерживаться того, что предоставляется? Если я придерживаюсь, то не уязвим ли я к угрозам и ошибкам в версии 7.0.26? Мне предложили всегда использовать последнюю минорную версию для таких вещей, как JRE 7, Tomcat 7 и т. Д. Разве это не подходит?

Должен ли я устанавливать последнюю версию, загрузив tar-файл и распаковав его вместо использования apt-get install для загрузки из репозиториев ubuntu более старой версии? Как бы я обновил эти установки позже?

У меня только одно веб-приложение работает на одном сервере. Хотя у меня нет особых требований к функциям для Tomcat или JRE, которые вынуждают меня использовать определенную более новую версию. Я прошу это просто для того, чтобы убедиться, что если я использую старую версию, поставляемую Ubuntu(установленную через apt-get install ), безопасен ли я с точки зрения безопасности и качества программного обеспечения? Будут ли эти пакеты программного обеспечения обновляться до более новой вспомогательной версии позже, пока я придерживаюсь определенной версии LTS?

3 ответа

Я спрашиваю это только для того, чтобы убедиться, что если я использую более старую версию, поставляемую Ubuntu(установленную через apt-get install), я в безопасности с точки зрения безопасности и качества программного обеспечения?

По умолчанию теперь Ubuntu включает бэкпорты. Имея в виду? Это исправления безопасности доставляются вам быстро и стабильно, если они исправлены в апстриме. Это в совокупности с тем фактом, что хранилище безопасности должно быть и в вашем sources.list. Следовательно, установка из репозиториев сохранит безопасность вашей системы, пока вы будете обновлять ее.

Ubuntu по умолчанию проверяет наличие обновлений каждые

24 часа и немедленно устанавливает обновления безопасности.

Будут ли эти пакеты программного обеспечения обновляться до более новой вспомогательной версии позже, пока я придерживаюсь определенной версии LTS?

Здесь ты сам себе противоречишь. Вы сказали, что вам не нужно придерживаться определенной версии Tomcat, но вы беспокоитесь, если будет выпущено небольшое обновление. LTS для людей, которые предпочитают стабильность, а не инновации. Если вы обновите свою систему и будете следовать стандартным методам безопасности, все будет в порядке.

Но неясно, как ubuntu обновляет tomcat, потому что младшая версия никогда не меняется, она всегда остается на tomcat 7.0.26 с ubuntu 12.04.

Если вы проверяете версии пакета вместо apt-cache policy tomcat7 , вы заметите, что там версия меняется. Вы также должны проверить журнал изменений и заметить precise-security Обновления. Эти пакеты устанавливаются в вашей системе сразу же после их появления. Внутренняя версия Tomcat не изменится, так как:

  1. Ubuntu применяет небольшой патч, который решает конкретную проблему.
  2. Особенности не представлены в бэкпортах, только исправления.
  3. Поскольку функции не представлены, а некоторый код зависит от конкретной версии и неработоспособности, на них это не влияет.

Если вы установили Tomcat с apt-get install и не перепутал с твоим sources.list слишком много файлов, тогда вы в безопасности, просто регулярно обновляя Ubuntu.

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

Q. Должен ли я заботиться об обновлении установки Tomcat до последней версии 7.0.42 или я должен придерживаться того, что предоставляется? О. Да, вы должны обновить / обновить.

В. Если я придерживаюсь, то не уязвим ли я к угрозам и ошибкам в версии 7.0.26? О. Да, вы уязвимы для ошибок в старых версиях. Но вы получите обновления безопасности и патчи автоматически, как только они будут выпущены.

В. Мне предложили всегда использовать последнюю минорную версию для таких вещей, как JRE 7, Tomcat 7 и т. Д. Разве это не работает здесь? О. Лучше всего использовать последнюю стабильную версию.

Читайте также: