ИТ-заметки: субъективно
56 subscribers
23 photos
203 links
ИТ заметки по Network, Ops, DevOps

🔗 it.mxav.ru
Download Telegram
Блокирование ботов по User-Agent в Nginx

Короткая заметка, чтобы можно было быстро найти.
Недавно касался темы ботов. Самый простой вариант заблокировать ботов по User-Agent в Nginx
if ($http_user_agent ~* (GPTBot|claudebot|GeedoProductSearch|GeedoBot|Amazonbot|Bytespider|SeopultContentAnalyzer|SeekportBot|DataForSeoBot|Barkrowler|BLEXBot|SemrushBot|MJ12bot|AhrefsBot|bingbot|DotBot|PetalBot|LinkpadBot|SputnikBot|statdom.ru|MegaIndex.ru|WebDataStats|Jooblebot|Baiduspider|BackupLand|NetcraftSurveyAgent|openstat.ru|thesis-research-bot|fidget-spinner-bot|facebookexternalhit)){
return 444;
}

Если не хочется загружать конфиг, то можно вынести в отдельное место и подключить файл через include.

#devops@itmxav

😉 На сайте
Сбор конфигурации Zelax в Oxidized

Столкнулся с ситуацией, что для коммутаторов Zelax 30ХХ, на данный момент, нет модели в Oxidized.
В качестве тестового примера можно закоментить лишнее в ios.rb и назвать файл типа zlx.rb в папке model, потому что синтаксис необходимых команд схож.
В router.db можно добавить
NameRouter:zlx:cisco:IPAddress

В config можно добавить:
groups:
cisco:
username: usernameZLX
password: passwordZLX
model_map:
cisco: zlx

Конечно, пользователь на Zelax был создан заранее с нужным уровнем и нужными разрешенными командами, как в Cisco.
В тестовом варианте конфиг собрался. Может модель скоро и в официальном репозитории Oxidized появится.

#сети@itmxav
#devops@itmxav

😉 На сайте
Ведение записей в Telegram

Когда так или иначе обрабатываешь много информации, то часто надо делать заметки для себя. Возникает потребность в каком-нибудь приложении, чтобы записи можно быть открыть на смартфоне и на компьютере под разными операционными системами. Конечно, таких приложений много, и платных, и бесплатных: Google Keep, Evernote, Simplenote и т. д. Если есть возможность держать сервер, то можно, например, Nextcloud приспособить или сделать свой небольшой сайт в стиле ToDo-листа.

Пробовал разные варианты, но остановился всё же на Telegram, потому что он отвечал на мои критерии:
- Кроссплатформенность. Поддерживает разные операционки и можно даже через браузер зайти, если потребуется.
- Очень прост в управлении. Пишешь просто сообщение, а если задача выполнена или сообщение стало неактуально — удаляешь сообщение.
- Можно организовать многопользовательский режим. Просто добавить ещё человека и совместно обсуждать темы. Можно и без этого обойтись, но приятный момент.
- Можно передавать файлы.
- Можно делать отложенные сообщения. Некий аналог напоминалок в календаре.
- Можно общаться в рамках тем и поднять старое сообщение, если потребуется.
- Есть возможности закрепления тем и сообщений.
- Можно вести видеотрансляции через obs или просто созваниваться там же, где записи делаются. Конечно, эта функциональность необязательна, но приятный момент.

Думаю, что уже понятно как организовать такое в Telegram, но всё же кратко опишу:
1. Создаем группу и называем её как-то.
2. Переходим в редактирование группы и тыкаем включить темы. По умолчанию они выключены.
3. Дальше нажимаем в группе на круглую кнопку создать тему.
4. Называем тему и пишем сообщения по этой теме. Так можно создавать много тем.

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

#разное@itmxav

🔗 На сайте
Zelax не отправляет логи в Graylog

Наткнулся на ситуацию, когда логи с оборудования Zelax не появляются в Graylog.

Сначала надо настроить Zelax. В документации почему-то информация по настройке Syslog'а yt подходит и настраивается немного иначе:
1. Включаем info-center
info-center enable

2. Указываем источника для канала
info-center source debug level 7 prefix on channel 2

Пояснения:
level Х - уровень сообщений (0 - emergencies, 1 - alerts, 2 - critical, 3 - errors, 4 - warnings, 5 - notifications, 6 - informational, 7 - debugging);
channel X - номер канала, где часть каналов уже определена:
channel 0 - передача сообщений уровня debugging в консоль;
channel 1 - передача сообщений уровня debugging в терминальный монитор;
channel 2 - зарезервирован под передачу на Syslog-сервер;
channel 3 - передача debugging trap в буфер;
channel 4 - передача сообщений уровня warning в память (logsdram);
channel 5 - передача сообщений уровня critical в память (lognvram).
3. Направляем вывод на сервер Graylog
info-center loghost IP_ADDRESS facility local7 channel 2

