Admin Guides | Сисадмин
11.4K subscribers
1.22K photos
19 videos
34 files
555 links
Обучающий канал по ОС Linux & Windows для начинающих и действующих администраторов.

Админ, реклама: @Ak_Mihail
Биржа: https://telega.in/c/admguides

РКН: https://kurl.ru/nQejS
Download Telegram
В США запустили самый мощный суперкомпьютер El Capitan

В Национальной лаборатории Ливермора заработал самый мощный суперкомпьютер в мире — El Capitan.

Он возглавил рейтинг Top500 2024 года с производительностью 1,742 экзафлопса.


Проект стоимостью 600 млн долларов создан для моделирования ядерного арсенала США и научных исследований.

Система оснащена 11 млн ядер AMD EPYC с ускорителями MI300X, работает на HPE Cray OS и имеет пиковую мощность 2,746 экзафлопса.

El Capitan заменил суперкомпьютер Sierra, который теперь занимает 14-е место в мире.
👍15👎1
Настройка скорости и дуплекса сетевого адаптера в Linux с помощью ethtool

Конфигурация сетевой карты влияет на стабильность и скорость работы сервера. 


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

Полудуплекс, полный дуплекс и автосогласование
Полудуплекс (Half-duplex) – устройство может либо отправлять, либо получать данные, но не одновременно.
Полнодуплекс (Full-duplex) – передача и приём происходят одновременно, что значительно повышает эффективность соединения.
Автосогласование (Auto-Negotiation) – автоматический выбор наилучшего режима связи. Рекомендуется оставлять его включённым.

Дуплексное несоответствие и его последствия

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

Установка ethtool

Если утилита ethtool отсутствует, установите её с помощью:
Fedora, CentOS, RHEL:

yum install ethtool


Ubuntu, Debian:

sudo apt-get install ethtool


Проверка текущих параметров сетевой карты

Сначала нужно узнать имя сетевого интерфейса. Для этого выполните команду:

ifconfig


Вывод может выглядеть так:

enp0s3      Link encap:Ethernet  HWaddr 00:1A:2B:3C:4D:5E


Теперь проверим текущие настройки адаптера:

ethtool enp0s3


Вывод покажет, какая скорость, дуплекс и автосогласование установлены в данный момент.

Изменение параметров сети

Чтобы изменить настройки сетевой карты, используйте команду:

sudo ethtool -s [device_name] speed [10/100/1000] duplex [half/full] autoneg [on/off]


Пример установки скорости 1000 Мбит/с, полнодуплексного режима и включённого автосогласования:

sudo ethtool -s enp0s3 speed 1000 duplex full autoneg on


Проверьте, что изменения применились:

ethtool enp0s3


Сохранение настроек

После перезагрузки системы изменения ethtool сбрасываются. Чтобы сделать их постоянными, добавьте строку в конфигурационный файл интерфейса:

vi /etc/sysconfig/network-scripts/ifcfg-enp0s3


Добавьте:

ETHTOOL_OPTS="speed 1000 duplex full autoneg on"


Теперь параметры будут сохраняться после каждой перезагрузки.

Во второй части разберём диагностику сети, поиск неисправностей и тестирование адаптера с помощью ethtool.
👍13🔥41
💬 Вопрос на собеседовании для сисадмина

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


Вопрос: Как работает eBPF в Linux и зачем он нужен?

Ответ: eBPF (Extended Berkeley Packet Filter) — это механизм в ядре Linux, позволяющий безопасно выполнять код в пространстве ядра без изменения его исходников. Он используется для сетевого мониторинга, безопасности, трассировки и профилирования.

Применение eBPF:
Сетевой фильтр: ускоряет обработку пакетов, применяется в XDP и Cilium.
Мониторинг и трассировка: инструменты вроде BCC и bpftrace используют eBPF для анализа работы ядра в реальном времени.
Безопасность: используется в системе защиты, такой как Falco, для обнаружения аномалий.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12
Тяжелое утро сисадмина
🫡38😁24💯8😭2👍1
Диагностика и тестирование с ethtool

ethtool не только позволяет настраивать параметры сетевой карты, но и предоставляет полезные инструменты для диагностики и тестирования устройства.

Просмотр статистики интерфейса

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

sudo ethtool -S имя_устройства


Вывод этой команды даст вам статистику, такую как количество переданных и полученных пакетов, ошибки, количество коллизий и другие параметры, которые могут помочь в диагностике проблем с сетью. Пример вывода:

