Системный Администратор (Сисадмин)
14.1K subscribers
1.79K photos
1.78K videos
87 files
1.9K links
Настройка серверов Windows, Linux, сетевое оборудование Cisco Systems, D-Link, HP, Huawei, Juniper, MikroTik. Книги и мануалы для сисадминов.
По всем вопросам @evgenycarter

РКН clck.ru/3KoGJ3
Download Telegram
Полезные сетевые утилиты linux

ip

Утилита управляет интерфейсами, сетевыми устройствами и туннелями. Всем сетевым стеком linux. Например:
ip addr

Покажет список всех сетевых адресов. Тоже самое делает утилита ifconfig без параметров.
ip route

Покажет таблицу роутинга. Тоже самое сделает команда route.
ip link set eth0 up

Поднимает интерфейс eth0. Это можно также сделать с помощью ifconfig.

Так зачем она нужна если все ее команды можно выполнить с помощью других утилит? Дело в том, что во многие компактные дистрибутивы (например Alpine или openwrt) не используют ifconfig, route и другие “большие” утилит. Там оставляют только ip. Вот с помощью нее и придется выполнять все сетевые задачи.


nc

Полное имя netcat - на него она тоже откликается. Это утилита, позволяет слушать и выполнять TCP и UDP соединении.

И так что может netcat?

Открываем одно окно терминала и делаем там nc -l 12345 это будет наш сервер. Отрываем другое окно и пишем в нем nc 127.0.0.1 12345 — это наш клиент. Печатаем там “Hello!” нажимаем enter. В первом окне видим эту фразу. Ура! Мы написали однонаправленный чат.

Эта утилита пригодиться чтобы проверить жив ли сервер и слушает ли от вообще на этом порту? С помощью nc можно переслать файл и даже просканировать порты. Http сервер еще можно написать.


socat

Это труба, которая позволяет соединить два сокета между собой. Mysql слушает только на local socket а мы хотим на его ходить по tcp. Выглядит это так: socat TCP-LISTEN:3307,reuseaddr,fork UNIX-CONNECT:/var/lib/mysql/mysql.sock

Конектор к netcat из предыдущего примера: socat - TCP4:127.0.0.1:80

Если вам нужно перебросить сокет в другое место присмотритесь к socat он вам скорее всего поможет.


netstat

Эта утилита показывает текущее состояние сетевого стека. Она даст вам ответ на вопросы: что у меня там на порту 9081 висит? netstat -nltp Что с моими tcp соединениями и кто прямо сейчас ко мне подключен? netstat -atp

У этой утилиты есть младший (или старший по возможностям) брат ss посмотрите на него тоже может он понравиться больше.


curl

Утилита для передачи файлов. Так написано в ее описании. Чем же она замечательна? Она умеет кучу протоколов: DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET and TFTP. В каждом протоколе она знает множество версий, например HTTP она может до версии 2. Умеет подставлять хидера, куки, ходить по SSL, использовать proxy разных видов. Можно отлаживать http(s) соединение с помощью -v. Примеры:

curl http://artscene.textfiles.com/asciiart/unicorn

Единорог!

curl -v http://127.0.0.1:12345

Соединяемся с сервером из примера netcat. В консоле сервера увидим http запрос. После этого все остановиться curl будет ждать ответ. И если вы руками его введете покажет его.

📲 Мы в MAX

👉 @sysadminof
👍10
Media is too big
VIEW IN TELEGRAM
Шаблон Zabbix для мониторинга Active Directory

Как настроить мониторинг Active Directory с помощью zabbix, как настраивается zabbix agent (active).

📲 Мы в MAX

👉 @sysadminof
🔥12👍63
Linux-Commands

Шпаргалка по bash

Файловая система
-Просмотр содержимого папки
-Перемещение по файловой системе
-Создание папок и файлов
-Копирование файлов
-Переименование или перемещение файлов
-Удаление папок и файлов
Алиасы
Разное
Использование переменных
Подстановка команд в переменные
Математические операции
Управляющая конструкция if-then
Управляющая конструкция if-then-else
Конструкция CASE
Циклы
Сравнение чисел
Сравнение строк
Проверки файлов
Операторы

https://github.com/sergeevdm/Linux-Commands

📲 Мы в MAX

👉 @sysadminof
👍5
Как отлаживать bash-script-ы по шагам

Мне всегда хотелось иметь возможность отлаживать bash-scripts так же, как и любой другой код, т.е. по шагам, и bash такую возможность предусмотрел, но о ней не все знают. Несмотря на довольно большой опыт использования Linux, я дошёл до неё только недавно.

Волшебная строчка, которую нужно добавить после #!/bin/bash, чтоб скрипт можно было отлаживать по шагам


#!/bin/bash

trap 'echo "# $BASH_COMMAND";read' DEBUG

echo line1
echo line2

echo line3


