ServerAdmin.ru
28.9K subscribers
303 photos
35 videos
13 files
2.63K links
Авторская информация о системном администрировании.

Информация о рекламе: @srv_admin_reklama_bot
Автор: @zeroxzed

Второй канал: @srv_admin_live
Сайт: serveradmin.ru
Download Telegram
​​❗️Хостеры, с которыми я работаю сам и оплачиваю те или иные услуги. Все ссылки реферальные. Думаю, информация многим пригодится, так как поиск хостера сейчас нетривиальная задача. Выбор и конкуренция огромны.

Selectel - здесь в основном покупаю бюджетные дедики линейки Chipcore. У них низкая надёжность, но и цена соответствующая. Всё, что может пережить простой в пол дня, размещаю на них. Нормальные серверы тоже есть (на нормальных дисках), арендую и их, но реже. Мне нравится, как тут устроен личный кабинет, техподдержка (вопросы почти сразу решают, не тянут, не футболят). Если что-то падает, то сразу можно это увидеть на странице со статусом всех сервисов. Можно подсеть адресов купить, раскидать по своим дедикам. Все просто, наглядно, через панель управления. Так же покупаю у них S3 хранилище под бэкапы. Можно взять в аренду Raspberry Pi за 500 р.

RUVDS - конкретно у них меня привлекают ровно 2 услуги - дешманские промо vps за 30р. в месяц. Мне удалось одну купить, очень удобно, так как есть внешний ip. Использую под vpn. Второе - VPS с большими дисками. Суперудобная услуга, как по мне, которая мало где есть. Арендуется обычная виртуалка с 1 cpu и 1 gb ram и к ней дополнительно диск 1-2 Tb. Отлично подходит для бэкапов. Можно совместить с мониторингом, если чуть ресурсов добавить.

VDSina - использую под VPS, когда нужен какой-то кастомный iso образ. У этого хостера можно залить свой образ и установить с него систему на виртуалку. Например, берёте обычную виртуалку на 2 ядра, 4 гига памяти и ставите туда Windows 10 из своего образа. Вопросы по лицензиям не задают. Такая возможность мало где есть.

Serverspace - ничем особенно не примечательный хостер. Я на него обратил внимание, когда узнал, что их кластер построен на базе Freebsd. Это лоу костер VDS. Покупаю у них виртуалки в США, есть ЦОД в Нью Джерси. Ничего особенного про хостера сказать не могу, работает и работает. Удобно, что платишь в рублях. Еще плюс в том, что несмотря на бюджетные VPS, их можно объединять своими виртуальными сетями. Обычно у лоу костеров нет такой возможности.

Simplecloud - здесь арендую виртуалки с почасовой оплатой для тестов и написания статей. Удобно взять сразу что-то мощное, сделать всё, что нужно за пару часов, потратить 10 рублей и удалить виртуалку. Много готовых шаблонов vps. Например, с bitrixenv или docker. Не надо самому предварительные настройки делать. На постоянку этот хостер тоже сойдет. Цены низкие, работает стабильно. Вообще не припоминаю с ним проблем. У многих заказчиков там крутятся сайты. От них и узнал о нём, когда тестировали некоторые вещи на более мощных виртуалках с почасовой оплатой.

👉 Рекомендую забрать в закладки. Понадобится дешёвая виртуалка с виндой, быстро не найдёте. Когда мне нужно было, кучу хостеров перебрал, пока не нашел подходящего. Те, что предлагают vps с win + rdp как сервис, обычно сильно дороже стоят.

#хостинг
​​Разработчики VzLinux, одного из форков RHEL, который может заменить Centos, активно форсят свою систему. Мне попадается реклама этой системы в рекламной сети гугла - Adsense (реклама может быть полезной). Из ссылки в рекламе я узнал некоторые полезные подробности этой системы.

