Типичный Сисадмин
1.25K subscribers
364 photos
43 videos
201 links
⚙️Информация для системного администратора

По всем вопросам : @Sofiia_artamonova
Download Telegram
Модель OSI в сравнении с моделью TCP/IP
👍3
Шпаргалка по systemd

Управление состояниями системы:

1. Перезагрузка системы:

systemctl reboot


2. Выключение системы:

systemctl poweroff


3. Перевести систему в спящий режим:

systemctl suspend


4.
Перевести систему в гибернацию
:

systemctl hibernate


5.
Перевести систему в гибридный режим сна
:

systemctl hybrid-sleep


Работа с юнит-файлами:

1.
Показать путь к юнит-файлу службы
:

systemctl show -p FragmentPath <имя_сервиса>


2.
Редактирование юнит-файла службы
:

systemctl edit <имя_сервиса>


Команда откроет конфигурацию в редакторе. Можно использовать флаг --full для редактирования полной версии юнит-файла.

3.
Переактивация всех юнитов после изменений
:

systemctl daemon-reload


4.
Показать конфигурацию службы
:

systemctl cat <имя_сервиса>


5.
Показать все зависимости службы
:

systemctl list-dependencies <имя_сервиса>


Логи:

1.
Просмотр логов службы
:

journalctl -u <имя_сервиса>


2.
Просмотр системных логов с конца
:

journalctl -e


3.
Просмотр логов для текущей сессии
:

journalctl -b


4.
Просмотр логов ядра
:

journalctl -k


Другие полезные команды:

1.
Получить статус загрузки
:

systemctl is-system-running


2.
Перевести систему в однопользовательский режим (rescue mode)
:

systemctl rescue


3.
Перевести систему в режим восстановления (emergency mode)
:

systemctl emergency


Описание формата юнит-файлов:

Юнит-файлы обычно хранятся в /etc/systemd/system/ или /lib/systemd/system/.

- [Unit] — Определяет общие атрибуты юнита, такие как описание и зависимости.
- [Service] — Конфигурация для сервисов, например, что запускать (`ExecStart=`) и как управлять процессом.
- [Install] — Настройки для включения или отключения юнита при загрузке.

Пример юнит-файла:

[Unit]
Description=Пример сервиса
After=network.target

[Service]
ExecStart=/usr/bin/пример-программы
Restart=on-failure

[Install]
WantedBy=multi-user.target
👍4
Шпаргалка по командам Cisco
Шпаргалка по LVM

LVM (Logical Volume Manager) — это система управления логическими томами на Linux, которая позволяет гибко управлять дисковым пространством. Она предоставляет возможность создавать, изменять размеры и управлять логическими томами, объединяя физические диски в единое пространство.

💡Основные понятия LVM

1. Physical Volume (PV) — физический том. Это физический диск или его раздел, который подготовлен для использования в LVM.
2. Volume Group (VG) — группа томов. Объединяет несколько PV в одно пространство для создания логических томов.
3. Logical Volume (LV) — логический том, который создается внутри VG. LV можно форматировать в файловую систему и монтировать.

⚫️Основные команды LVM

1. Создание физического тома (PV):

pvcreate /dev/sdX


2. Создание группы томов (VG):

vgcreate <имя VG> /dev/sdX


3. Создание логического тома (LV):

lvcreate -L <размер> -n <имя LV> <имя VG>

Пример:

lvcreate -L 10G -n my_volume my_group


4. Форматирование и монтирование LV:
- Форматирование:

mkfs.ext4 /dev/<имя VG>/<имя LV>

- Монтирование:

mount /dev/<имя VG>/<имя LV> /mnt/<путь>


5. Расширение логического тома (LV):

lvextend -L +<размер> /dev/<имя VG>/<имя LV>

- Обновление файловой системы:

resize2fs /dev/<имя VG>/<имя LV>


6. Уменьшение логического тома (LV):
- Сначала размонтируйте LV:

umount /dev/<имя VG>/<имя LV>

- Уменьшение размера:

lvreduce -L -<размер> /dev/<имя VG>/<имя LV>

- Обновление файловой системы:

resize2fs /dev/<имя VG>/<имя LV>


7. Удаление томов:
- Логический том:

lvremove /dev/<имя VG>/<имя LV>

- Группа томов:

vgremove <имя VG>

- Физический том:

pvremove /dev/sdX


⚫️Примеры использования

1. Создание нового логического тома на существующем VG:

lvcreate -L 5G -n data vg_main


2. Расширение VG добавлением нового PV:

vgextend vg_main /dev/sdY


3. Отображение информации о томах:
- Список всех PV, VG и LV:

pvs
vgs
lvs

- Детальная информация:

pvdisplay
vgdisplay
lvdisplay


4. Снимок (Snapshot):
- Создание снимка:

lvcreate -L 1G -s -n snapshot_name /dev/vg_name/lv_name
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Деление сети на подсети: шпаргалка
4👍2
Во многих организациях используется отложенная установка обновлений на хостах Windows Server. Если вам выделили окно обслуживания и нужно быстро скачать и установить обновления на всех серверах, удобно использовать PowerShell модуль PSWindowsUpdate:

1️⃣ Сформируйте список серверов из из AD:
$Srvs = Get-ADComputer -SearchBase "OU=Servers,DC=test,DC=loc" -Filter {OperatingSystem -like "*Windows Server*" } | Select -ExpandProperty name

🔹или txt файла:
$Srvs = GC c:\servers.txt


2️⃣ Запустить установку обновлений на серверах из списка и перезагрузить:
Invoke-WuJob -ComputerName $Srvs -Script {ipmo PSWindowsUpdate;  Install-WindowsUpdate -AcceptAll -AutoReboot | Out-File "C:\update.log"} -RunNow -Confirm:$false -Verbose -ErrorAction Ignore