NIC statistics:
rx_packets: 108048475
tx_packets: 125002612
rx_bytes: 17446338197
tx_bytes: 113281003056
rx_errors: 0
tx_errors: 0
collisions: 0


Это позволяет точно отслеживать проблемы, такие как ошибки передачи или переполнение буфера.

Физическое расположение сетевого адаптера

Если у вас несколько сетевых карт, и вы хотите определить, какая из них вызывает проблемы, ethtool может помочь. Он позволяет заставить мигать индикатор на сетевой карте, чтобы вы могли физически найти нужный адаптер.
Для этого выполните команду:

sudo ethtool -p enp0s3 15


Где enp0s3 – это имя устройства, а 15 – количество секунд, в течение которых будет мигать светодиод.

Тестирование сетевого адаптера

ethtool предоставляет два типа тестов:
1. Online тест – тестирует, например, память и связь.
2. Offline тест – проверяет регистры, память и выполняет loopback-тесты.

Для запуска онлайн-теста используйте команду:

sudo ethtool -t enp0s3 online


Результат покажет, прошёл ли тест или были обнаружены ошибки. Учтите, что не все устройства поддерживают оффлайн тесты.

Информация о драйверах

Чтобы узнать, какой драйвер используется вашей сетевой картой, выполните команду:

ethtool -i eth0


Вывод покажет имя драйвера, версию прошивки и другие технические данные, например:

driver: via-rhine
version: 1.5.0
firmware-version:
bus-info: 0000:00:06.0
👍15🔥6
Какой параметр в /etc/fstab отвечает за автоматическую проверку файловой системы при загрузке?
Anonymous Quiz
29%
defaults
16%
nofail
12%
pass
43%
auto
👻7🔥5👍3
Ookla опубликовала новый отчёт о скорости интернета в разных странах

Аналитическая компания

Ookla
представила свежий рейтинг скорости интернета за январь 2025 года. Лидером по фиксированному широкополосному интернету стал Сингапур, а самый быстрый мобильный интернет оказался в ОАЭ.

Широкополосный интернет

Глобальная медианная скорость загрузки составила 97,61 Мбит/с, выгрузки — 52,84 Мбит/с, а средняя задержка — 9 мс.

Лидеры рейтинга:
Сингапур336,45 Мбит/с (загрузка) и 275,30 Мбит/с (выгрузка)
ОАЭ310,05 Мбит/с
Гонконг305,71 Мбит/с
Франция287,44 Мбит/с
Исландия281,95 Мбит/с

США заняли 7-е место (274,16 Мбит/с), а Россия расположилась на 67-й строчке (90,06 Мбит/с), потеряв одну позицию. Самые низкие скорости зафиксированы в Сирии и Кубе — около 3 Мбит/с.

По сравнению с январём 2024 года глобальная скорость загрузки выросла на 5,7 Мбит/с, а в Сингапуре — сразу на 60 Мбит/с.

Мобильный интернет

Средняя глобальная скорость мобильного интернета достигла 91,24 Мбит/с, что вдвое выше прошлогоднего показателя в 50 Мбит/с.

Топ-5 стран по скорости загрузки:
ОАЭ545,94 Мбит/с (рост с 302,38 Мбит/с в 2024 году)
Катар521,51 Мбит/с
Кувейт314,39 Мбит/с
Болгария252,05 Мбит/с
Бахрейн213,09 Мбит/с

Россия заняла 87-е место (36,05 Мбит/с), поднявшись на 2 позиции. Самый медленный интернет зафиксирован в Боливии (13,20 Мбит/с) и Эритрее (1,88 Мбит/с).
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10👎2
Установка локального сервера кеширования DNS на Linux. Часть 1

Чаще всего DNS-запросы работают в фоновом режиме, и мы не замечаем их.

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


Как это работает?

Кэширующий DNS-сервер сохраняет результаты запросов в памяти. Если система повторно запрашивает тот же адрес, ответ выдаётся мгновенно, без обращения к внешним серверам. Это особенно полезно, если:

Провайдерские DNS-серверы медленные — сайты загружаются с задержками.
В сети выполняется много DNS-запросов — например, на сервере с антиспам-фильтрами или активной почтовой службой.
Нужна дополнительная безопасность — поддержка DNSSEC и DNS-over-TLS (DoT) помогает защититься от атак на DNS.

Например, новостной сайт может делать 100+ DNS-запросов при загрузке страницы. Даже если каждый занимает 0,1 секунды, это 10 секунд ожидания. С локальным DNS-сервером эти задержки исчезают.