Пояснения:
IP_ADDRESS - адрес сервера;
facility - категория сообщения для сервера;
channel X - номер канала, который должен совпадать с предыдущей настройкой.

И, вроде, должно всё заработать. По анализатору трафика видно, что все пакеты доходят, но почему-то отображения логов нет.
Момент заключается в том, что Graylog не обрабатывает полученные пакеты, пока в Zelax не будет установлены параметры времени.
Настраиваем:
ntp enable
ntp server IP_ADDRESS_SERVER
clock timezone MSK add 3 0


Странно. На Cisco, Huawei, Eltex, HPE таких моментов нет и Graylog сам фиксирует время, главное чтобы данные пришли, а здесь нет 😐

#zelax@itmxav
#сети@itmxav

🔗 На сайте
Быстрый поиск файлов в Linux, содержащих определенный текст

Короткая заметка, чтобы можно было отыскать.
Когда надо быстро найти файлы с определенным текстом, то можно перейти в нужную папку и использовать grep:

grep -iRl "нужный_текст" ./


Главное не потерять точку перед /, а то поиск будет производиться от корня.

#linux@itmxav

🔗 На сайте
Как проверить fstab в Linux?

Иногда требуется проверить файл /etc/fstab.
Перед внесением изменений лучше забэкапить fstab.
cp -p /etc/fstab /etc/fstab.bak

Можно рассмотреть вариант с ключом -a. Т.е. смонтируются всё, что указано в fstab.
mount -a

Как вариант, можно использоваться mount с фейковым подключением, т.е. проверка без внесения изменений. Главное не использовать ключ -f во FreeBDS. Там значение ключа другое - force.
mount -fav

Либо через findmnt можно сделать проверку.
findmnt --verify --verbose


#linux@itmxav

🔗 На сайте
👍1
Как настроить Syslog на Cisco ASA 5500 серии?

Для начала надо настроить время. Указываем зону и NTP-сервер:
clock timezone MSK/MSD 3
ntp server IP_NTP_server source inside


Далее настроиваем куда отправлять логи. Отправляем логи через inside-интерфейс и указываем, что отправляем их на порт 1234. По умолчанию 514 порт, но иногда лучше поменять порт. Например, Graylog почему-то не хотел логи с 514 порта обрабатывать, хотя логи других нормально обрабатывались.
logging enable
logging trap informational
logging asdm errors
logging device-id string ASA55ver
logging host inside IP_syslog 17/1234


#cisco@itmxav
#сети@itmxav

🔗 На сайте
Изменения в скрипте с оповещением в RocketChat

Немного подправил payload в скрипте с оповещением в RocketChat. Посмотреть/скачать можно с сайта или Github'а.
Плюс так можно легко найти нужное сообщение через поиск в RocketChat'е. Почему-то поиск не может найти текст в attachments сообщения.

📝 Другие заметки по RocketChat:
- Как исправить apparmor DENIED в snap.rocketchat-server.rocketchat-mongo?
- Как сделать резервное копирование данных rocketchat server?
- Как обновить Rocket.chat через snap?
- Как сбросить пароль RocketChat (admin) SNAP?

#devops@itmxav

🔗 На сайте
Как посмотреть логи контейнера в Docker?

Просто посмотреть логи контейнера:
docker logs NameContainer


Отслеживать появляющиеся новые сообщения в логах:
docker logs -f NameContainer


Посмотреть логи за определенный период:
docker logs -f NameContainer --since 2024-04-30 --until 2024-05-01


📝 Другие заметки по Docker:
- Простая установка Docker
- Как установить docker-compose?
- Как собрать образ из контейнера Docker для отправки в реестр?
- Как работать с Docker под своим пользователем?
- Как узнать ip контейнера docker?

#docker@itmxav
#devops@itmxav

🔗 На сайте
Как зеркалировать трафик на коммутаторе Huawei S5700?

Чтобы зеркалировать трафик надо указать куда зеркалировать, откуда и какой трафик (входящий и/или исходящий).

1. Переходим в режим конфигурирования:
system-view

2. Выбираем порт наблюдения. Например 11
observe-port 1 interface GigabitEthernet0/0/11

3. Указываем порт откуда трафик зеркалировать. Например 10:
interface GigabitEthernet 0/0/10
port-mirroring to observe-port 1 both
quit


Если требуется только входящий трафик зеркалироваться, то
port-mirroring to observe-port 1 inbound

Только исходящий
port-mirroring to observe-port 1 outbound

4. Посмотреть порт наблюдения:
display observe-port

5. Посмотреть порт зеркалирования:
display port-mirroring