На сайте https://vzlinux.org/ представлен roadmap проекта, в котором заявлено, что в третьем квартале 2021 года (до конца сентября) появится инструмент по переходу с Centos 7 на VzLinux 8. Это достаточно полезный и актуальный функционал. Насколько я знаю, сейчас нет простого и надежного способа обновить Centos 7 на 8. Для RHEL 7 есть такая утилита, но в бесплатный доступ она не попала.

Я видел в интернете статьи по ручному обновлению с 7 на 8-ю версию. Там сначала ядро переставляют, потом меняют репы и обновляют пакеты. Все эти рецепты костыльные и нестабильные. Прод по этим руководствам я бы обновлять не стал. Посмотрим, что удастся сделать команде VzLinux. Если получится рабочий инструмент, то он, по идее, без проблем разойдётся и по остальным форкам. У RockyLinux подобного функционала пока тоже нет.

#centos
​​Сегодня у меня заметка про, не побоюсь этого слова, царя бесплатных self-hosted VPN сервисов - SoftEther VPN. Такого количества поддерживаемых технологий и реализаций vpn в одном продукте я еще не видел.

SoftEther VPN умеет поднимать L2TP/IPsec, OpenVPN, MS-SSTP, L2TPv3, EtherIP, а также имеет свой собственный SoftEther VPN Protocol (Ethernet over HTTPS), который неотличим от обычного HTTPS-трафика. Работает всё, как говорится, "из коробки".

Серверную часть можно поставить на любую из популярных ОС - Windows, Linux, MacOS, Freebsd. С клиентом та же история. В винде ставится через обычный инсталлятор, потом управляется через запуск приложения. На Linux надо качать исходники и собирать. Что любопытно, страница загрузки на сайте поддерживает работу в консольном браузере Lynx. Можно через него зайти и скачать нужную версию сразу на сервер. Настраивать придется правкой конфигов в консоли.

Я погуглил руководства на тему настройки SoftEther в Linux. Везде настройка идёт через консоль. То есть это не то решение, которое поставил, настроил за 5 минут через браузер и пользуешься. Придётся поразбираться немного. К тому же там есть свои абстракции и терминология.

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

Думаю, что это больше актуально для Windows, где простой установщик и интерфейс для настройки и управления. Пойдет для тех, кто не сильно разбирается в этих ваших консолях и вэпээнах. Если уж ковыряться в консоли, я бы руками настроил отдельно openvpn и l2tp и связал всё это самостоятельно, если бы надо было.

https://www.softether.org/

#vpn #selfhosted
На днях в очередной раз пользовался своим сервисом Webpagetest и решил, что не плохо бы про него рассказать, хотя ранее о нём уже были упоминания на канале. Это один из немногих сервисов, которыми я регулярно пользуюсь уже несколько лет.

Webpagetest позволяет протестировать производительность сайта, визуализируя загрузку контента в виде водопада запросов. Также записывается видео загрузки сайта. Функционал у сервиса обширный. Можно считать его профессиональным инструментом тех, кто занимается вопросами ускорения работы сайта. Есть сервисы для обычных людей, типа PageSpeed Insights, где зашел, быстро запустил тест, посмотрел циферки, не понял, что с ними делать и ушёл. Не знаешь даже, из какой географической локации проверка была.

Webpagetest для вдумчивой работы и анализа (проверки PageSpeed Insights он тоже в себя включает). Я как-то написал статью на примере проверки скорости работы сайта с помощью указанного инструмента. Это было давно, но данные там актуальны. Статья не устарела.

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

Для того, чтобы просто посмотреть о чём идет речь и какой конкретно присутствует функционал, можете воспользоваться бесплатным публичным сервисом - https://webpagetest.org.

Webpagetest создан с заделом на серьезное промышленное использование. Он умеет автоматически масштабироваться в AWS при росте запросов на тесты. У него есть API для автоматизации тестов. В общем, приятный и полезный во всех отношениях продукт. На Linux ставится очень быстро и просто из готовых Docker образов. Хотя я и так его устанавливал, прямо на сервер.