Как проверить текущие DNS-запросы?

Перед настройкой можно посмотреть, какие DNS-серверы сейчас используются:

cat /etc/resolv.conf


А также проверить, сколько времени занимает выполнение DNS-запроса:

time dig example.com


или

time nslookup example.com


Если задержка слишком большая, настройка локального кэша поможет ускорить работу.

Какой сервер выбрать?

Один из простых вариантов — systemd-resolved. Это встроенная утилита в systemd, которая уже есть в большинстве современных дистрибутивов Linux, но часто отключена.

В следующем посте расскажем, как её настроить.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥6
😁
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣23😭9👍3🥱1🤨1
Настройка локального кэширующего DNS на Linux с systemd-resolved

Если у вас установлен Linux с systemd, скорее всего, в системе уже есть systemd-resolved, но он не активирован. Давайте его настроим.

1️⃣Проверяем, работает ли systemd-resolved

Откройте терминал и выполните команду:

resolvectl status

Если в ответе указаны DNS-серверы и их параметры, значит, systemd-resolved уже запущен.
Если появляется ошибка Unit dbus-org.freedesktop.resolve1.service not found., значит, сервис отключён.

Дополнительно можно проверить статус службы:

sudo systemctl status systemd-resolved.service

2️⃣ Включаем и добавляем в автозапуск

sudo systemctl start systemd-resolved.service
sudo systemctl enable systemd-resolved.service


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

sudo systemctl is-active systemd-resolved.service


Если вывод active, значит, всё работает.

3️⃣ Настраиваем серверы для DNS-запросов

Открываем конфигурационный файл:

sudo nano /etc/systemd/resolved.conf


Находим строку #DNS= и добавляем быстрые публичные DNS, например Cloudflare:

DNS=1.1.1.1 1.0.0.1  # Cloudflare Public DNS


Можно также использовать Google Public DNS:

DNS=8.8.8.8 8.8.4.4


Сохраняем изменения (Ctrl + X → Y → Enter) и перезапускаем службу:

sudo systemctl restart systemd-resolved.service


Проверяем, что новые DNS применились:

resolvectl status


4️⃣ Подключаем systemd-resolved к системе

Удаляем старый /etc/resolv.conf и создаём символьную ссылку:

sudo mv /etc/resolv.conf /etc/resolv.conf.backup
sudo ln -s /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf


Перезапускаем сервис:

sudo systemctl restart systemd-resolved.service


5️⃣ Проверяем работу локального DNS-кэша

Проверяем, какие DNS-серверы теперь используются:

cat /etc/resolv.conf


Ожидаемый вывод должен содержать строку:

nameserver 127.0.0.53


Это значит, что система использует локальный DNS-кэш.

Проверяем, работает ли кэширование:

resolvectl query example.com


Запускаем несколько раз и сравниваем время выполнения. Первый запрос должен занять немного больше времени, а последующие выполняться мгновенно.

Теперь ваш Linux использует локальный DNS-кэш, что ускоряет соединение и снижает нагрузку на сеть.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥52
SSH Port Forwarding в Linux – основные виды туннелей

SSH-туннели – это один из самых мощных инструментов, который используют системные и сетевые администраторы.

Они позволяют перенаправлять трафик через защищённое SSH-соединение, обеспечивая безопасную передачу данных между системами.


Что такое переброс порта SSH?

SSH позволяет создавать туннель между несколькими системами и направлять через него сетевой трафик.

Этот механизм лежит в основе VPN и SOCKS Proxy. Существует три типа SSH-туннелей:

Локальный порт forwarding (Local Port Forwarding) – позволяет получать доступ к удалённым ресурсам через локальную систему. Работает по принципу Remote Access VPN.

Удалённый port forwarding (Remote Port Forwarding) – даёт удалённой системе доступ к локальным сервисам.

Динамический port forwarding (Dynamic Port Forwarding) – создаёт SOCKS-прокси для передачи трафика приложений через зашифрованный туннель. Это помогает обходить блокировки сайтов.

Пример использования SSH-туннеля

Допустим, у вас есть сервис, который передаёт данные в открытом виде или использует нешифрованный протокол.

Чтобы обезопасить соединение, можно направить его трафик через SSH-туннель.


Ещё одно распространённое применение – доступ к внутренним ресурсам компании извне. Это похоже на Site-to-Site VPN, где указывается, какой трафик заворачивается в туннель.

Сколько туннелей можно создать?