📝 Другие заметки по Huawei:
- Как задать время на коммутаторе Huawei?
- Как поменять старый пароль на новый на Huawei?

#huawei@itmxav
#сети @itmxav

🔗 На сайте
Как заблокировать сайты на Squid?

Чтобы заблокировать сайты на прокси со Squid надо:
1. Создать список с сайтами для блокировки
nano /etc/squid/blacklistsites

или
nano /etc/squid3/blacklistwebsites

2. Добавляем сайты в список. Например:
site1\.ru
site2\.ru

Т.к. работа будет происходить по регулярным выражениям,то точку надо экранировать
3. В начале acl'ов указываем каким адресам надо проверять список. В данном примере 10 сети:
acl url_filtred src 10.0.0.0/8

и ниже указываем сам пуст к списку:
acl blacklistsites url_regex -i "/etc/squid/blacklistwebsites"

4. Перед всеми http_access указываем, что надо блокировать соединения из списка:
http_access deny blacklistsites url_filtred

5. Проверяем конфиг:
squid -k parse

6. Если всё хорошо, то перечитываем конфигурационный файл без остановки Squid:
squid -k reconfigure


#linux@itmxav
#сети@itmxav

🔗 На сайте
Что-то как-то затянули они. Середина 24 года как бы 😁
🔥1
Ох уж этот Docker!

Как дальше жить, если кит уплывает:
1. Прописать registry-mirrors
{ "registry-mirrors" : [ "https://куда-то-там" ] }

в Linux
/etc/docker/daemon.json

или
~/.config/docker/daemon.json

Для Windows
C:\ProgramData\docker\config\daemon.json

Для Windows с Docker Desktop
C:\Users\<Пользователь>\.docker\daemon.json

И перечитать конфиг
systemctl reload docker

🙃 Но если скучно и одиноко в этом сером, мрачном мире, то
systemctl restart docker


2. Поднять свой удобный прокси и пустить все через него. Вот здесь описывал как настроить работу Docker через прокси.

📝 Другие заметки по Docker:
- Простая установка Docker
- Как установить docker-compose?
- Как собрать образ из контейнера Docker для отправки в реестр?
- Как работать с Docker под своим пользователем?
- Как узнать ip контейнера docker?

#docker@itmxav
#devops@itmxav

🔗 На сайте
Продолжая тему блокирования обновлений Firefox..

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

#разное@itmxav

🔗 На сайте
Ошибка target is busy при umount

Иногда при отмонтировании можно получить ошибку "target is busy".
1. Это значит, что какая-то программа работает ещё с тем, что нужно отмонтировать
sudo umount /path/to/target
umount: /path/to/target: target is busy

2. С помощью lsof можно узнать какой процесс задействован.
sudo lsof /path/to/target

Получили вот такой примерный вывод
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
Output information may be incomplete.
lsof: WARNING: can't stat() fuse file system /run/user/1000/doc
Output information may be incomplete.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bash 2463085 user cwd DIR 7,65 2048 1792 /path/to/target

3. В данном случае у нас задействован процесс с PID 2463085. Точнее работает BASH. И правда был открыт терминал и находились именно в /path/to/target. После закрытия терминала или перехода в другую папку всё отмонтировалось как надо.
sudo umount /path/to/target


#linux@itmxav

🔗 На сайте
Новости про видео

Решил разделить видео на 3 основный направления:
1. SlowHowTo – видео, где объясняется, поясняется, что делается и зачем. Видео для тех, кто хочет послушать комментарии или объяснения того, что происходит. Длинные, «душные» видео.
2. FastHowTo – видео, где нет объяснений, а только показывается, как сделать что-то. Видео для тех, кто хочет быстро узнать, как сделать то или иное. Короткие видео.
3. FunnyHowTo - видео, где могут быть разные нестандартные подходы к решению задач, просто видео на тему «сделаю, потому что могу» или какой-то развлекательный контент.

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

Как понять где какое видео?
Все просто. В названии видео будет нужный тег [SlowHowTo], [FastHowTo] или [FunnyHowTo]. Также в ТГ в постах тоже будет указываться нужный тег #SlowHowTo #FastHowTo #FunnyHowTo
Через навигационное сообщение в ТГ можно легко найти всё и на сайте тоже будут теги, разделы.

🔗 На сайте
Небольшая заметка по Markdown

В Википедии говорится ,что
Markdown (МФА: [ˈmɑːkdaʊn], произносится маркда́ун) — облегчённый язык разметки, созданный с целью обозначения форматирования в простом тексте, с максимальным сохранением его читаемости человеком, и пригодный для машинного преобразования в языки для продвинутых публикаций (HTML, Rich Text и других).