#selfhosted #сервис
​​Вчера на хабре в одной из статей увидел мониторинг, который меня сразу заинтересовал. Называется Monitoror - https://monitoror.com. Привлек он меня в первую очередь простым и лаконичным плиточным дашбордом. Мне он показался идеальным для вывода текстовых метрик. Стал разбираться.

Сам по себе он очень простой и состоит всего лишь из одного бинарника и конфигурационного файла к нему. Отдельным конфигом настраивается web интерфейс. Используется формат json.

Настраивать проверки быстро и просто. Мне так понравился этот мониторинг, что решил немного разобраться в нём и оформил всё в статью, чтобы потом самому не забыть.

Меня привлекла простота парсинга и сбора текстовых данных по http с возможностью их вывести в плитках на дашбодр. Это отличный инструмент для всяких чисел, получаемых из API. На сайте в статье как раз разобрал такой вариант с примером сбора данных из api telegram. Получается быстро и удобно собрать дашборд с нужными данными. Можно обучить даже не специалистов это делать. Там достаточно конфиг менять, monitoror автоматом подхватит изменения.

https://serveradmin.ru/monitoring-monitoror-s-plitochnym-dashboard/

#мониторинг #статья
Существует очень известная и популярная программа для удаленного сканирования хостов - Nmap. Лично у меня она стоит и на рабочем ноутбуке и на некоторых серверах. Используется как для разовых проверок открытых портов какого-то сервера, так и для регулярных автоматических проверок.

Я даже статью как-то написал на тему регулярных проверок своей же инфраструктуры с помощью nmap. Рекомендую ознакомиться. Бывает, что поднимается временно какой-то сервис для теста в отдельной виртуальной машине. Для простоты к нему просто пробрасывается определенный порт. После теста виртуальная машина удаляется, а проброс порта остается.

Через некоторое время на этот же ip адрес может приехать что-то другое. Например, у меня приехал новый сервер и на этот ip был посажен idrac. Каково же было мое удивление, когда я, сканируя внешний ip, увидел доступ к консоли управления сервером. Сначала перепугался, думал кто-то что-то сломал. Полез разбираться, оказалось, что старый проброс 443 порта остался на этом внешнем ip.

Можете настроить что-то простое и банальное, типа подобной проверки и засунуть её в крон:

nmap -T4 87.250.250.242 | mail -s "Nmap Scan 87.250.250.242" serveradmin@gmail.com

Раз в неделю будете получать отчёты на почту по проверке своих IP. И более детальную и подробную проверку сделать. Например, так:

nmap -T0 -A -v 87.250.250.242 | mail -s "Nmap Scan 87.250.250.242" serveradmin@gmail.com

Полный список параметров можно посмотреть в документации - https://nmap.org/man/ru/man-briefoptions.html

Добавлю для информации еще несколько ходовых примеров, чтобы за ними в документацию не лазить.

Сканирование подсети или отдельных адресов:
nmap 192.168.1.0/24 или nmap 192.168.1.*
nmap 192.168.1.1,2,3

Быстрый скан сети пингом. Позволяет сразу увидеть, какие хосты в сети запущены и отвечают на пинг.
nmap -sP 192.168.1.0/24

Скан хоста, не отвечающего на пинг. Актуально, если открытые порты есть, но хост не отвечает на icmp запросы.
nmap -Pn 192.168.1.1

Быстрое сканирование. Если не добавить ключи, увеличивающие скорость, дефолтный скан будет длиться очень долго.
nmap -F 192.168.1.1
nmap -T4 192.168.1.1