Команда создаст на всех компьютерах задание планировщика с правами SYSTEM, которое запустите установку обновлений и выполнит перезагрузку по завершении.

3️⃣ Узнать статус установки:
Get-WUJob -ComputerName $Srvs
👍3
Полезные команды PowerShell для работы с сетью

1. Проверка сетевого подключения (аналог команды `ping`)

Test-Connection -ComputerName "example.com" -Count 4

Эта команда отправляет 4 пакета ICMP (ping) на указанный домен или IP-адрес.

2. Получение информации о сетевых интерфейсах

Get-NetAdapter

Показывает список всех сетевых адаптеров на компьютере и их текущее состояние.

3. Просмотр таблицы маршрутизации

Get-NetRoute

Эта команда показывает текущую таблицу маршрутизации.

4. Получение конфигурации IP-адреса

Get-NetIPAddress

Выводит список всех IP-адресов, настроенных на сетевых интерфейсах.

5. Изменение конфигурации IP-адреса

New-NetIPAddress -InterfaceAlias "Ethernet" -IPAddress 192.168.1.100 -PrefixLength 24 -DefaultGateway 192.168.1.1

Задает новый IP-адрес для указанного интерфейса.

6. Настройка DNS-сервера

Set-DnsClientServerAddress -InterfaceAlias "Ethernet" -ServerAddresses 8.8.8.8

Задает DNS-сервер для интерфейса с именем Ethernet.

7. Проверка доступных портов

Test-NetConnection -ComputerName "example.com" -Port 80

Проверяет доступность порта на удаленном хосте.

8. Просмотр всех активных соединений

Get-NetTCPConnection

Эта команда выводит все активные TCP-соединения на локальной машине.

9. Сброс сетевых параметров TCP/IP

netsh int ip reset

Хотя это и не чисто PowerShell, команда используется для сброса настроек TCP/IP.

10. Проверка конфигурации сетевого экрана (Firewall)

Get-NetFirewallProfile

Отображает текущие настройки брандмауэра для различных профилей сети.
👍3
📌Шпаргалка по перенаправлению команд в командной строке Linux
👍2
Эти утилиты предоставляют важные возможности для анализа и отладки сетевых проблем в различных операционных системах📌

Windows

▪️tracert - стандартная утилита в Windows для трассировки маршрута, которая известна многим.
tracert google.com


▪️pathping - это встроенный в Windows аналог утилиты mtr с аналогичной функциональностью, но поддерживающий только icmp запросы. Обычно он уже установлен в системе, и его не требуется устанавливать отдельно.
pathping google.com


▪️tracetcp - это виндовая утилита, которая может выполнять tcp syn запросы по маршруту следования пакетов. Она помогает определить доступность определенного порта и может указать, где именно блокируется этот порт. Для установки этой утилиты потребуется скачать ее с официального сайта и установить вручную.
tracetcp google.com:443


Linux

▪️traceroute - это стандартная утилита Linux, предназначенная для трассировки маршрута. По умолчанию она использует протокол udp, но вы можете выполнить трассировку с использованием протокола icmp следующим образом:
traceroute -I google.com


▪️tracepath - аналогична утилите traceroute, но использует протокол udp и сразу выводит значения mtu и маршрутизаторы, где происходит изменение mtu.
tracepath google.com


▪️mtr - эта утилита объединяет функциональность утилит ping и traceroute. Она может использовать протоколы tcp, udp и icmp. В операционной системе Windows есть аналог с названием Winmtr.
mtr -c3 google.com
👍2
Хорошая статья, описывающая различные методы усиления защиты машины с Linux. (Eng ver)

Linux не является безопасной операционной системой. Однако есть шаги, которые можно предпринять для ее улучшения. Цель этого руководства - объяснить, как максимально усилить Linux для обеспечения безопасности и конфиденциальности. Руководство не зависит от дистрибутива и не привязано к какому-либо конкретному.

https://madaidans-insecurities.github.io/guides/linux-hardening.html
👍2
Как работает HTTPS?

Безопасный протокол передачи гипертекста

(HTTPS) - это расширение протокола передачи гипертекста (HTTP). HTTPS передает зашифрованные данные с использованием транспортного уровня безопасности (TLS). Если данные будут перехвачены в Интернете, все, что получит угонщик, - это двоичный код.

Как шифруются и дешифруются данные?

Шаг 1 - Клиент (браузер) и сервер устанавливают TCP-соединение.

Шаг 2 - Клиент отправляет серверу " client hello". Сообщение содержит набор необходимых алгоритмов шифрования (наборов шифров) и последнюю версию TLS, которую он может поддерживать. Сервер отвечает " server hello", чтобы браузер знал, может ли он поддерживать алгоритмы и версию TLS.

Затем сервер отправляет SSL-сертификат клиенту. Сертификат содержит открытый ключ, имя хоста, дату истечения срока действия и т. д. Клиент проверяет сертификат.

Шаг 3. После проверки SSL-сертификата клиент генерирует ключ сессии и шифрует его с помощью открытого ключа. Сервер получает зашифрованный ключ сеанса и расшифровывает его с помощью закрытого ключа.

Шаг 4 - Теперь, когда клиент и сервер владеют одним и тем же сеансовым ключом (симметричное шифрование), зашифрованные данные передаются по защищенному двунаправленному каналу.

Почему HTTPS переключается на симметричное шифрование при передаче данных? Есть две основные причины:

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

2. Ресурсы сервера: Асимметричное шифрование добавляет довольно много математических накладных расходов. Оно не подходит для передачи данных в длительных сессиях.
👍3