Alhames

Цитата #1

Трудно все успевать когда ничего не делаешь.

Игромир 2017

Сегодня в первый раз побывал на Игромире / КомикКоне (искренне не понимаю почему нельзя было объединить название под единый слоган?) и по свежим следам хочу описать впечатления с разных точек зрения.

Организация

Если ты видишь в метро чувака с катаной в руке - то скорее всего он едет на Игромир. Причем толпа детей, вывалившаяся из вагонов метро на нужной станции, ведет себя очень странно - они зачем-то поднялись по лестнице на балкон, потом спустились с него и пошли дальше. Выйдя из метро они прошли мимо указателя на нужный павильон, сделали круг и лишь потом повернули в нужную сторону...

А сама станция метро - это отдельная история - ни одного указателя в каком направлении едет поезд и какие у него станции. Ни одного.

Сам павильон в двух шагах от метро. По пути предлагают купить билет со скидкой 25%. На входе я ожидал увидеть очередь - но нет, заходишь сразу и ничего не ждешь. Так как я не нашел в интернете никакой достоверной информации о наличии гардероба (на официальном сайте нет информации даже о часах работы выставки), то оделся так чтобы ничего не оставлять. Гардероб, все же, был, но вот в него-то, как раз, была гигантская очередь.

Косплей

Это первое что ты видишь, еще даже не дойдя до выставочного центра. В целом, это действительно круто для детей, которым представилась возможность пнуть увидеть любимого персонажа вживую. Но лично у меня фотографироваться с кем-либо желания не возникало.

Качество было самое разное - от хорошо подобранных под телосложение персонажей, качественно проработанной одежды и грима до бумажного пакета на голове.

Для косплееров - это отличная возможность показать себя. Хотя я не совсем понимаю почему разрешены откровенные наряды на мероприятии с возрастным рейтингом 0+. Также не совсем понятно предоставлялось ли им место для переодевания, т.к. некоторые переодевались в туалете.

Для фотографов - то в конце зала было большое пустое пространство, где можно было намостить освещение и сделать нормальные снимки без снующей туда-сюда толпы.

Для компаний, чью продукцию косплеют - это бесплатный пиар. Было очень много косплея Overwatch, причем не только оригинальных обликов персонажей, но и их скинов, о которых я даже и не знал.

Магазин

Что меня озадачило - это то что большое количество стендов просто торгует своими товарами. И это при том что выставка платная. Поэтому, с точки зрения посетителя, платить 2000 р. за вход, чтобы купить фигурку за 1000 р. - как-то не очень.

В первую очередь это была сувенирная продукция, а также диски, настольные игры, книжки и все прочее, близкое к тегам "аниме", "сериалы", "комиксы", "игры". Были еще забавные коробки-сюрпризы, при покупке которой ты получаешь определенное количество неопределенных предметов.

С точки зрения магазина - то за 6900-11000 р. за 10 м2 (именно столько стоила аренда) он получает огромное количество целевой аудитории. Но т.к. большинство посетителей - дети, то не уверен что продажи были действительно заоблачные. Цены - те же, что и в онлайн-магазине. Поэтому, по сути, ты покупаешь рекламу своего магазина.

Сцены

Их было несколько, на каждой что-то говорили и как-то развлекали гостей. В основном это были какие-то розыгрыши или что-то в этом духе - я не особо на них смотрел, поэтому добавить больше нечего. А еще в LoL играли - будь я фанат этой игры, я бы, наверное, у этой сцены задержался.

Игровые стенды

Наверное, основной целью похода на Игромир у меня была возможность опробовать VR до покупки шлема. Я, конечно, знал что будет очередь, но, блин, такая?! Был Skyrim (VR), который я очень люблю, но нервы свои я ценю больше - потому даже не стал стоять. Были еще и другие неизвестные мне игрушки с VR, но там и шлем был всего один, и очередь, хоть и маленькая, но почти не двигалась.

В остальном люди играли в самые разнообразные игры и подобное действо меня не очень впечатлило, т.к. поиграть я и дома могу. И пускай Far Cry 5 еще не вышел, а здесь его можно было пощупать - будто бы я не прошел предыдущие части и не понимаю что ждать от этой. Лучше б побольше VR-шлемов принесли бы.

Топ блогеры

