Linux | Как настроить? - ageomash.ru https://ageomash.ru Блог про настройку компьютеров, роутеров, мобильных устройств Wed, 16 Jul 2025 07:07:03 +0000 ru-RU hourly 1 https://wordpress.org/?v=6.8.2 https://ageomash.ru/wp-content/uploads/2016/03/cropped-chip-32x32.png Linux | Как настроить? - ageomash.ru https://ageomash.ru 32 32 SELinux — что это такое и стоит ли его выключать?! - ageomash.ru https://ageomash.ru/selinux-what-is-this/ https://ageomash.ru/selinux-what-is-this/#respond Wed, 16 Jul 2025 07:07:03 +0000 https://ageomash.ru/?p=11820 Если вы хоть немного работали с Linux, возможно, сталкивались с загадочной аббревиатурой SELinux. А может, даже пробовали его отключить, когда что-то «вдруг не работает». Давайте разберёмся, что это за механизм, почему его не стоит игнорировать — и как он помогает сделать систему намного безопаснее. SELinux — это не просто защита, а усиленная безопасность Security-Enhanced Linux ... Читать далее

The post SELinux — что это такое и стоит ли его выключать?! first appeared on Как настроить?.]]>
selinux что это такое

Если вы хоть немного работали с Linux, возможно, сталкивались с загадочной аббревиатурой SELinux. А может, даже пробовали его отключить, когда что-то «вдруг не работает». Давайте разберёмся, что это за механизм, почему его не стоит игнорировать — и как он помогает сделать систему намного безопаснее.

SELinux — это не просто защита, а усиленная безопасность

Security-Enhanced Linux (SELinux) — это система контроля доступа, встроенная прямо в ядро Linux. Её изначально разработали в NSA (Агентство национальной безопасности США) совместно с Red Hat, и главная её задача — добавить дополнительный уровень защиты поверх стандартных прав доступа.

То есть даже если у процесса есть root-доступ, SELinux всё равно может его остановить. Да, настолько серьёзно.

DAC vs MAC: в чём разница?

Обычная модель прав в Linux называется DAC (Discretionary Access Control) — это когда пользователь или админ сам решает, кто и что может делать с файлами.

А вот SELinux использует MAC (Mandatory Access Control) — модель, в которой права задаются централизованной политикой безопасности. И эта политика обязательна для всех — даже для root. Это позволяет гораздо точнее управлять поведением приложений и процессов в системе.

Контексты безопасности — ключ к пониманию SELinux

Каждому процессу и файлу SELinux присваивает контекст безопасности. Он включает:

тип объекта, например: httpd_sys_content_t — контент для веб-сервера;

роль и домен процесса, например: httpd_t — сам веб-сервер.

Когда процесс пытается обратиться к файлу, SELinux проверяет: разрешает ли политика такие действия с учётом их контекстов. Если нет — доступ блокируется. И неважно, что пользователь root.

Почему SELinux так важен?

Представьте, что злоумышленник получил доступ к системе. В обычной Linux-модели он может делать почти всё, если взломал пользователя с нужными правами. А SELinux не даст этому «всё» произойти, потому что процессы не смогут выйти за пределы строго определённых правил.

Это особенно критично на серверах с публичным доступом — веб-серверы, почтовики, базы данных. Там SELinux помогает изолировать процессы, минимизировать последствия уязвимостей и сдерживать вредоносные действия.

Главная отрицательная черта системы — несколько «кривая» обучения, мешающая «работать как привыкли», если не иметь понимать, как SELinux устроен. Ошибки конфигурации могут блокировать нужные процессы, а диагностика требует навыков чтения журналов (/var/log/audit/audit.log).

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

Режимы работы SELinux:

Enforcing — политика активна, запрещенные действия блокируются
Permissive — действия не блокируются, но журналируются:
Disabled — SELinux отключен

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

getenforce

Или через:

sestatus

Вывод:

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