Подробный скан всех портов хоста. Небольшой скрипт nmap.sh, который по очереди подробно сканирует все открытые порты. Процесс может длиться долго.
#!/bin/bash
ports=$(nmap -p- --min-rate=500 $1 | grep ^[0-9] | cut -d '/' -f 1 | tr '\n' ',' | sed s/,$//)
nmap -p$ports -A $1

Использовать
./nmap.sh 192.168.1.1

Как обычно, не забываем забрать в закладки.

#terminal #утилита #nmap
Вчера у меня на канале была реклама курсов SkillBox. Один подписчик скинул мне видео на ютубе с отзывом на этот курс:

https://www.youtube.com/watch?v=lgOdb3_GRcw

Суть в том, что они продают курс, который просто пустой. Он не готов и не наполнен содержимым. Я привык к тому, что курсы постоянно ругают и говорят, что они не стоят своих денег. Всякое бывает. Какие-то курсы хорошие, какие-то плохие. Я сам некоторые курсы проходил и писал отзывы. Но тут совсем другое дело. Курса просто нет, а его продают. Что по сути похоже на сами знаете на что (не пишу прямо, потому что обнаружил, что эта компания любит судиться и убирать негативные отзывы), прикрытый офертой, составленной с нарушением законодательства.

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

#курсы
​​Как защититься от взлома через IP-адрес

Интересный факт: каждые 39 секунд в мире происходит одна хакерская атака. Чтобы обезопасить себя, скачайте бесплатно защитное ПО Crowdsec.

Почему им нужно пользоваться:

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

3. Соответствует требованиям GDPR и политик конфиденциальности, совместим с различными ПО и компонентами, работает компактно: не требует большого объема ОЗУ и ресурсов ЦП.

4. Вы получите фичи в подарок, если поучаствуете в краудсорсинге, и будете помогать выявлять вредоносные IP-адреса. Так мы создаем самую большую в мире базу вредоносных IP-адресов. 

Чтобы перестать бояться взлома и слива данных, а еще стать частью большого дела — скачивайте CrowdSec.

Некоторое время назад я пробовал CrowdSec - установил и настроил. Отличная современная замена Fail2Ban. Обо всем подробно написал в отдельной статье.

#реклама
​​Расскажите, кто как справляется с тем, чтобы не бахать по ошибке команды не в тот терминал? Наверняка каждый с этим сталкивался. Я время от времени так косячу, пока везло, что не фатально.

Как это обычно бывает. Открыто несколько сессий. Ты что-то делаешь, настраиваешь, готовишь команду на выполнение. Потом тебя отвлекают, ты делаешь какие-то другие вещи. Потом возвращаешься к первоначальной задаче и отправляешь команду не в тот терминал.

Я решил написать об этом, потому что вчера накосячил немного. Настраивал очередной сервер 1С под Linux. Там нужно русскую локаль поставить и активировать. Отвлекся и потом это сделал совершенно на другом сервере. Еще удивился, откуда на чистой системе какие-то еще локали, кроме en_us.utf-8. Только потом заметил, что сервер не тот. Откатил изменения обратно.

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

#мысли
​​Существует бесплатная публичная огромная база данных всевозможных уязвимостей - софта, операционных систем, прошивок и т.д. Причём пользоваться ей можно в оффлайне, периодически обновляя базу. Речь идёт о базе Exploitdb и инструменте поиска по ней - SearchSploit.

https://github.com/offensive-security/exploitdb

В дистрибутиве Kali Linux эта база есть в системе и в репозиториях. На все остальные дистрибутивы проще всего склонировать репозиторий:

# git clone https://github.com/offensive-security/exploitdb.git /opt/exploitdb
# ln -sf /opt/exploitdb/searchsploit /usr/local/bin/searchsploit

Пользоваться базой достаточно просто. Поищем уязвимости для roundcube:

# searchsploit 'roundcube'

К каким-то уязвимостям есть только описания, а для кого-то и готовые эксплоиты, написанные на различных языках программирования. Обычно это bash, python, ruby.

Я как-то ставил и тестировал систему автоматического обнаружения уязвимых версий софта и систем на своей инфраструктуре. Работала как плагин к Zabbix Server. Решение было самописное и немного костыльное. В итоге все сломалось и мне стало лень разбираться с ней. Да и Zabbix активно обновляется. Его лучше не трогать.

Кто-нибудь знает хорошие бесплатные системы, которые автоматически будут тебя уведомлять об уязвимостях в твоих версиях систем и пакетов?

#security
​​Существует программа для тестирования производительности сервера - sysbench. Она умеет всякими разными способами нагружать систему, но мне обычно это не надо. Да и в целом софта для теста процессора, памяти, дисков существует много. Гораздо полезнее другая ее возможность - тестирование производительности Mysql или Postgresql сервера.

Программа бесплатная, живет на github. Можно самому собирать, можно поставить из репозитория. Есть под все популярные системы. Быстро добавить репу можно через скрипт. Содержимое небольшое, можно проверить перед установкой:

# curl -s https://packagecloud.io/install/repositories/akopytov/sysbench/script.rpm.sh | sudo bash
# yum install sysbench

Список доступных тестов можно посмотреть в директории /usr/share/sysbench/. Перед началом тестов, надо создать тестовую базу:
> create database sbtest;

Я буду подключаться локально, авторизация через root уже настроена. Наполняем тестовую базу данными. Будут 16 таблиц по 10000 строк в каждой.
# sysbench \
--db-driver=mysql \
--mysql-user=root \
--mysql-db=sbtest \
--mysql-host=127.0.0.1 \
--mysql-port=3306 \
--tables=16 \
--table-size=10000 \
/usr/share/sysbench/oltp_read_write.lua prepare

Смотрим, что получилось:
# du -sh /var/lib/mysql/sbtest/
161M /var/lib/mysql/sbtest/

После этого запускаем сам тест oltp_read_write на 10 секунд:
# sysbench \
--db-driver=mysql \
--mysql-user=root \
--mysql-db=sbtest \
--mysql-host=127.0.0.1 \
--mysql-port=3306 \
--tables=16 \
--table-size=10000 \
--threads=4 \
--time=10 \
--events=0 \
--report-interval=1 \
/usr/share/sysbench/oltp_read_write.lua run

На выходе получите количество транзакций в секунду и некоторые другие данные. Настроек и возможностей у sysbench много, в рамках заметки это всё не рассказать. Надеюсь, показал главное - этой утилитой достаточно легко пользоваться. Не надо долго разбираться. Можно быстро оценить производительность, сравнить разные виртуальные машины или конфигурации mysql / postgresql.

#terminal #утилита
​​Скажите, есть хоть один человек, которому помогла бы решить проблему Диагностика сетевой ошибки Windows? Я когда вижу подобную ошибку, сразу становится грустно. Никогда точно не знаешь, из-за чего она. Надо доставать бубен, стучать по нему, перезагружать комп и надеяться, что всё получится.

В данном случае я даже не стал заморачиваться, так как это старая Win 7, которую я запустил для теста. С других компов на шару нормально заходит. Помню вал таких ошибок, когда только вышла Windows 10. Нельзя было просто взять и расшарить на ней папку, чтобы можно было зайти с Win 7. В половине случаев это заканчивалось подобной ошибкой. Я уже тогда особо не админил виндовые сетки и даже не помню, как решал эти проблемы. Старался просто перекинуть файлы каким-то другим способом, не тратя время на решение этой проблемы.

#ошибка #windows
​​Вчера в комментариях подсказали очень крутой ресурс для проверки уязвимостей установленных пакетов в Linux системе. Речь об этом ресурсе:

https://vulners.com/audit

Можно зайти по ссылке, выбрать систему и загрузить туда список всех своих пакетов. В ответ получите уязвимости в ваших версиях. Я как раз переносил старый файловый сервер на Centos 6 и решил его проверить. Он весь дырявый оказался. Благо работал в закрытой, ограниченной сети.

У этого сервиса есть бесплатный API. Я когда-то давно тестировал его интеграцию с Zabbix по этой статье с хабра. В целом работало, но потом я забросил эту интеграцию, так как не хотелось каждый раз разбираться с проблемами после обновления Zabbix. А он активно развивается, меняется, обновляется.

В закладки себе забрал этот сервис. Искренне благодарю за рекомендацию. Очень полезно. Я еще кое-что забрал из вчерашнего поста в закладки. Со временем напишу обзоры неплохих утилит для безопасности.

#security #сервис
​​На прошлой неделе прочитал достаточно интересную статью - Почему PostgreSQL не лучше MS SQL, где автор сравнил PostgreSQL и MSSQL для использования с 1С. Она мне показалась интересной, поэтому решил сделать для вас выжимку основной информации оттуда, как я её понял!

MSSQL - 20 лет сотрудничества с 1С. К ней все привыкли, у неё лучшие интерфейсы для управления БД с низким порогом входа как для разработчиков, так и поддержки.
 PostgreSQL - настройки в текстовом файле, командная строка Linux, скрипты для обслуживания и бэкапов. Всё это надо изучать, разбираться.
В среднем на MSSQL 1С работает быстрее. Большинство запросов выполняются примерно одинаково. Но бывает так, что на Postgres запросы выполняются значительно медленнее, но обратные ситуации не наблюдаются. То есть Postgres в лучшем случае будет работать так же, разработка под эту БД более требовательна к качеству кода запросов. Ошибок не прощает.
PostgreSQL более экономично относится к памяти, умеет отдавать неиспользованную память обратно системе. MSSQL пожирает всю память, что есть и хочет еще больше.
Бесплатные версии MSSQL и PostgreSQL не сравнимы по функционалу. Последняя уделывает Express версию MSSQL по всем параметрам. Так что по деньгами PostgreSQL будет значительно дешевле, либо вообще бесплатно.
Стоимости MSSQL Enterprise и Postgres Pro Enterprise на одном и том же числе пользователей и железе будут отличаться примерно в 3 раза в пользу Postgres.
У Postgres на Windows много недостатков. Лучше ставить Linux.
У Postgres Pro хорошая русскоязычная поддержка. Реально решают проблемы. Помогают разобрать тормоза конкретных запросов.

Автор статьи - Антон Дорошкевич, руководитель ИТ в компании «Инфософт», в Новосибирске. Является сертифицированным экспертом по эксплуатации PostgreSQL. Уровень сертификата «Эксперт». В течение последних 15-ти лет является эксплуататором больших многокластерных систем на тысячи пользователей и сотни баз – что на MS SQL, что на PostgreSQL.

#1с #postgresql #mssql
​​Дорогие мои любители консоли Linux. Предлагаю вам расположиться поудобнее и приготовить блокнотик, чтобы записать информацию о необычном обучающем проекте, с которым я вчера познакомился. Речь пойдёт про kodekloud-engineer.com. Я не помню, кто и когда мне его посоветовал, нашёл в закладках.

Это бесплатная обучающая платформа весьма необычного формата. Я прям залип вчера и ввязался в обучение. Суть там такая. Вы регистрируетесь и начинаете путь обычного сисадмина. Вас знакомят с проектом, рассказывают, что там к чему. Для него есть подробная схема, wiki, таблица с ip адресами и доступами.

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

Вводной теории по заданиям нет, то есть тут чисто практика. На выполнение задания даётся час. Всё выполняется в виртуальной консоли в браузере, которая эмулирует консоль Linux. Система там Ubuntu, по крайней мере на тех серверах, где я был по первому заданию.

Теперь о задании. Первое, что мне дали - настроить часовые пояса на некоторых серверах. Я не буду вам подробно рассказывать, что и как делал, а то не интересно будет. Для практикующих админов с этим заданием проблем не будет. Я выполнил за 15 минут.

Сначала засуетился, так как непривычно всё это. Посмотрел вводное видео и тут сразу задание. Я полез изучать схему, wiki, доступы. Немного вкурил всё это, понял как и куда надо зайти и что сделать. В итоге сделал и отдал задание на проверку. Его тут же проверили и сказали, что всё ОК. За выполненное задание начислили очки.

Если в решении ошибётесь, то сможете отправить его на проверку реальным людям, таким же участникам, как я понял, которые его прошли успешно. Там вам либо укажут вашу ошибку, либо просто покажут, как надо было сделать.

Мне идея очень понравилась. Буду по возможности проходить задания при наличии свободного времени. Если будет что-то интересное, напишу заметки по теме. Если кто-то тоже начнёт эту игру и будет проходить быстрее, прошу не писать прямые подсказки и готовые решения, чтобы остальным тоже было интересно.

#обучение
Существует Open Source проект от Cloudflare под названием Flan. Это сетевой сканер уязвимостей. Он основан на nmap и vulners.com, о котором я уже рассказывал ранее.

https://github.com/cloudflare/flan

Об этом сканере мне рассказал @matrix_operator и поделился своим способом автоматизации проверок своих внешних сервисов с помощью этого инструмента, за что ему большая благодарность.

Проверка хостов на CVE на открытых портах + отправка отчета на почту.
Идея там следующая. Заполняем текстовый файл со своими ip адресами. Можно делать вручную или автоматически, если у вас это каким-то образом организовано. Дальше скриптом обновляем репу с актуальными базами, запускаем Flan в докере и мапим к нему наш список ip адресов. Результат отправляем по почте.

Все подробности оформлены в заметку - https://drive.google.com/file/d/15ZTgRZz4NlXBRlrGJN8LMNynXDz3JV9t За комментариями по реализации обращайтесь к автору способа.

#security
Партнерские программы облачного провайдера Cloud4Y 
 
Если Вы: 
🔹Разработчик, IT-аутсорсер, системный интегратор 
🔹Эксперт в IT со своей аудиторией 
🔹Активный участник IT-сообществ 
🔹Компания, занимающиеся ИТ-консалтингом 
🔹Провайдер интернета, связи, хостинга 
 
Выберите одну из программ, подходящую для себя
🔸 Агент - зарабатывайте от 10% с привлеченных по Вашей ссылке клиентов. 
🔸 Партнер - доход до 40% от оборота приведенных к нам клиентов 
🔸 White Label - предоставляйте облачные услуги самостоятельно под своим брендом!  
Узнайте подробнее о программах.

Или Воспользуйтесь тестовым доступом, чтобы оценить возможности инфраструктурных решений. 
 
Коротко о Cloud4Y
- на рынке облаков с 2009 года 
- базовый SLA 99.982% 
- бесплатная техническая поддержка 24/7 
- 4 ЦОД в Москве, Нидерландах, Турции

#реклама
​​Я регулярно использую Docker, но в очень ограниченном режиме. Чаще всего просто запускаю и использую готовые контейнеры. Иногда правлю чужие докер файлы и практически никогда не пишу свои. Нет задач для этого.

Наиболее частые команды, которые приходится использовать, это запуск контейнера:
docker run -d -p 80:80 --restart=always --name nginx-proxy nginx

Просмотр списка запущенных и всех контейнеров:
docker ps
docker ps -a

Просмотр образов:
docker images

Удаление образов, одного или сразу всех:
docker rmi grafana/grafana
docker rmi $(docker images -a -q)

Вход в консоль контейнера:
docker exec -it nginx-proxy bash

Просмотр логов контейнера:
docker logs nginx-proxy
docker logs --tail 100 nginx-proxy

А на днях я узнал еще некоторые команды, которые очень полезны, но я о них просто не знал и никогда не использовал. Когда их увидел и родилась идея написать заметку и сохранить все наиболее часто используемые команды в одном месте, чтобы потом не вспоминать.

Статистика потребляемых ресурсов контейнера или группы контейнеров:
docker stats grafana7
docker stats container1 container2
docker stats grafana7 --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}"