Дабы не выражаться нецензурно, я пожалуй пропущу описание этого.

Специальные гости

В этот раз это были Рутгер Хауэр и Кристофер Ллойд. Также еще была масса наших известных личностей, о которых я ничего не знаю. Возможно, фанаты бы пошли только ради них, но это как-то не про меня.

Установка и настройка https

Внимание!
Начиная с октября 2016 г. Mozilla Firefox и с марта 2017 г. Google Chrome не поддерживают сертификаты от StartCom.
Вместо них можно воспользоваться бесплатным сертификатом Let’s Encrypt.

Как получить бесплатный сертификат для сайта

Чтобы получить бесплатный сертификат для https идем на startssl.com и регистрируемся там. После регистрации вы получите файл сертификата для авторизации на сайте (*.p12), который необходимо импортировать. В Windows 10 для этого достаточно два раза кликнуть по файлу, после чего запуститься Certificate Import Wizard и сделает почти всю работу за вас. Раньше выдавали сертификат всего на один год, но последний раз (октябрь 2016 г.) сразу выдали на 4 года. В любом случае по истечении срока действия сертификата или его потери достаточно вновь ввести email, ввести код подтверждения (который придет на email) и создать новый сертификат.

После прохождения валидации вам предоставят возможность создавать сертификаты. Бесплатный тарифный план включает в себя неограниченное (наверное) число сертификатов Class 1 - это сертификаты Domain Validation (DV), которые требуют лишь подтверждения владения доменом. Самый простой способ подтвердить - запросить код подтверждения на почту webmaster@, после чего в один сертификат вы можете включить до 10 разных доменов. Wildcard не поддерживается, поэтому как минимум нужно будет указать домен с www и без, ну и остальные по вашему желанию. Эти сертификаты выдаются на год, но через год вы можете бесплатно сгенерировать новый и заменить старые файлы.

Как установить сертификат на сервер

Для установки сертификата вам потребуется файлик с приватным ключем *.key и файлик с сертификатом *.pem. Первый вы получаете в процессе генерации сертификата, второй можно скачать со страницы списка сертификатов. Далее вам понадобится рутовый сертификат, его скачиваем с этой страницы - startssl.com/root - Root 1 - StartCom Certification Authority - ca.crt(pem). После чего объединяем рутовый сертификат с нашим в один файлик:

cat alhames.ru.pem ca.crt > cert.pem

Далее устаналиваем приватный ключ:

openssl rsa -in alhames.ru.key -out priv.key
chmod 600 priv.key

Все готово, теперь остается лишь вписать необходимые настройки в nginx. Просто копипастим все оттуда, вкачестве ssl_certificate используем файлик cert.pem, а в качетсве ssl_certificate_key используем priv.key.

Настройка cron

Для запуска скриптов по расписанию необходимо отредактировать файл /etc/crontab. Параметры задачи разделяются пробелом и имеют следующую последовательность:

  • Минута (0 - 59)
  • Час (0 - 23)
  • День месяца (1 - 31)
  • Месяц (1 - 12 или jan,feb,mar,apr...)
  • День недели (0 - 6, где воскрксенье = 0, или sun,mon,tue,wed,thu,fri,sat)
  • Имя пользователя
  • Команда

Задачи из крона запускаются не чаще раза в минуту. Указание времени по сути имеет вид фильтра - как только текущее время под него попадает, то задача запускается.

  • Если указать *, то это будет соответствовать любому значению.
  • Если указать конкретное число/название - то задача будет запускаться когда это число будет совпадать с текущим. Например 10 20 * * * будет запускаться раз в день в 20:10.
  • Также можно указать диапазон через дефис. Например, 0-10 * * * * будет запускаться каждую минуту в началае часа 10 раз.
  • Также можно перечислить время, разделив его запятой: 0,1,2,3,4,5 * * * *.
  • Также можно указать интервал, разделив * на число. Если текущее время будет делиться без остатка, то задача запустится. Например */10 * * * * будет запускаться каждые 10 минут (в 00, 10, 20, 30...).

Для записи логов выполнения в файл дописываем в конце команды следующее: > /tmp/cron.log 2>&1, что значит что поток ошибок (stderr) будет перенаправлен в поток вывода (stdout), который в свою очередь запишется в файл /tmp/cron.log. Для дозаписи ">" заменяем на ">>".

