Если пользователь сам устанавливал Linux и занимался его настройкой, то он точно знает версию дистрибутива и прочие важные данные, однако может возникнуть необходимость узнать подобную информацию, если вы купили VPS или занимаетесь настройкой системы для знакомых. Во время такой настройки важно знать версию Linux, ведь она дает возможность планировать свои действия, например знание версии, поможет понять, будет ли компьютер подвержен вирусным атакам. Читать
Архив метки: Linux
Утилиты для стресс-теста в Kali Linux

Стресс-инструменты используются для DoS-атак или при проведении стресс-теста для различных приложений, чтобы принять соответствующие меры на будущее.
Все инструменты стресс-тестирования находятся в разделе Applications → 02-Vulnerability Analysis → Stress testing
Читать
Домашний Сервер: Часть 5 – Установка и настройка Plex Media Server в контейнере LXC Proxmox-VE
- Домашний Сервер: Часть 1 – Предисловие, аппаратная и софтовая начинка
- Домашний Сервер: Часть 2 – Установка системы виртуализации Proxmox
- Домашний Сервер: Часть 3 – Внутренний DNS сервис на BIND9 или свои доменные имена в локальной сети
- Домашний Сервер: Часть 4 – Настройка Transmission daemon в контейнере LXC Proxmox-VE
- Домашний Сервер: Часть 5 – Настройка Plex Media Server в контейнере LXC Proxmox-VE (вы тут)
Предисловие
Ну вот мы и добрались до самого медиасервиса с помощью которого можно просматривать свою медиатеку.
Познакомился я с Plex еще лет пять назад, тогда он был проще, но позволял делать все, что необходимо.
Кратко, что такое Plex? — По сути это медиа «комбайн» или центр управления, с помощью которого вы можете удобно хранить, искать и воспроизводить свой медиа контент и это не только фильмы или сериалы, это могут быть изображения и музыка. Командой Plex выпущены приложения для различного типа устройств, чтобы можно было начать смотреть фильм дома на большом экране и досмотреть например его в дороге.
Источник: www.plex.tv
Кстати недавно Plex запустил собственный бесплатный потоковый сервис с поддержкой рекламы.
Источник 5 dec 2019 (ENG): www.flatpanelshd.com
И еще, вы знали, что Plex поддерживает VR?
Т.е. если у вас нет большого экрана, но есть VR, вы можете создать себе свой собственный виртуальный кинотеатр. Правда есть пара нюансов =)
Можно принять участие в переводе Plex
https://www.transifex.com/plex-1/plex-web/
P.S.
Скажу сразу — это не реклама. От слова «совсем». Просто на текущий момент это единственная грамотная система для просмотра локальной медиатеки на различных устройствах, причем абсолютно бесплатно!
Установка Plex Media Server
В первую очередь необходимо развернуть отдельный LXC контейнер для медиасервера.
Подробно мы это разобрали в статье: Домашний Сервер: Часть 3 – Внутренний DNS сервис на BIND9 или свои доменные имена в локальной сети
Также для Plex Media Server понадобится доступ к месту хранения скачанных медиа файлов фильмов и сериалов, делаем по аналогии с Torrent качалкой
Мы разобрали это в статье: Домашний Сервер: Часть 4 – Настройка Transmission daemon в контейнере LXC Proxmox-VE
По итогу получаем финальный конфиг LXC контейнера для Plex в Proxmox-VE
cat /etc/pve/lxc/102.conf
#*) plexmediaserver
#*) snmpd
#*) nginx
arch: amd64
cores: 4
hostname: PLEX
memory: 2048
mp0: /rpoolz/data,mp=/mnt/data
nameserver: 192.168.88.7 192.168.88.1
net0: name=eth0,bridge=vmbr0,firewall=1,hwaddr=52:60:C0:78:C1:71,ip=dhcp,type=veth
onboot: 1
ostype: debian
rootfs: local-zfs:subvol-102-disk-0,size=8G
searchdomain: gregory-gost.ru
swap: 2048
unprivileged: 1
Запустим контейнер и перейдем к установке и настройке Plex Media Server
Проверяем смонтированную папку
ls -l /mnt/
total 1
drwxrwxrwx 4 nobody nogroup 4 Sep 25 23:14 data
Видим нужную нам папку, все хорошо, продолжаем.
Обновляем контейнер и устанавливаем дополнительные утилиты
apt update && apt full-upgrade -y
apt install net-tools curl apt-transport-https
Разработчики Plex любезно предоставляют полноценный репозиторий для обновлений через APT.
Т.е. нам не нужно качать исходники, собирать пакет и т.д., что безусловно намного удобнее!
Источник (ENG): Enable repository updating for supported Linux server distributions
В этой статье рассматривается процесс установки в контейнере Debian: DEB-based distros (Debian, Ubuntu, etc.)
По ссылке разработчиков Plex, также присутствует инструкция добавления репозитория для RPM-based distros (Fedora, CentOS, etc.)
Скачиваем и устанавливаем ключ от репозитория
curl https://downloads.plex.tv/plex-keys/PlexSign.key | apt-key add -
Создадим файл источника для установки и обновлений.
nano /etc/apt/sources.list.d/plexmediaserver.list
# Plexmediaserver
deb https://downloads.plex.tv/repo/deb public main
Обновляем репозитории
apt update
Подготовка завершена, устанавливаем Plex Media Server
apt install plexmediaserver
При окончании установки появится запрос замены файла репозитория.
Я рекомендую оставить вариант по умолчанию. Т.е. не заменять файл репозитория созданный нами, на файл предлагаемый пакетом Plex
Файл настройки "/etc/apt/sources.list.d/plexmediaserver.list"
==> Файл, созданный вами или сценарием.
==> Также, файл в пакете, предоставленный сопровождающим пакета.
Что нужно сделать? Есть следующие варианты:
Y или I : установить версию, предлагаемую сопровождающим пакета
N или O : оставить установленную на данный момент вермию
D : показать различия между версиями
Z : запустить оболочку командной строки для проверки ситуации
По умолчанию сохраняется текущая версия файла настройки.
*** plexmediaserver.list (Y/I/N/O/D/Z) [по умолчанию N] ?
Дожидаемся окончания процесса установки и запуска.
Проверяем запущен ли Plex
service plexmediaserver status
Если видим то, что ниже, значит все хорошо.
Active: active (running)
Сервер Plex будет работать по IP адресу контейнера.
WEB интерфейс запущен на TCP порту 32400 и еще необходимо указать дополнительный путь /web/
netstat -nltp4
tcp 0 0 0.0.0.0:32400 0.0.0.0:* LISTEN 27590/Plex Media
Откроем в браузере свой сервер набрав IP адрес и порт. У меня IP контейнера 192.168.88.8
192.168.88.8:32400/web/