Просмотр запущенных процессов в контейнере:
docker top grafana7

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

Информация о контейнере:
docker inspect nginx-proxy

Выполнить команду в контейнере:
docker exec -it nginx-proxy /usr/sbin/nginx -s reload

Очистить неиспользуемые данные:
docker system prune

Проверить занимаемое докером место:
docker system df

Пожалуй это все команды, что я обычно использую. Не считая запуска, перезапуска, удаления контейнеров. Пропустил что-то важное?

#docker #terminal
​​Не совсем по теме канала информация, но хочу ею с вами поделиться, потому что мне она показалась полезной. Речь пойдет про браузер LibreWolf.

https://librewolf-community.gitlab.io/

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

Firefox, как и все современные браузеры, перегружен ненужными вещами, типа дополнительных интеграций, встроенных сервисов, службой автообновления и т.д. А LibreWolf это тот же Firefox, только оттуда вырезано всё лишнее, что не нужно непосредственно для сёрфинга. Там нет телеметрии, службы автообновления, Pocket и т.д. На сайте все изменения описаны.

Я узнал об этом браузере несколько месяцев назад и с тех пор немного им пользуюсь. Мне нравится. Мне вообще Firefox нравится, особенно после недавнего обновления интерфейса. Некоторое время назад пытался на него полностью перейти, но не получилось. К сожалению, он потерял долю рынка, популярность. Мне попадались сайты и сервисы, которые в нем работали плохо. Пришлось отказаться от него, как основного браузера. Но в системе он так и остался, иногда запускаю. Навешал на него некоторые полезные расширения и использую его с ними. Основной браузер у меня вообще без расширений. Чистый Chrome.

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