Заголовки
Их можно определить следующим образом
# Заголовок первого уровня #
## Заголовок второго уровня ##
### Заголовок третьего уровня ###


Альтернативный вариант

Заголовок первого уровня
========================

Заголовок второго уровня
------------------------

Цитаты
> Текст цитаты

Ссылки
[Текст ссылки](http://example.com/ "Необязательный заголовок ссылки")

Списки
Неупорядоченный
- Первый элемент
- Второй элемент
- Вложенный первый элемент
- Вложенный первый элемент
- Вложенный второй элемент
- Третий элемент


Упорядоченный
+ Первый элемент
+ Второй элемент
+ Вложенный первый элемент
+ Вложенный первый элемент
+ Вложенный второй элемент
+ Третий элемент

Списки можно комбинировать.

Ссылки
\\Текст ссылки\http://ссылка_на_ресурс/\\
Текст перед ссылкой: \\http://ссылка_на_ресурс/\\


Таблицы
Пример таблицы с 3 столбцами и 3 строками, включая названия
! **1 столбец**
! **2 столбец**
! **3 столбец**
! Название в первом стобце 2 строке
! Текст во втором столбце второй строки.
! Текст в третьем столбце второй строки.
! Название во втором стобце 3 строке
! Текст во втором столбце третьей строки.
! Текст в третьем столбце третьей строки.


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

Доп.материалы:
- Онлайн редактор
- Статья на Habr
- Статья на doka.guide

#разное@itmxav

🔗 На сайте
Как скопировать файл на Linux через Remmina?

В данном примере взаимодействие идет между Linux Ubuntu и Windows 11 (удаленная машина).

1. Выбираем соединение в списке в Remmina. Правой кнопкой мыши кликаем по нему и выбираем «Правка».
2. Отмечаем галочкой «Общая папка» и выбираем папку, которая будет общей между Linux и удаленной машиной.
3. Подключаемся к удаленной машине.
4. Копируем нужный нам файл.
5. Переходим в «Компьютер» и там должна быть подсоединена наша общая папка как сетевая папка.
6. Копируем туда файл и проверяем на Linux.

#linux@itmxav
#windows@itmxav

🎬 На Youtube
🎬 На Rutube

🔗 На сайте
На Windows произошли масштабные сбои при обновлении

По всему миру произошли масштабные сбои персональных компьютерах и серверах. Пока что винят ИБ-приложение CrowdStrike.

На Habr'e показывают решение от производителя ПО:
Workaround Steps:
1. Boot Windows into Safe Mode or the Windows Recovery Environment
2. Navigate to the C:\Windows\System32\drivers\CrowdStrike directory
3. Locate the file matching “C-00000291*.sys”, and delete it.
4. Boot the host normally.

Если у кого-то ещё есть варианты решения проблемы, то пишите.

Вообще удивительно как какое-то такое ПО было установлено во многих местах и крайне мало кто знал про его существование. Может поэтому они отказались от Касперского? 🙃

#windows@itmxav
#разное@itmxav

🔗 На сайте
Как установить Docker Desktop на Windows 11?

Чтобы установить Docker Desktop на Windows 11 надо:
1. Перейти на сайт с Docker Desktop.
2. Нажать "Скачать для Windows" и подождать, пока скачается файл.
3. Запустить скаченный файл
4. Пройти установку. Если впервые устанавливаете, то лучше оставить галочки в рекомендуемых опциях.
5. Запустить Docker Desktop и подождать пока Docker Engine включиться. Должно быть зеленым в левом нижнем углу окна Docker Desktop.
6. Для проверки можно открыть командную строку и посмотреть версию через команду:
docker -v

7. Также можно проверить работу Docker, скачав и запустив какой-нибудь контейнер (hello-world или nginx с указанием 80 порта)

#docker@itmxav
#windows@itmxav
#fasthowto@itmxav

🎬 На Youtube
🎬 На Rutube

🔗 На сайте
Как изменить сеть для контейнеров в Docker Desktop на Windows 11?

Чтобы изменить сеть для контейнеров в Docker Desktop надо:
1. Запустить Docker Desktop и остановить все контейнеры, если они запущены.
2. Далее перейти в раздел настройки и выбрать пункт Docker Engine.
3. Добавить в конфигурации после "experimental": false
,
"default-address-pools":[
{"base":"10.77.0.0/24","size":24}
]

4. Если добавлено всё корректно, то никаких ошибок не выскочит под формой.
5. Далее применяем "Apply & restart" и ждем пока всё перезагрузится.
6. После загрузки запускаем контейнер для проверки и смотрим в параметрах контейнера, в Inspect, раздел Network. Там уже должна быть новая сеть.

#docker@itmxav
#windows@itmxav
#fasthowto@itmxav

🎬 На Youtube
🎬 На Rutube

🔗 На сайте