После входа, Plex запросит вашу Учетную запись. Если у вас её нет, то будет необходимо пройти простую процедуру регистрации. Благо есть возможность заходить через учетные записи Google или Facebook.
После входа вас вернет на локальный сервер.

Далее необходимо выполнить первичную настройку Локального Сервера
После данного этапа сервером уже можно начинать пользоваться. Но есть еще некоторые вещи, которые упростят пользование данным сервисом и сделают его более понятным для пользователя владеющим Русским языком.
Установка и настройка nginx
Т.к. у нас есть DNS, реализуем вход по доменному имени, например у меня plex.gregory-gost.ru
Как видите никаких портов и дополнительных путей вводить при этом не требуется.
Сравните, что удобнее, понятнее и привычнее?
192.168.88.8:32400/web/
или
plex.gregory-gost.ru
Для этого используем реверс прокси.
Ставим nginx, останавливаем, удаляем базовый сайт «hello world» и добавляем свои настройки.
apt install nginx
service nginx stop
rm /etc/nginx/sites-enabled/default
nano /etc/nginx/nginx.conf
error_log /var/log/nginx/error.log crit;
pid /var/run/nginx.pid;
worker_rlimit_nofile 8192;
timer_resolution 100ms;
include /etc/nginx/modules-enabled/*.conf;
events {
multi_accept on;
accept_mutex off;
use epoll;
}
http {
include /etc/nginx/mime.types;
include /etc/nginx/fastcgi.conf;
default_type application/octet-stream;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
#ssl_session_cache shared:SSL:10m;
#ssl_session_timeout 10m;
include /etc/nginx/conf.d/*.conf;
}
nano /etc/nginx/conf.d/plex.conf
upstream plex_backend {
server 127.0.0.1:32400;
keepalive 32;
}
server {
listen 80;
server_name plex.gregory-gost.ru;
send_timeout 100m;
gzip on;
gzip_vary on;
gzip_min_length 1000;
gzip_proxied any;
gzip_types text/plain text/css text/xml application/xml text/javascript application/x-javascript image/svg+xml;
gzip_disable "MSIE [1-6].";
client_max_body_size 100M;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_redirect off;
proxy_buffering off;
location / {
if ($http_x_plex_device_name = '') {
rewrite ^/$ http://$http_host/web/index.html;
}
proxy_pass http://plex_backend;
}
}
Запускаем nginx и проверяем вход по доменному имени
service nginx start
Установка плагина Kinopoisk
Plex поддерживает различные плагины, которые немного упрощают жизнь. Для того, чтобы фильмы в библиотеке обрабатывались корректно и метаданные по ним скачивались на Русском языке можно и не ставить данный плагин. Plex умеет по умолчанию работать с The Movie Database (TMDb) и подгружает русские названия с описанием и постеры от туда. Правда рейтинг также берется с TMDb.
Благо есть «в нашем селении» способные умельцы. Уважаемый amirotin разработал плагин, который парсит метаданные с Кинопоиска.
С декабря 2019 года, amirotin перестал заниматься плагином и его поддержку на себя взял ziemenz.
Возможности плагина:
- Загрузка рейтингов для фильмов
- Kinopoisk
- Rotten Tomatoes
- IMDb
- The Movies Database
- Источники рецензий на фильмы
- Kinopoisk
- Rotten Tomatoes
- Загрузка трейлеров фильмов
- Загрузка дополнительных материалов (сцены, интервью)
- Загрузка английских имен актеров
- Приоритет локализованных обложек фильмов
- Поддержка прокси-серверов (http, sock5)
У себя, я использую Релизную версию плагина 2.0.1 от 29 февраля 2020 г.: Стабильный релиз v2.0.1
Инструкция для других OS(Windows, MacOS, FreeBSD, FreeNAS, QNAP, ): https://github.com/amirotin/Kinopoisk.bundle
Новая страница с исходниками плагина: https://github.com/ziemenz/Kinopoisk.bundle
Переходим в папку с плагином, скачиваем и распаковываем
cd /var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Plug-ins/
wget https://github.com/ziemenz/Kinopoisk.bundle/archive/v2.0.1.tar.gz
tar xvzf v2.0.1.tar.gz
Переименовываем папку т.к. она содержит лишнее «2.0.1»
mv Kinopoisk.bundle-2.0.1 Kinopoisk.bundle
Даем права для Plex Media Server на папку
chown -R plex:plex Kinopoisk.bundle/
Финальный вариант работающего Plex Media Server

Некоторые настройки Plex Media Server
Покажу некоторые настройки, которые у меня установлены для Plex Media Server.
В основном это настройки библиотек и плагинов обработки для них, остальные вы можете изучить самостоятельно, благо все на Русском языке.
Для фильмов Кинопоиск 2.0
Для сериалов The Movie Database т.к. плаин Кинопоиска пока не умеет работать с сериалами.
Изображения кликабельны:
TV Приставки и приложения для просмотра
И еще, немного затронем то, на чем все это великолепие можно смотреть!
Я использую на текущий момент:
- Xiaomi Mi Box S (MDZ-22-AB) Global Version — Использую на текущий момент. Все устраивает полностью, Android TV с приложением Plex, удобный Bluetooth пульт. (5 990 руб. на дату написания статьи в магазине Xiaomi. На Ali дешевле.)
- Raspberry Pi 3B+ с LibreELEC 9.2.0 — Установлен скрипт Plex с автозапуском. Пока единственный нормальный Custom по опыту. В целом задачи решает, но не так удобен, как Mi Box S на Android TV. Я писал статью по использованию: Домашний Медиа-плеер: LibreELEC(Kodi) на Raspberry Pi 3B+. Но планирую заменить на какой-нибудь Smart Box
Что еще можно использовать?
- Google Chromecast Ultra — Собственно плеер на Android TV от самого Google, функции аналогичные Mi Box S, но нет в комплекте Bluetooth пульта.
- Nvidia Shield TV 2019 — Обновленная «приставка» от Nvidia. С пультом, аналог Mi Box S и Google Chromecast Ultra, но дороже (13 990 руб. на дату написания статьи в магазине Nvidia)
- Nvidia Shield TV Pro 2019 — Более прокачанная версия «шилда» причем Plex Media Server уже встроен в этот медиаплеер, что конечно сомнительно всего 16Гб места, часть из которого занимает система. Даже с учетом возможности подключения HDD/SSD. (17 590 руб. на дату написания статьи в магазине Nvidia)
- Другие китайские или Российские(российско-китайские?) приставки на базе простого Android, CoreELEC, Android TV, др. — Ценники начиная от 1 500 руб. (Ugoos, H96, X96, X88, Movix Pro и т.д. и т.п.)
- Приложение PlexApp (офф версия требует PlexPass) — Есть, как для iOS так и для Android. Ставится на любой планшет, смартфон и т.д.Присутствует на некоторых Smart TV, тут вам нужно изучить набор приложений для вашего телевизора.
- Raspberry Pi и его аналоги на базе Kodi. Домашний Медиа-плеер: Raspbian + Kodi + плагин Plex на Raspberry Pi 3 B+
На февраль 2020:
Если хотите нормальные UHD(«4K» Ultra HD 2160p) с HDR и Автофреймрейтом, то смотрите в сторону Ugoos AM6+ или Pro, Nvidia Shield TV 2019 Pro
Для FHD(Full HD 1080p) Xiaomi Mi Box S побюджетней.
Если что-то забыл, пишите в комментариях, добавлю 🙂
Заключение
На этой радостной ноте предлагаю, закончить свое повествование по реализации Домашнего медиа сервера. Мы своего добились, фильмы и сериалы качаются на раз-два, просмотр доставляет одно удовольствие, ПК не захламлен кучей фильмов.
Возможно существуют и альтернативы Plex-у, в виде каких-то DLNA клиентов или даже тот-же Kodi, но все они не так удобны и проработаны, что дает очевидный выбор в пользу Plex. Даже при наличии различного рода сервисов, которые избыточны для домашнего локального просмотра, Plex их не навязывает и они не заметны. Это позволяет использовать его с комфортом.
Мне остается только понадеятся на грамотное развитие данной системы в будущем и пожелать его авторам успехов.
А вам дорогие читатели находить новые решения, использовать все самое лучшее и делиться впечатлениями!
В рамках цикла «Домашний сервер» планирую еще две статьи
- The Dude — мониторинг девайсов в домашней сети.
- FreePBX (Asterisk) — IP телефония.
А вот реализация Домашнего IoT пойдет в отдельный цикл, чтобы было проще ориентироваться в дальнейшем. Посмотрим будет ли интерсено читателям )
- openHAB 2 — домашний IoT.
Благодарю за ваше время!
Всего хорошего на просторах Интернета 😉
UPD: 29.02.2020
Изменен источник и инструкция для плагина Kinopoisk.
🐧 Red Hat Enterprise Linux 7 и CentOS 7 критическое обновление безопасности ядра
Red Hat и CentOS объявили о выпуске важных обновлений безопасности ядра для своих семейств операционных систем Red Hat Enterprise Linux 7 и CentOS Linux 7.
Сообщается, что обновления устраняют две дыры в безопасности и многие другие ошибки.
В частности, новое обновление безопасности ядра Linux устраняет уязвимости CVE-2019-14821 и CVE-2019-15239.
Среди них CVE-2019-15239 может привести к тому, что локальные злоумышленники вызовут несколько условий «use-after-free», что приведет к сбою ядра или потенциальному повышению привилегий.
Кроме того, обновление ядра устраняет многочисленные ошибки, в том числе отсутствие информации о SCSI VPD для дисков NVMe, которая нарушает InfoScale, разыменование нулевого указателя при check_preempt_wakeup 0x109, pick_next_task_rt panuc, ошибка «Обнаружено зависание модуля Tx» с сбросом адаптера, нарушенная балансировка нагрузки через VF LAG конфигурацию, проблемы безопасности в драйвере crypto vmx, XFS зависает при получении xfs_buf, ошибку, где виртуальная машина зависает во время open_posix_testsuite и многие другие.
Домашний Сервер: Часть 4 – Настройка Transmission daemon в контейнере LXC Proxmox-VE
Приветствую, уважаемые читатели на четвертой части цикла!
В прошлый раз мы установили и настроили локальные доменные имена на базе сервиса BIND9 в LXC контейнере.
Список цикла статей:
- Домашний Сервер: Часть 1 – Предисловие, аппаратная и софтовая начинка
- Домашний Сервер: Часть 2 – Установка системы виртуализации Proxmox
- Домашний Сервер: Часть 3 – Внутренний DNS сервис на BIND9 или свои доменные имена в локальной сети
- Домашний Сервер: Часть 4 – Настройка Transmission daemon в контейнере LXC Proxmox-VE (вы тут)
- Домашний Сервер: Часть 5 – Установка и настройка Plex Media Server в контейнере LXC Proxmox-VE
Как туннелировать VNC через SSH
Если вы подключаетесь к удаленному рабочему столу по протоколу VNC, ваше соединение может быть небезопасным. Некоторые клиенты VNC, такие как популярный TightVNC, не шифруют ваше соединение после начальной стадии входа в систему. Чтобы обойти проблему, вы можете туннелировать соединение VNC через туннель Secure Shell (SSH).
Туннель SSH не только обеспечивает полностью безопасное соединение для VNC, но также позволяет использовать соединения VNC, когда типичный порт VNC (порт 5901) заблокирован. Некоторые корпоративные сети блокируют общие порты, такие как порт 5901, для дополнительной безопасности, поэтому туннелирование VNC через SSH позволит вам обойти эту проблему.
Настройка PuTTY
В Windows 10 встроен SSH-клиент, благодаря Windows PowerShell, но это только недавняя разработка. Если вы хотите узнать, как туннелировать VNC через SSH, рекомендуется использовать PuTTY для подключения к вашему SSH-серверу.
PuTTY предлагает графический интерфейс пользователя, который можно легко настроить, чтобы вы могли туннелировать через соединение другое программное обеспечение, такое как программа просмотра VNC. Чтобы это работало, вам необходимо иметь подходящий SSH-сервер, установленный на удаленном настольном ПК или сервере, к которому вы хотите подключиться через VNC.
- Для начала загрузите PuTTY и откройте клиент.
- Главное меню сеанса позволяет вам ввести IP-адрес вашего сервера или имя хоста. Введите адрес вашего SSH-сервера в текстовом поле Имя хоста (или IP-адрес). Если ваш SSH-порт отличается от стандартного порта 22, введите его в поле «Порт».
- Вы также захотите сохранить этот сеанс, поэтому в текстовом поле «Сохраненные сеансы» добавьте подходящее имя для вашего SSH-соединения и нажмите кнопку «Сохранить».

- В левом меню разверните вкладку «Соединение», затем сделайте то же самое для SSH. Нажмите на Туннели.

- В разделе «Переадресация портов» меню «Туннели» вы предоставите сведения, которые позволят PuTTY туннелировать ваше соединение VNC через SSH. В текстовом поле «Порт источника» введите 5901. В текстовом поле «Адресат» введите свой удаленный IP-адрес: 5901, используя IP-адрес удаленного настольного ПК или сервера. Например, 192.168.1.100:5901 подойдет.

- Вернитесь в раздел «Сеанс», щелкните имя сохраненного сеанса в разделе «Сохраненные сеансы», затем нажмите «Сохранить», чтобы сохранить настройки.

- Когда настройки PuTTY будут готовы, установите соединение SSH, нажав кнопку «Открыть» внизу. Вам потребуется ввести имя пользователя и пароль, необходимые для подключения SSH, когда PuTTY попытается это сделать.

- После завершения входа в систему вам будет предоставлен доступ к окну SSH-терминала для удаленного рабочего стола.

С активным туннелем SSH к серверу удаленного рабочего стола вы сможете установить соединение VNC. Вы можете использовать любой VNC-клиент по вашему выбору, но в этом руководстве будет рассказано, как подключиться с помощью TightVNC, популярного и бесплатного VNC-клиента для Windows и Linux.
Вы можете свернуть PuTTY, пока соединение активно.
Подключение с помощью TightVNC
Если ваше SSH-соединение активно, подключение с использованием TightVNC довольно простое. Это предполагает, что ваш VNC-сервер работает на вашем удаленном ПК или сервере.
- Откройте TightVNC, чтобы начать. В разделе «Подключение» введите localhost :: 5901 или 127.0.0.1::5901 в текстовое поле «Удаленный хост». PuTTY контролирует этот порт и автоматически отправит это соединение, когда попытка будет предпринята, на ваш удаленный сервер.
- Вы можете настроить свое подключение VNC дальше, нажав «Опции», но, если вы готовы к подключению, нажмите «Подключиться».

- Вам будет предложено ввести пароль вашего сервера VNC, поэтому укажите его во всплывающем окне «Аутентификация VNC» и нажмите кнопку «ОК».

Если ваше SSH-соединение работает правильно, TightVNC должен загрузить окно удаленного рабочего стола VNC, готовое для использования.
Клиенты SSH с поддержкой туннелирования
Хотя TightVNC является популярным клиентом Windows для VNC-соединений, он не поддерживает SSH-туннелирование внутри самого клиента, что требует использования PuTTY для установления соединения.
Однако другие VNC-клиенты включают SSH-туннелирование внутри самого клиента. Одним из примеров является SSVNC, который, хотя и базовый, будет туннелировать по SSH перед установлением VNC-соединения. SSVNC поддерживается операционными системами Windows и Linux.
- Откройте клиент SSVNC и в главном окне клиента SSVNC заполните необходимые поля. В разделе VNC Host: Display введите SSHusername@remoteIPaddress:1. Замените SSHusername на имя пользователя, которое вы будете использовать для вашего SSH-соединения, и замените адрес удаленного IP-адреса на IP-адрес удаленного рабочего стола. Например, root@192.168.1.100:1.
- Убедитесь, что вы выбрали опцию Использовать SSH или SSL + SSL перед подключением. Когда вы будете готовы, нажмите кнопку Подключиться.

- Вас попросят ввести пароль SSH во всплывающем окне терминала. Введите пароль, затем нажмите клавишу ввода на клавиатуре.

Как только SSH-туннель будет активен, ваше VNC-соединение будет запущено, и должно появиться окно вашего VNC-клиента, где вы можете начать использовать удаленный рабочий стол.
Хотя соединения VNC по умолчанию не шифруются, собственный протокол удаленного рабочего стола Microsoft зашифрован. Если вы используете Windows и планируете подключиться к удаленному ПК или серверу Windows, вы можете подключиться с помощью инструмента «Подключение к удаленному рабочему столу».