Процесс отладки
Запускаем скрипт, перед выполнением каждой команды выводится то, что будет исполняться, затем интерпретатор начинает ожидать нажатия клавиши <ENTER>.

Если понимаем, что что-то пошло не так, нажимаем Ctrl+C и выходим из отладки.

Ингредиенты
команда trap, которая умеет перехватывать разные сигналы и в нашем случае она перехватывает сигнал DEBUG, посылаемый перед выполнением команды

команда read, которая умеет ожидать ввода чего-нибудь с клавиатуры (в данном случае нам нужно только либо ENTER либо Ctrl+C

переменная окружения $BASH_COMMAND, валидная внутри обработчика команды trap.


# Online Bash Shell.
# Code, Compile, Run and Debug Bash script online.
# Write your code in this editor and press "Run" button to execute it.

trap 'echo "# $BASH_COMMAND";read' DEBUG

echo line1
echo line2

echo line3

echo "Hello World";


📲 Мы в MAX

👉 @sysadminof
👍71🔥1
🆓 Ваши SQL-запросы работают, но через месяц их уже сложно прочитать и изменить?

С ростом логики запросы превращаются в набор вложенных подзапросов. Разобраться в них сложно, поддержка занимает время, а любые изменения несут риск сломать результат.

На открытом уроке разберём
как использовать обобщенные табличные выражения (CTE), чтобы писать сложные запросы по шагам.
Покажем, как упростить структуру, сделать код читаемым и работать с иерархиями через рекурсивные CTE.

🗓 Урок проходит в преддверии старта курса «PostgreSQL для администраторов баз данных и разработчиков». Если вы хотите писать SQL, который легко читать и поддерживать — подключайтесь 21 мая в 20:00 МСК.

🔗 Регистрация открыта: https://vk.cc/cXMQQT

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
1
Media is too big
VIEW IN TELEGRAM
Протокол ICMP, утилита traceroute

Утилита traceroute (в Windows tracert) используется для определения маршрута от отправителя к получателю. Утилита выдает перечень всех маршрутизаторов, через которые необходимо пройти.

Для определения IP-адресов маршрутизаторов, traceroute использует протокол ICMP. На первом этапе отправляется эхо-запрос (ICMP-пакет с кодом 8, типом 0) со временем жизни 1. Первый маршрутизатор уменьшает время жизни до 0, отбрасывает пакет и передает отправителю сообщение об истечении времени жизни пакета (ICMP-пакет с кодом 11, типом 0). traceroute получает ICMP-пакет, анализирует IP-заголовок и извлекает из него IP-адрес отправителя. Это и есть адрес первого маршрутизатора.

Затем отправляется эхо-запрос со временем жизни 2, он доходит до второго маршрутизатора. Второй маршрутизатор отбрасывает пакет и также передает сообщение, что время жизни пакета истекло. traceroute извлекает из сообщения IP-адрес второго маршрутизатора. После этого traceroute передает эхо-запрос со временем жизни 3, 4, 5 и т.д., пока запрос не дойдет до получателя.

источник

📲 Мы в MAX

👉 @sysadminof
👍121👌1
Соответствие команд CMD Windows командам Linux

📲 Мы в MAX

👉 @sysadminof
👍10
Media is too big
VIEW IN TELEGRAM
Протокол NDP

Рассматриваем два сценария использования протокола NDP:
- Автоматическая настройка сетевой конфигурации. Компьютеры получают от маршрутизатора сетевые настройки в сообщении Router Advertisement.
- Определение MAC-адреса по известному IPv6 адресу. Компьютер, который хочет узнать MAC-адрес, высыдает сообщение NDP Neighbor Solicitation. Получатель отправляет свой MAC-адрес в ответ в пакете NDP Neighbor Advertisement. Информация сохраняется в таблице NDP (аналог ARP-таблицы в протоколе IPv4).

источник

📲 Мы в MAX

👉 @sysadminof
👍4😱1
👩‍💻 Открытый урок «Деплой на стероидах: ускоряем доставку через Золотой путь (Golden Path)»

🗓 Сегодня: 18 мая в 20:00 МСК

🆓 Бесплатно. Урок в рамках старта курса «Инженер платформенной инфраструктуры» от Otus.

Запуск нового сервиса часто превращается в сложный процесс: настройка CI/CD, инфраструктуры, доступов и окружений. Это замедляет разработку и увеличивает количество ошибок.

На вебинаре разберём концепцию Golden Path — готовых шаблонов и стандартов, которые позволяют запускать сервисы быстро, безопасно и одинаково для всех команд.

На вебинаре разберем:
- Почему деплой замедляет команды
- Что такое Golden Path и зачем он нужен
- Как стандартизировать запуск сервисов
- Роль шаблонов, CI/CD и developer portal
- Как сократить время запуска нового сервиса
- Частые ошибки при внедрении Golden Path

🔗 Ссылка на регистрацию: https://vk.cc/cXVkO4

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👍1