git-svn-id: http://webgoat.googlecode.com/svn/branches/webgoat-6.0@485 4033779f-a91e-0410-96ef-6bf7bf53c507
110 lines
8.6 KiB
HTML
110 lines
8.6 KiB
HTML
<!-- Start Instructions -->
|
||
<h1>Настройка Tomcat</h1><br><br>
|
||
<h2>Введение</h2>
|
||
<p>WebGoat распространяется с конфигурацией Tomcat по умолчанию. На данной странице вы найдёте её короткое описание и
|
||
список возможных вариантов различных настроек. В случаях когда данное описание вам не помогает обращайтесь к официальной
|
||
документации Tomcat.
|
||
Кроме того, нужно сказать что всё нижеописанное относится к стандартной конфигурации сервера работающего на 80-ом порту.
|
||
Если вы используете для сервера другой порт, то вам необходимо будет изменить конфигурацию соответствующим образом.
|
||
</p>
|
||
|
||
<h2>Стандартная конфигурация</h2>
|
||
<p>Здесь имеется две стандартных конфигурации Tomcat. При их использовании доступ к серверу можно получить обращаясь к хосту localhost.
|
||
Они полностью идентичны, за исключением того что в первом случае сервисы Tomcat запускаются на портах 80 и 443 (SSL), а во втором -
|
||
на портах 8080 и 8443. В Linux вы должны запустить WebGoat как root или с использованием sudo если хотите чтоб он работал на портах
|
||
80 и 443.
|
||
Помните, что запуск ПО из под root`а очень опасное занятие, поэтому мы настоятельно рекомендуем использовать порты 8080 и 8443.
|
||
В Windows вы можете запустить WebGoat.bat для работы на 80-ом порту, или же WebGoat_8080.bat для работы на порту 8080.
|
||
В Linux ту же самую работу выполняет скрипт WebGoat.sh и для того же результата его необходимо запустить либо командой
|
||
"webgoat.sh start80", либо "webgoat.sh start8080". Пользователь, для доступа к приложению,
|
||
в стандартной конфигурации - guest с паролем guest.
|
||
</p>
|
||
|
||
<h2>Настройка сервера</h2>
|
||
<p>
|
||
Если вы единственный кто будет использовать WebGoat, то стандартной конфигурации вам
|
||
будет вполне достаточно. Если же вы будете запускать его в лаборатории или классе, то конфигурацию
|
||
нужно будет менять. Перед этим советуем вам сделать её резервную копию.
|
||
</p>
|
||
|
||
<h3>Изменение портов</h3>
|
||
<p>
|
||
Для изменения портов откройте файл server_80.xml, котрый можно найти в tomcat/conf, и измените
|
||
не-SSL порт. Например, если вы хотите использовать порт 8079:
|
||
</p>
|
||
|
||
<pre>
|
||
<!-- Define a non-SSL HTTP/1.1 Connector on port 8079 -->
|
||
<Connector address="127.0.0.1" port="8079"...
|
||
</pre>
|
||
<p>
|
||
Конечно же вы можете изменить и порт SSL-соединения. Вот пример переноса SSL на порт 8442:
|
||
</p>
|
||
<pre>
|
||
<!-- Define a SSL HTTP/1.1 Connector on port 8442 -->
|
||
<Connector address="127.0.0.1" port="8442"...
|
||
</pre>
|
||
<br>
|
||
|
||
<h3>Делаем WebGoat доступным для нескольких клиентов.</h3>
|
||
<p>ЭТО ОТКРЫВАЕТ ВАШ СЕРВЕР ДЛЯ РЕАЛЬНЫХ АТАК ИЗ ВНЕ! НЕ ДЕЛАЙТЕ ЭТОГО ЕСЛИ ВЫ НА 100%
|
||
НЕ УВЕРЕНЫ В НЕОБХОДИМОСТИ ДАННОГО ШАГА. ЭТА КОНФИГУРАЦИЯ МОЖЕТ БЫТЬ ИСПОЛЬЗОВАНА ТОЛЬКО
|
||
В ДОВЕРЕННЫХ СЕТЯХ.
|
||
</p>
|
||
<p>По умолчанию WebGoat доступен только при обращении к хосту localhost. В лаборатории или классе
|
||
у вас может возникнуть необходимость организовать сервер с множеством клиентов. В данном случае
|
||
вы можете настроить WebGoat соответствующим образом.
|
||
</p>
|
||
<p>Причина того что WebGoat доступен только на localhost - параметр address тега Connector в файле server_80.xml.
|
||
Изначально его значение установлено в 127.0.0.1 . При запуске приложение начинает проверять прописанные в настройках порты
|
||
только на этом адресе и принимает соединения если они появляются. Если вы удалите данный параметр, то приложение
|
||
начнёт прослушивать соответствующие порты на всех доступных IP-адресах.
|
||
</p>
|
||
|
||
<h3>Разрешение соединений только от определённых клиентов</h3>
|
||
<p>
|
||
Выше описывался способ разрешения соединений с WebGoat для любых клиентов.
|
||
Если вы хотите разрешить доступ к приложению только с определённых адресов, воспользуйтесь
|
||
фильтром удалённых адресов (Remote Address Filter). Для этого добавьте следующюю строку
|
||
в файл web_80.xml:
|
||
</p>
|
||
<pre>
|
||
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
|
||
allow="127.0.0.1,ip1,ip2"/>
|
||
</pre>
|
||
<p>В этом случае только localhost, ip1 и ip2 смогут устанавливать соединения с сервером.</p>
|
||
|
||
<h2>Стандартные пользователи WebGoat и роли для Tomcat</h2>
|
||
<p>
|
||
WebGoat`у для нормальной работы необходимо наличие следующих пользователей и ролей:
|
||
<br/>
|
||
<pre>
|
||
>role rolename="webgoat_basic"/<
|
||
>role rolename="webgoat_admin"/<
|
||
>role rolename="webgoat_user"/<
|
||
>user username="webgoat" password="webgoat" roles="webgoat_admin"/<
|
||
>user username="basic" password="basic" roles="webgoat_user,webgoat_basic"/<
|
||
>user username="guest" password="guest" roles="webgoat_user"/<
|
||
</pre>
|
||
</p>
|
||
<h2>Добавление пользователей</h2>
|
||
<p>
|
||
Обычно для нормальной работы с WebGoat вам достаточно будет пользователя guest с паролем guest.
|
||
Но когда вы развернёте его в лоборатории или классе может возникнуть необходимость создания отдельного
|
||
пользователя для каждого клиента. Для этого вам необходимо изменить файл tomcat-users.xml, которых находится в tomcat/conf.
|
||
<b>Мы настоятельно не рекомендуем хранить реальные действующие пароли в данном файле т.к.
|
||
там они прописываются в виде простого текста!</b>
|
||
</p>
|
||
<h3>Добавление пользователя</h3>
|
||
<p>
|
||
Процедура добавления пользователя очень проста. В качестве наглядного примера вы можете использовать
|
||
строку с пользователем guest. Помните что каждый вновь добавляемый пользователь должен иметь определённую роль.
|
||
Для добавления новых аккаунтов впишите в вышеуказанный файл строки типа этих:
|
||
</p>
|
||
<pre>
|
||
<user name="student1" password="password1" roles="webgoat_user"/>
|
||
<user name="student2" password="password2" roles="webgoat_user"/>
|
||
...
|
||
</pre>
|
||
|
||
<!-- Stop Instructions --> |