Итак, чтобы запускать команду Symfony раз в сутки в 23:00 и логировать ее выполнение, пишем следующее:

0 23 * * * nginx /var/www/project/bin/console cache:clear >> /var/www/project/var/logs/cron.log 2>&1

Как изменить ssh-порт

Открываем на редактирование файл /etc/ssh/sshd_config:

nano /etc/ssh/sshd_config

Находим строку #port 22, убираем "#" и заменяем 22 на любой свободный порт. Лучше всего использовать диапазон от 2000 до 7000. Список свободных портов можно посмотреть на wikipedia.org. А еще 2222 тоже лучше не использовать :)

Также список открытых портов можно посмотреть следующей командой:

netstat -tupln | grep LISTEN

После чего перезапускаем ssh и конектимся по новому порту:

systemctl restart sshd

Особо это не защитит, но зато избавит от сообщения аля

There were 181693 failed login attempts since the last successful login.

Установка CentOS 7 на VirtualBox

Скачиваем и устаналиваем VirtualBox отсюда - download.virtualbox.org/virtualbox. Лучше всего версию 4.3.12, т.к. у последующих имеются проблемы с запуском на Windows 7 (SP1, x64).

Создаем вирутальную машину. Тип жесткого желательно выбрать VMDK фиксированного размера. Операционную систему - Red Hat (64 bit).

Скачиваем образ CentOS 7 отсюда - www.centos.org/download (выбираем Minimal ISO). Либо сразу идем на mirror.yandex.ru/centos и скачиваем последнюю версию 7.x.

В настройках вирутальной машины в разделе Носители выбираем образ CentOS. В разделе Сеть тип подключения должен стоять NAT, переходим в проброс портов и добавляем следующие записи:

Имя Протокол IP хоста Порт хоста IP гостя Порт гостя
ssh tcp 192.168.56.1 22 10.0.2.15 22
http tcp 192.168.56.1 80 10.0.2.15 80
https tcp 192.168.56.1 443 10.0.2.15 443

Запускаем машину, начнется установка. Русский язык нигде не выбираем - везде оставляем English (US). Должны быть выбраны следующие настройки:

  • Date&Time: Europe/Moscow
  • Keyboard: English (US)
  • Language Support: English (United States)
  • Software selection: Minimal install
  • Installation destination: Automatic partitioning selected
  • Kdump: Kdump is enabled
  • Network & Host name: Wired (enp0s3) connected

В настройки сети придется обязательно зайти, указать название хоста и включить автозагрузку.

После завершения установки отключаем и удаляем firewalld (будем использовать iptables).

systemctl stop firewalld
systemctl disable firewalld
yum remove firewalld

Теперь можно перейти в Putty. В качестве хоста используем 192.168.56.1, порт 22 (стандартный). Обновляем систему и ставим все необходимое (по желанию).

yum update
yum install wget nano net-tools

Отключаем Selinux, заменив в /etc/sysconfig/selinux строку на SELINUX=disabled.

Далее ставим весь необходимый софт для установки гостевых аддонов:

rpm -Uvh https://download.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
yum install gcc make bzip2 kernel-devel kernel-headers dkms perl

Идем на download.virtualbox.org/virtualbox и скачиваем образ диска с гостевыми дополнениями от самой последней версии VirtualBox (VBoxGuestAdditions_4.x.xx.iso). В новых версиях kernel поменялась структура папок, поэтому гостевые аддоны от 4.3.12 не установятся. Можно скачать, к примеру, версию 4.3.26. После чего вставляем образ в дисковод.

Далее запускаем установлку аддонов:

mkdir /media/VBoxAdd
mount -r /dev/cdrom /media/VBoxAdd
cd /media/VBoxAdd
./VBoxLinuxAdditions.run

После такого как аддоны установились мы сможем, к примеру, монтировать папку WINDOWS, созданную под Windows, в папку /tmp/windows, следующей командой:

mount -t vboxsf WINDOWS /tmp/windows

Либо сразу добавить в автозагрузку файловой системы. Для этого необходимо отредактировать файл /etc/fstab, дописав следующую строчку:

WINDOWS /tmp/windows vboxsf defaults,comment=systemd.automount 0 0