Если вы работаете с сервером — не спешите его отключать. Лучше понять, как он работает. А в следующих постах я расскажу, как настраивать SELinux-политики и разбирать ошибки доступа

The post SELinux — что это такое и стоит ли его выключать?! first appeared on Как настроить?.]]>
https://ageomash.ru/selinux-what-is-this/feed/ 0
Быстрый запуск DHCP-сервера в Linux - ageomash.ru https://ageomash.ru/bystryj-zapusk-dhcp-servera-v-linux/ https://ageomash.ru/bystryj-zapusk-dhcp-servera-v-linux/#respond Wed, 25 Jun 2025 10:32:39 +0000 https://ageomash.ru/?p=11816 Ситуации бывают разные. Например, Вам экстренно понадобилось запустить DHCP- сервер на Linux. Не спрашивайте почему вдруг возникла такая странная необходимость. Ну вот так сложились обстоятельства. Что делать? Сейчас всё покажу! Я буду рассматривать установку DHCP-сервера на примере Ubuntu или Debian, так как они наиболее распространены. Выполните вот такую команду: sudo apt-get install isc-dhcp-server 2. Вся ... Читать далее

The post Быстрый запуск DHCP-сервера в Linux first appeared on Как настроить?.]]>
dhcp сервер linux

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

Я буду рассматривать установку DHCP-сервера на примере Ubuntu или Debian, так как они наиболее распространены. Выполните вот такую команду:

sudo apt-get install isc-dhcp-server

2. Вся необходимая настройка  выполняется в файле dhcpd.conf. Это основной файл конфигурации DHCP-сервера, в котором нужно указать настройки: подсети, диапазоны IP-адресов, шлюзы, DNS-серверы и т. д.

3. В файле dhcpd.conf определите подсети и диапазоны IP-адресов, доступные для выдачи.
Например, для подсети 192.168.1.0/24 и диапазона IP-адресов от 192.168.1.10 до 192.168.1.100, добавляем вот такие строки в файл dhcpd.conf:

subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.100;
}

4. В файле dhcpd.conf можно так же указать и другие настройки. Например, шлюзы (routers), DNS-серверы (domain-name-servers) и другие параметры.

5. Перед запуском DHCP-сервера убедитесь, что настройки в файле dhcpd.conf указаны правильно.
Чтобы проверить конфигурационный файл — выполните команду:

sudo dhcpd -t

6. Если проверка не выявила ошибок — запустите DHCP-сервер. В Ubuntu/Debian это делается так:

sudo service isc-dhcp-server start 

The post Быстрый запуск DHCP-сервера в Linux first appeared on Как настроить?.]]>
https://ageomash.ru/bystryj-zapusk-dhcp-servera-v-linux/feed/ 0
Как быстро получить информацию об оборудовании в Linux - ageomash.ru https://ageomash.ru/kak-bystro-poluchit-informacziyu-ob-oborudovanii-v-linux/ https://ageomash.ru/kak-bystro-poluchit-informacziyu-ob-oborudovanii-v-linux/#respond Wed, 04 Jun 2025 11:54:18 +0000 https://ageomash.ru/?p=11805 Сегодня я хочу рассказать про очень полезную консольную утилиту для сбора информации о железе в Linux — dmidecode. Чем же она хороша? Среди прочих подобных типа lshw, hwinfo или inxi, она выделяется тем, что не опрашивает оборудование напрямую, а читает таблицу DMI/SMBIOS, где уже содержится вся необходимая информация. Оттого и работает dmidecode практически мгновенно и ... Читать далее

The post Как быстро получить информацию об оборудовании в Linux first appeared on Как настроить?.]]>
dmidecode linux

Сегодня я хочу рассказать про очень полезную консольную утилиту для сбора информации о железе в Linux — dmidecode. Чем же она хороша? Среди прочих подобных типа lshw, hwinfo или inxi, она выделяется тем, что не опрашивает оборудование напрямую, а читает таблицу DMI/SMBIOS, где уже содержится вся необходимая информация. Оттого и работает dmidecode практически мгновенно и без лишней нагрузки на систему.

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