https://kodekloud.com/

Для регистрации и начала обучения достаточно только email. Бесплатно доступны следующие курсы:

Docker for the Absolute Beginner
JSON PATH Quiz
Game of PODs (для тех, кто знаком с Kubernetes)
AWS Cloud for Beginners

Язык курсов - английский. Ведут индусы, кроме последнего. К остальным курсам доступ по подписке. Либо $17.50 в месяц, либо $9.50, если платишь сразу за год ($114). Сравните это с курсами на русском языке 😀

Сам курсы не смотрел, поэтому ничего сказать об их качестве не могу. Если бы у меня стояла задача обучиться Devops, я бы начал с чего-то подобного. 114 баксов за год доступа это вам не 60-100 т.р. как у нас за кота в мешке. Заодно и английский можно подтянуть, без которого никуда.

#курсы
​​Буквально на днях узнал про утилиту консоли Linux - findmnt. Разбирался с проверкой монтирования сетевых дисков перед выполнением их бэкапа в скриптах. В этом вопросе, на самом деле, очень много нюансов.

Проверки можно делать разными способами. Можно банально парсить вывод df, можно вывод mount, можно грепать /proc/mounts и т.д. Кто во что горазд. Я и то, и другое, и третье делал :) Но во всех этих способах есть те или иные нюансы. То подвисает сетевой диск и вывод mount вместе с ним, то с именами путаница возникает, если название дисков частично совпадают, то пробелы в точке монтирования мешают.

Немного поразбирался в теме и выходит, что findmnt самый стабильный надежный вариант. Вот скрипт проверки.

if findmnt -rno TARGET "$1" >/dev/null; then
  echo "$1 mounted."
else
  echo "$1 not mounted."
fi

Вместо $1 поставьте свой путь. Я в таком виде скрипт использовал для тестирования. Примерно так:

./check.sh /mnt/md5

К echo соответственно добавляете или заменяете на целевое действие. Проверки можно делать как по точке монтирования с помощью TARGET, как у меня в примере, так и по устройству, тогда использовать SOURCE. А можно и то и другое одновременно. Это гораздо удобнее и надёжнее парсинга вывода mount или чего-то ещё.

Такую инфу полезно забрать в закладки.

#bash