<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Всем привет!<br>
    Как всем известно, в скором времени грядут различные ctf-like
    activities, некоторые из которых могут потребовать создания
    командной инфраструктуры (e.g. размещать образы виртуалок и тп).
    Оттуда же будут подниматься vpn-туннель на сервера организаторов
    (например, во время ructf quals такое часто бывает нужно).<br>
    <br>
    Так вот. Для того, чтобы получить доступ к нашей ctf-инфраструктуре,
    всем причастным нужно будет получить vpn-сертификаты (по аналогии с
    vpn-сертификатами для ЛВК).<br>
    Процедура состоит из следующих шагов (описание для юниксоподобных
    машин, обладателям win-машин придется спасаться как-нибудь
    по-другому):<br>
    <br>
    1.Установить openssl и каким-либо образом достать набор скриптов
    easy-rsa 2.0 (входит в пакет openvpn, хотя последний ни для чего
    иного не требуется)<br>
    2.Создать каталог для хранения ключей, установить ему права 700: <br>
     mkdir ~/keys <br>
    3. В случае использования easy-rsa из установленного openvpn,
    скопировать easy-rsa в отдельный каталог: <br>
     mkdir ~/easy-rsa ; cp /usr/share/openvpn/easy-rsa/2.0/* ~/easy-rsa 
    В других дистрибутивах путь может быть другим  Этот шаг необходим
    для того, чтобы, во-первых, кастомизировать этот пакет своими
    Organization name и т.д. и чтобы все это не было перезаписано при
    обновлении openvpn .<br>
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    4. Модифицировать ~/easy-rsa/vars согласно файлу из вложения<br
      class="Apple-interchange-newline">
    5. Загрузить конфиг: <br>
     cd ~/easy-rsa ; source vars <br>
    6. Подготовить easy-rsa к первому запуску (ВНИМАНИЕ: этот шаг удалит
    содержимое папки с ключами) <br>
     ./clean-all <br>
    7. Скопировать ca.crt из вложения в папку keys<br>
    8. Создаем ключ и запрос:  ./build-req your_chosen_name.<br>
    В процессе создания можно еще задать свой email, все остальные
    данные (OU, ON и тп) - остаются без изменений.<br>
    your_chosen_name - ваш никнейм, имя, идентификатор - что-нибудь в
    этом роде.<br>
    Настоятельно рекомендуется установить пароль на ключ.<br>
    После выполнения этого шага в папке keys появятся файлы
    your_chosen_name.csr и your_chosen_name.key<br>
    <br>
    Один из этих файлов (который .key) - ваш приватный ключ, храните его
    в секрете. Файл .csr должен быть послан мне. Дальше необходимо
    подтвердить подлинность csr-файла, для чего необходимо лично придти
    в ауд. 603 с любым документом, удостоверяющим личность (студак тоже
    подойдет) и сверить отпечаток csr-файла (md5sum wtf.csr). Заодно
    можете принести идентификатор и отпечаток своего PGP-ключа, если он
    у вас есть. Мой ключ 0x59AAC124, subkeys.pgp.net.<br>
    <br>
    После проверки вы получите по почте ваш личный сертификат (как и
    csr, это не приватные данные, так как воспользоваться сертификатом
    без вашего приватного ключа невозможно). Для подключения надо
    использовать конфиг ctf.conf из вложения (sudo openvpn ctf.conf), в
    котором надо заменить ngo на your_chosen_name. При запуске .key и
    .crt - файлы должны находиться в одной папке с конфигом (включая и
    ca.crt).<br>
    После запуска openvpn, если все прошло нормально, у вас должен
    появиться доступ к сети 10.13.37.0/24 (в частности, должен
    пинговаться шлюз 10.13.37.0)<br>
    <br>
    При необходимости можно пользоваться конфигом ctf-defroute.conf,
    который пропишет маршрут через тоннель в качестве маршрута по
    умолчанию, что может быть полезно в некоторых ситуациях. В
    частности, через тоннель есть доступ в интернет через сеть
    факультета, так что им имеет смысл пользоваться в недоверенных
    wifi-сетях. Use responsibly.<br>
    <br>
    <br>
    По всем вопросам - пишите. <br>
  </body>
</html>