Как пользоваться dmidecode

Команда максимально простая. Вы можете указать тип устройства (по номеру или имени). Например, давайте выведем информацию о процессоре:

dmidecode -t 4

Либо так:

dmidecode -t processor

Вот другие, часто используемые ключи:

Тип оборудования Ключ -t

0 или bios — BIOS
1 или system — Система
2 или baseboard — Материнская плата
3 или chassis — Корпус
4 или processor — Процессор
7 или cache — Кэш
8–9 и выше — Порты, слоты и т.д.
17 или memory — Память

? Запрашиваем конкретные параметры. Если нужно получить только конкретные поля — например, модель или частоту процессора:

dmidecode -s processor-version
dmidecode -s processor-frequency

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

dmidecode -s

Полезно: Ключ -q (quiet) скрывает лишнюю техническую информацию вроде Handle и мета-описаний:

dmidecode -q -t processor

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

The post Как быстро получить информацию об оборудовании в Linux first appeared on Как настроить?.]]>
https://ageomash.ru/kak-bystro-poluchit-informacziyu-ob-oborudovanii-v-linux/feed/ 0
Установка веб-сервера Angie на разные версии Linux - ageomash.ru https://ageomash.ru/ustanovka-angie-na-linux/ https://ageomash.ru/ustanovka-angie-na-linux/#respond Mon, 26 May 2025 11:02:55 +0000 https://ageomash.ru/?p=11791 Сегодня я хочу рассказать как установить веб-сервер Angie на хост под управлением разных версий Linux, в том числе и Ubuntu. Последнее время Энжи всё активнее и активнее используется веб-мастерами и, думаю, эта тенденция будет расти в сторону увеличения. Веб-сервер Angie появился в 2022 году после ухода из России компании F5, главного разработчика Nginx. Была создана ... Читать далее

The post Установка веб-сервера Angie на разные версии Linux first appeared on Как настроить?.]]>
Установка Angie на веб-сервер

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

Веб-сервер Angie появился в 2022 году после ухода из России компании F5, главного разработчика Nginx. Была создана компания ООО «Веб-сервер», которая приступила к разработке форка Nginx. В итоге, в октябре 2022 года появился Angie OSS (Open Source), а немного позже — коммерческая версия Angie PRO. С первого релиза Angie принёс большое количество новых возможностей, часть из которых повторяли фичи Nginx Plus, но уже в открытом продукте.
В случае, если ранее Вы активно использовали Nginx Plus и желаете переехать на Angie, то стоит рассмотреть Angie PRO, где реализовано большинство фич коммерческого Nginx Plus. Основные отличия платной и бесплатной версий находятся в области балансировки и проксирования.

Как установить Angie на Ubuntu

Обновим систему и установим зависимости:

sudo apt update
sudo apt install -y ca-certificates curl

Добавим ключ и репозиторий Angie:

sudo curl -o /etc/apt/trusted.gpg.d/angie-signing.gpg https://angie.software/keys/angie-signing.gpg
echo "deb https://download.angie.software/angie/$(. /etc/os-release && echo "$ID/$VERSION_ID $VERSION_CODENAME") main" | sudo tee /etc/apt/sources.list.d/angie.list > /dev/null
sudo apt update

Ставим сам веб-сервер:

sudo apt install -y angie

А заодно модули, если нужно сжатие и ускорение:

sudo apt install -y angie-module-zstd angie-module-brotli

Установка на AlmaLinux, CentOS, RHEL (через YUM)

Создаём репо-файл:

sudo nano /etc/yum.repos.d/angie.repo

Вставляем:

[angie]
name=Angie repo
baseurl=https://download.angie.software/angie/almalinux/$releasever/
gpgcheck=1
enabled=1
gpgkey=https://angie.software/keys/angie-signing.gpg.asc