Теоретически – до 65 535 (по количеству портов в сети). Однако важно учитывать, что:
Некоторые порты зарезервированы (например, 80 – HTTP, 443 – HTTPS).
Локальный порт не обязательно должен совпадать с удалённым. Например, можно перенаправить 8080 → 80.

Лучше использовать порты в диапазоне 2000–10000, так как порты ниже 2000 зарезервированы.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍122🔥1
💬 Вопрос на собеседовании для DevOps-инженера

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


Вопрос: Как работает OverlayFS и почему оно используется в контейнеризации?

Ответ: OverlayFS — это файловая система наложений, которая объединяет несколько директорий (слоев) в единую структуру. Она широко используется в контейнерных средах, таких как Docker и Kubernetes, для эффективного управления файловыми системами контейнеров.

Основные принципы:
Lowerdir: неизменяемый базовый слой (образ контейнера).
Upperdir: изменяемый слой, в который записываются изменения.
Merged: конечный результат, который видит пользователь.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍111
Настройка и тестирование SSH-туннелей

Локальный порт forwarding

Позволяет перенаправить трафик с локального компьютера на удалённую систему.

Синтаксис:

ssh -L local_port:remote_ip:remote_port [email protected]


Пример:

ssh -L 8080:www.example1.com:80 example2.com


Этот туннель направляет все запросы на 8080 порт через example2.com к example1.com:80.

Тестирование туннеля с netcat

Чтобы проверить работу переадресации:

nc -v remote_ip port_number


Если соединение успешно, утилита выдаст “Успех!”.

Автоматизация (Autossh)

Для постоянного SSH-туннеля без разрывов можно использовать autossh.

Установка:

sudo apt-get install autossh


Запуск:

autossh -L 80:example1.com:80 example2.com


Этот туннель будет автоматически восстанавливаться при обрывах связи.

Удалённый port forwarding

Позволяет удалённой системе получить доступ к сервисам локальной сети.

Синтаксис:

ssh -R remote_port:local_ip:local_port [email protected]


Пример:

ssh -R 8080:localhost:80 [email protected]


Теперь пользователь на [email protected] сможет обратиться к вашему локальному веб-серверу (порт 80) через 8080.

Динамическое перенаправление портов (SOCKS-прокси)

Если нужно обходить блокировки, можно создать SOCKS-прокси через SSH.

Синтаксис:

ssh -D local_port [email protected]


Пример:

ssh -D 1234 [email protected]


Теперь в браузере можно настроить SOCKS-прокси на локальный порт 1234, и весь трафик пойдёт через SSH-туннель.

Просмотр активных SSH-туннелей

Чтобы увидеть все текущие туннели, выполните:

lsof -i | grep ssh


Если нужно отображение IP-адресов, используйте:

lsof -i -n | grep ssh


Ограничение port forwarding в SSH

Чтобы запретить или ограничить переадресацию портов, нужно отредактировать /etc/ssh/sshd_config:

sudo nano /etc/ssh/sshd_config


Добавляем:

AllowTCPForwarding no  # Отключить SSH-туннели
AllowTCPForwarding local # Разрешить только локальный forwarding
AllowTCPForwarding remote # Разрешить только удалённый forwarding


После этого перезапускаем SSH:

sudo systemctl restart sshd


Уменьшение задержки в SSH-туннелях

SSH-туннели работают по TCP поверх TCP, что иногда создаёт задержки. Если трафика много, лучше использовать VPN.

Альтернатива – sshuttle, который уменьшает задержки при пересылке трафика.

Установка:

sudo apt-get install sshuttle


Запуск туннеля:

sudo sshuttle -r user@remote_ip -x remote_ip 0/0 vv


Чтобы убедиться, что IP-адрес изменился:

curl ipinfo.io


Теперь SSH-туннель будет работать без значительных задержек и обеспечивать безопасную передачу данных.
👍17
💬 Вопрос на собеседовании для сисадмина

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


Вопрос: В чем разница между объявлением переменной export VAR="VALUE" и VAR="VALUE" в bash?

Ответ: При объявлении переменной через export - переменная будет доступна в любых других процессах, при обычном объявлении переменной - переменная будет доступна только в запущенном процессе.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥2
Торвальдс продолжит внедрение Rust в Linux вопреки возражениям

Линус Торвальдс подтвердил, что Rust станет частью ядра Linux, несмотря на сопротивление мейнтейнеров. 