Теперь установка:

sudo yum install -y angie angie-module-zstd angie-module-brotli
sudo systemctl start angie
sudo systemctl enable angie

Установка Angie PRO

если хотим прямо максимум:

У вас лицензия? Тогда нужно в приватное репо. Команда установки:

sudo apt install -y angie-pro angie-pro-module-zstd angie-pro-module-brotli

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

angie -V

Или:

ps afx | grep angie
The post Установка веб-сервера Angie на разные версии Linux first appeared on Как настроить?.]]>
https://ageomash.ru/ustanovka-angie-na-linux/feed/ 0
Базовая защита SSH — обязательный минимум конфигурации - ageomash.ru https://ageomash.ru/bazovaya-zashhita-ssh-obyazatelnyj-minimum-konfiguraczii/ https://ageomash.ru/bazovaya-zashhita-ssh-obyazatelnyj-minimum-konfiguraczii/#respond Wed, 02 Apr 2025 12:46:15 +0000 https://ageomash.ru/?p=11782 Защита SSH (Secure Shell) от взлома — это критически важная задача, особенно если сервер доступен из интернета или используется в локальной сети с потенциальными уязвимостями. SSH предоставляет удалённый доступ к серверу, и если злоумышленник получит доступ к вашему SSH, он сможет полностью контролировать систему, что может привести к серьёзным последствиям. Давайте разберём, почему это так ... Читать далее

The post Базовая защита SSH — обязательный минимум конфигурации first appeared on Как настроить?.]]>
защита ssh от взлома

Защита SSH (Secure Shell) от взлома — это критически важная задача, особенно если сервер доступен из интернета или используется в локальной сети с потенциальными уязвимостями. SSH предоставляет удалённый доступ к серверу, и если злоумышленник получит доступ к вашему SSH, он сможет полностью контролировать систему, что может привести к серьёзным последствиям. Давайте разберём, почему это так важно и какие риски возникают при отсутствии защиты.

Почему SSH нужно защищать?

SSH — это «входная дверь» в ваш сервер
SSH часто используется для управления серверами, особенно в Linux/Unix-системах. Если злоумышленник взломает SSH, он получит полный доступ к серверу, включая возможность:

    • Устанавливать вредоносное ПО (например, майнеры криптовалюты или ransomware).
    • Удалять или изменять важные данные.
    • Использовать сервер как плацдарм для атак на другие системы (например, в рамках ботнета).
    • Получить доступ к конфиденциальной информации (пароли, ключи, данные пользователей).

Популярность атак на SSH
SSH-серверы — одна из самых частых целей для автоматизированных атак. Боты постоянно сканируют интернет в поисках открытых портов SSH (по умолчанию это порт 22) и пытаются подобрать пароли методом перебора (brute-force). Например:

    • По данным исследований, таких как отчёт F5 Labs за 2023 год, SSH-серверы подвергаются миллионам атак ежедневно.
    • Если у вас слабый пароль (например, «admin123»), его могут подобрать за считанные минуты с помощью инструментов вроде Hydra или Medusa.

Риск утечки данных
Если злоумышленник получит доступ через SSH, он сможет скачать все данные, хранящиеся на сервере. Это особенно опасно, если сервер содержит:

    • Персональные данные пользователей (например, в соответствии с GDPR или другими законами о защите данных).
    • Коммерческую информацию (контракты, финансовые данные).
    • Ключи доступа к другим системам (например, API-ключи, приватные ключи для других серверов).

Компрометация всей сети
Если сервер находится в локальной сети, взлом SSH может стать точкой входа для атаки на другие устройства в сети. Злоумышленник может:

    • Использовать сервер для сканирования сети.
    • Распространять вредоносное ПО на другие машины.
    • Перехватывать трафик (например, через ARP-спуфинг).