Некоторые, включая Кристофа Хеллвига, считают, что новый язык увеличивает фрагментацию кода и усложняет поддержку, но Торвальдс настаивает на его интеграции, заявляя, что разработчикам придётся работать с Rust, нравится им это или нет.

В августе 2024 года он выразил разочарование медленным внедрением Rust, отметив, что многие разработчики не хотят учить новый язык.

В сентябре проект столкнулся с кризисом — лидер Rust for Linux ушёл из-за «нетехнических проблем».


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

Несмотря на споры, Торвальдс уверен — Rust в Linux неизбежен.
💊13👍61👎1
Автоматическая смена паролей пользователей Linux

Жизнь системного администратора — это постоянная борьба за безопасность. Нужно следить за серверами, защищать сеть и решать возникающие проблемы.

Один из важных аспектов — управление паролями пользователей. Их необходимо менять с определенной периодичностью.


В этой статье разберем, как автоматизировать смену паролей в Linux.

Срок действия паролей

Чтобы узнать, когда последний раз менялся пароль пользователя и когда он заэкспайрится, используйте команду:

chage -l username

Она покажет:
• Дату последней смены пароля.
• Когда пароль истекает.
• Сколько дней осталось до истечения.
• Когда учетная запись заэкспайрится.
• Минимальный и максимальный срок между сменами пароля.

Заставляем пользователя менять пароль каждые 90 дней

Чтобы установить срок действия пароля в 90 дней, выполните команду:

sudo chage -M 90 username


Проверить настройки можно командой:

chage -l username


Устанавливаем срок действия учетной записи

Допустим, у вас есть пользователи Иван и Петр, которым нужен доступ только на два дня. Создаем учетные записи:

sudo adduser ivan  
sudo adduser petr


Задаем пароли:

sudo passwd ivan  
sudo passwd petr


Теперь ограничим срок действия учетных записей:

sudo chage -E $(date -d "+2 days" +%Y-%m-%d) ivan  
sudo chage -E $(date -d "+2 days" +%Y-%m-%d) petr


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

sudo chage -E -1 ivan  
sudo chage -E -1 petr


Сколько времени на смену пароля?

Допустим, пароль Геннадия заэкспайрился в воскресенье. Дадим ему 5 дней на смену пароля перед блокировкой аккаунта:

sudo chage -I 5 gennady  


Если он не сменит пароль и учетная запись заблокируется, снять ограничение можно так:

sudo chage -I -1 gennady  


Предупреждения для пользователей

Чтобы заранее предупредить пользователя о скорой смене пароля (например, за 7 дней):

sudo chage -W 7 gennady  


Защищаемся от частой смены паролей

Если кто-то решил менять пароль каждый день, можно задать минимальный срок в 14 дней:

sudo chage -m 14 sergey  


А если передумали — убрать ограничение:

sudo chage -m 0 sergey  


Настроив автоматическую смену паролей, вы уменьшите риск компрометации учетных записей и сделаете систему более безопасной.
👍253🔥2
Active Directory и LDAP – в чем разница?

Active Directory (AD) — это служба каталогов от Microsoft, которая управляет пользователями, группами, устройствами и ресурсами в корпоративной сети.

LDAP (Lightweight Directory Access Protocol) — это открытый протокол, который используется для запроса и управления данными в службах каталогов.

Проще говоря: AD — это база данных, а LDAP — способ общения с ней.


Что такое Active Directory?

Active Directory — это централизованное хранилище данных, выполняющее несколько ключевых функций:
Аутентификация пользователей — проверка логина и пароля перед входом в систему.
Управление группами и ресурсами — контроль доступа к файлам, принтерам, серверам и т. д.
Администрирование политик безопасности — применение групповых политик (GPO) для управления настройками компьютеров и пользователей.

Microsoft AD поддерживает два протокола: Kerberos и LDAP. Это позволяет реализовать Single Sign-On (SSO) — возможность входа в систему без повторного ввода пароля.

Однако AD не является кроссплатформенной системой, поэтому компании часто используют дополнительные решения для управления доступом.


Active Directory — не единственная служба каталогов. Существуют и другие:
Red Hat Directory Server
OpenLDAP
Apache Directory Server

Также AD можно интегрировать с Asterisk, что позволяет использовать его для управления телефонными системами.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍26🔥62🤯1
Какой механизм позволяет ядру Linux выгружать редко используемые страницы памяти на диск?
Anonymous Quiz
55%
Swap
23%
Page Cache
4%
OOM Killer
18%
Kernel Paging
👍8🤣6