Репутационные и финансовые потери
Если ваш сервер взломают, это может привести к:

    • Утечке данных клиентов, что подорвёт доверие к вашей компании.
    • Штрафам за нарушение законов о защите данных (например, GDPR может наложить штраф до 20 млн евро или 4% годового оборота).
    • Простоям в работе, что приведёт к финансовым убыткам.

Основные угрозы для SSH

  1. Brute-force атаки
    Злоумышленники используют автоматизированные инструменты для подбора паролей. Если у вас слабый пароль или стандартные учётные данные (например, «root» с паролем «password»), сервер будет взломан очень быстро.
  2. Утечка ключей
    Если вы используете SSH-ключи для аутентификации, но приватный ключ попал в руки злоумышленника (например, из-за компрометации вашего компьютера), он сможет подключиться к серверу без пароля.
  3. Уязвимости в SSH
    Старые версии SSH (например, устаревшие реализации OpenSSH) могут содержать уязвимости, которые злоумышленники могут эксплуатировать. Например, в 2019 году была обнаружена уязвимость CVE-2019-6111, позволяющая перезаписывать файлы через SCP.
  4. Перехват трафика (man-in-the-middle)
    Если SSH настроен неправильно (например, отключена проверка ключей хоста), злоумышленник может подменить сервер, и вы подключитесь к фальшивому серверу, передав свои учётные данные.
  5. Социальная инженерия
    Злоумышленники могут обманом заставить администратора раскрыть пароль или ключ, например, через фишинговые атаки.

как защитить ssh сервер

Как защитить SSH

1️⃣ Отключаем root-доступ. Вход под пользователем root — это частая цель атак. Запретите его в /etc/ssh/sshd_config:

PermitRootLogin no

2️⃣ Меняем стандартный порт.

По умолчанию SSH работает на порту 22. Смена порта (например, на 2222) не остановит опытного хакера, но значительно снизит количество автоматизированных атак. В файле /etc/ssh/sshd_config измените строку:
Port 10022

(Внимание! Не забудьте открыть новый порт 10021 в фаерволе (ufw/iptables/firewalld)!!!

3️⃣ Используем SSH-ключи вместо паролей! Аутентификация по ключам гораздо безопаснее, чем по паролю. Отключите вход по паролю в /etc/ssh/sshd_config:

PasswordAuthentication no
PubkeyAuthentication yes

После этого сгенерируйте пару ключей:

ssh-keygen -t rsa -b 4096

И скопируйте публичный ключ на сервер:

ssh-copy-id user@server

Всё, теперь можно «заряжать» ключ в ssh-клиент и пользоваться!

4️⃣ Ограничиваем доступ по IP. Тут можно просто ограничить вход только с доверенных IP через AllowUsers или AllowGroups:

AllowUsers [email protected]

А можно настроить соответствующее правило в фаерволе. Вот пример для ufw:

sudo ufw allow from 192.168.1.0/24 to any port 10022
sudo ufw deny 10022

5️⃣ Включаем защиту от brute-force атак. В этом нам поможет утилита fail2ban, которая блокируют IP-адреса после нескольких неудачных попыток входа. Установка fail2ban:

apt install fail2ban # Debian/Ubuntu
yum install fail2ban # CentOS/RHEL

Прописываем настройки в файле: /etc/fail2ban/jail.local:

[sshd]
enabled = true
maxretry = 3
findtime = 10m
bantime = 1h

6️⃣ Отключаем X11 Forwarding и пустые пароли

X11Forwarding no
PermitEmptyPasswords no

После сохранения изменений в файле sshd_config, не забывайте перезапускать службу sshd, чтобы изменения вступили в силу.

$: sudo systemctl restart sshd

P.S.:

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

The post Базовая защита SSH — обязательный минимум конфигурации first appeared on Как настроить?.]]>
https://ageomash.ru/bazovaya-zashhita-ssh-obyazatelnyj-minimum-konfiguraczii/feed/ 0