Юниты systemd
Если описать systemd в общих чертах, то это система управления юнитами.
Помимо сервисов, существуют другие типы юнитов, такие как сокеты, монтирование и другие.
Чтобы отобразить список всех доступных юнитов, введите systemctl -t help:
Основное преимущество работы с systemd по сравнению с предыдущими методами, используемыми для управления сервисами, заключается в том, что он обеспечивает единый интерфейс для запуска юнитов. Этот интерфейс определен в файле юнита.
⏺
⏺
⏺
Юнит-файлы пользовательских юнитов по аналогии хранятся в директориях /etc/systemd/<имя пользователя>, /run/sustemd/<имя пользователя> и /usr/lib/systemd/<имя пользователя>.
Юнит-файл на примере vsftpd
Из этого примера юнит-файла видно, что его относительно легко понять.
Любой файл сервисного юнита systemd состоит из трех секций. (В других файл-юнитах могут быть другие секции, но эти три присутствуют во всех юнит-файлах.)
⏺ [Unit]: Описывает юнит и определяет зависимости. Эта секция также содержит важный оператор After и, опционально, оператор Before. Эти операторы определяют зависимости между различными юнитами.
⏺ [Service]: Эта секция описывает, как запустить и остановить сервис и запросить статус установки.
⏺ [Install]: Описывает целевые юниты, которые должны включать данный юнит.
Пример файла-юнита типа mount
Файл tmp.unit показывает интересную дополнительную информацию.
В секции [Unit] виден оператор Conflicts, который указывает, что этот юнит не может использоваться совместно с юнитом umount.target.
Секция [Mount] определяет, что и где надо монтировать.
Юнит socket
Сокет создает метод для приложений, чтобы общаться друг с другом.
Некоторые сервисы создают свои собственные сокеты при запуске, в то время как другим сервисам нужен файл-юнит сокетов для создания сокетов для них. Пример файла сокета:
Понимание целевых юнитов
Юнит-файлы используются для создания функциональности, необходимой на вашем сервере.
Чтобы можно было загружать их в правильном порядке и в нужный момент, используется определенный тип юнитов: целевой юнит.
Простое определение целевого юнита - это «группа юнитов».
Целевой юнит определяет зависимости и порядок загрузки.
В секции [Install] он может быть определен как default.target, чтобы сервер запускался по умолчанию в этот целевой юнит.
Понимание Wants
Want в systemd определяет, какие юниты он хочет при запуске определенной цели. Want создаются путем создания символической ссылки в каталоге
🔥 Во второй части статьи о systemd разберемся, как управлять юнитами, зависимостями и целями.
Если описать systemd в общих чертах, то это система управления юнитами.
Юнитами могут быть много вещей. Одним из наиболее важных типов юнитов является сервис.
Помимо сервисов, существуют другие типы юнитов, такие как сокеты, монтирование и другие.
Чтобы отобразить список всех доступных юнитов, введите systemctl -t help:
[root@server2 ~]# systemctl -t help
Available unit types:
service
socket
busname
target
snapshot
device
mount
automount
swap
timer
path
slice
scope
Основное преимущество работы с systemd по сравнению с предыдущими методами, используемыми для управления сервисами, заключается в том, что он обеспечивает единый интерфейс для запуска юнитов. Этот интерфейс определен в файле юнита.
/usr/lib/systemd/system: системные юнит-файлы. Это юниты из установленных пакетов RPM — всякие nginx, apache, mysql и прочее./etc/systemd/system: юниты, созданные нами, то есть админами. Переопределяют значения юнит-файлов по умолчанию./run/systemd/system: runtime-юниты, которые генерируются автоматически.Юнит-файлы пользовательских юнитов по аналогии хранятся в директориях /etc/systemd/<имя пользователя>, /run/sustemd/<имя пользователя> и /usr/lib/systemd/<имя пользователя>.
Юнит-файл на примере vsftpd
[Unit]
Denoscription=Vsftpd ftp daemon
After=network.target
[Service]
Type=forking
ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
[Install]
WantedBy=multi-user.target
Из этого примера юнит-файла видно, что его относительно легко понять.
Любой файл сервисного юнита systemd состоит из трех секций. (В других файл-юнитах могут быть другие секции, но эти три присутствуют во всех юнит-файлах.)
Пример файла-юнита типа mount
[Unit]
Denoscription=Temporary Directory
Documentation=man:hier(7)
Documentation=http://www.freedesktop.org/wiki/Software/systemd/
APIFileSystems
DefaultDependencies=no
Conflicts=umount.target
Before=local-fs.target umount.target
[Mount]
What=tmpfs
Where=/tmp
Type=tmpfs
Options=mode=1777,strictatime
[Install]
WantedBy=local-fs.target
Файл tmp.unit показывает интересную дополнительную информацию.
В секции [Unit] виден оператор Conflicts, который указывает, что этот юнит не может использоваться совместно с юнитом umount.target.
Секция [Mount] определяет, что и где надо монтировать.
Юнит socket
Сокет создает метод для приложений, чтобы общаться друг с другом.
Некоторые сервисы создают свои собственные сокеты при запуске, в то время как другим сервисам нужен файл-юнит сокетов для создания сокетов для них. Пример файла сокета:
[root@server202 system]# cat virtlockd.socket
[Unit]
Denoscription=Virtual machine lock manager socket
[Socket]
ListenStream=/var/run/libvirt/virtlockd-sock
[Install]
WantedBy=multi-user.target
Понимание целевых юнитов
Юнит-файлы используются для создания функциональности, необходимой на вашем сервере.
Чтобы можно было загружать их в правильном порядке и в нужный момент, используется определенный тип юнитов: целевой юнит.
Простое определение целевого юнита - это «группа юнитов».
[root@server2 system]# cat multi-user.target
[Unit]
Denoscription=Multi-User System
Documentation=man:systemd.special(7)
Requires=basic.target
Conflicts=rescue.service rescue.target
After=basic.target rescue.service rescue.target
AllowIsolate=yes
Целевой юнит определяет зависимости и порядок загрузки.
В секции [Install] он может быть определен как default.target, чтобы сервер запускался по умолчанию в этот целевой юнит.
Понимание Wants
Want в systemd определяет, какие юниты он хочет при запуске определенной цели. Want создаются путем создания символической ссылки в каталоге
/etc/systemd/system.Please open Telegram to view this post
VIEW IN TELEGRAM
👍20❤2🔥2👎1
Энтузиаст подключил Windows XP к интернету: через пару минут ОС заразилась вирусами
Как легко подцепить вирус в 2024 году, используя Windows XP?
Блогер Эрик Паркер продемонстрировал в своём видео, что достаточно оставить систему подключённой к сети всего на несколько минут, и диспетчер задач уже показывает признаки вирусной активности.
⏺ Паркер отключил брандмауэр на Windows XP для большей наглядности, но даже с включённым брандмауэром, пакет безопасности, не обновлявшийся десятилетиями, едва ли справился бы с современными угрозами.
После короткого сеанса работы в сети, Эрик установил бесплатный антивирус Malwarebytes, который обнаружил восемь вирусов-троянов, программы для удалённого доступа, изменяющие настройки DNS, и рекламное ПО.
Кроме того, он обнаружил неизвестную учётную запись «admina», что указывало на попытки удалённого подключения к компьютеру через FTP.
Аналогичный эксперимент с Windows 2000 дал ещё более удручающие результаты.
В течение нескольких минут после подключения к интернету, когда все порты, включая SMB, были открыты, вирусы проникли в систему и привели к «синему экрану смерти».
Таким образом, использование устаревших операционных систем в наше время крайне не рекомендуется.
😉 А если ваш руководитель не желает обновляться на современные ОС, покажите ему эти видео.
Как легко подцепить вирус в 2024 году, используя Windows XP?
Оказывается, даже простое подключение этой ОС к интернету подвергает её огромной опасности.
Блогер Эрик Паркер продемонстрировал в своём видео, что достаточно оставить систему подключённой к сети всего на несколько минут, и диспетчер задач уже показывает признаки вирусной активности.
После короткого сеанса работы в сети, Эрик установил бесплатный антивирус Malwarebytes, который обнаружил восемь вирусов-троянов, программы для удалённого доступа, изменяющие настройки DNS, и рекламное ПО.
Кроме того, он обнаружил неизвестную учётную запись «admina», что указывало на попытки удалённого подключения к компьютеру через FTP.
Аналогичный эксперимент с Windows 2000 дал ещё более удручающие результаты.
В течение нескольких минут после подключения к интернету, когда все порты, включая SMB, были открыты, вирусы проникли в систему и привели к «синему экрану смерти».
Таким образом, использование устаревших операционных систем в наше время крайне не рекомендуется.
Если вы ностальгируете по старым версиям Windows, лучше ограничиться их обоями.
😉 А если ваш руководитель не желает обновляться на современные ОС, покажите ему эти видео.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32👎12🦄4❤1🔥1
Юниты systemd. Часть 2
Первая часть тут
Управление юнитами через systemd
Для управления юнитами используется команда systemctl. Например, установим пакет php-fpm:
Запускаем сервис:
Проверяем статус:
Чтобы сервис запускался при загрузке системы:
Используя команду systemctl status, вы можете увидеть состояния юнитов:
⏺ Loaded: Юнит-файл обработан и юнит активен
⏺ Active (running): Сервис запущен
⏺ Inactive: Сервис не запущен
⏺ Enabled: Будет запущен при загрузке системы
Команды для управления юнитами
Управление зависимостями
Юниты systemd могут иметь зависимости. Чтобы узнать зависимости юнита:
Для просмотра юнитов, которые зависят от указанного юнита:
Изолирующие цели
Некоторые цели в systemd можно изолировать, что позволяет запускать систему в определённом состоянии.
Примеры целей:
•
•
•
•
•
Для изоляции цели:
⚡️ Таким образом, вы можете управлять юнитами, зависимостями и целями в systemd, используя команды systemctl.
Первая часть тут
Управление юнитами через systemd
Для управления юнитами используется команда systemctl. Например, установим пакет php-fpm:
[root@server2]# yum install -y php-fpm.x86_64
Запускаем сервис:
systemctl start php-fpm
Проверяем статус:
[root@server2 system]# systemctl status php-fpm.service
● php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; disabled; vendor preset: disabled)
Active: active (running) since Thu 2019-08-15 14:19:59 +10; 46s ago
Чтобы сервис запускался при загрузке системы:
[root@server2 system]# systemctl enable php-fpm.service
Используя команду systemctl status, вы можете увидеть состояния юнитов:
Команды для управления юнитами
systemctl --type=service # Показать только сервисные юниты
systemctl list-units --type=service --all # Показать все сервисные юниты
systemctl --failed --type=service # Показать все сервисы, которые не удалось запустить
systemctl status -l <имя_сервиса> # Показать детальную информацию о сервисе
Управление зависимостями
Юниты systemd могут иметь зависимости. Чтобы узнать зависимости юнита:
[root@server2 system]# systemctl list-dependencies php-fpm
Для просмотра юнитов, которые зависят от указанного юнита:
[root@server2 system]# systemctl list-dependencies --reverse sshd
Изолирующие цели
Некоторые цели в systemd можно изолировать, что позволяет запускать систему в определённом состоянии.
Примеры целей:
•
poweroff.target: уровень запуска 0•
rescue.target: уровень запуска 1•
multi-user.target: уровень запуска 3•
graphical.target: уровень запуска 5•
reboot.target: уровень запуска 6Для изоляции цели:
[root@server2 system]# systemctl isolate rescue.target
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23❤1
Что делает команда tshark в Linux?
Anonymous Quiz
85%
Захватывает и анализирует сетевой трафик
2%
Управляет сетевыми интерфейсами
7%
Проверяет доступность сетевых ресурсов
6%
Настраивает параметры безопасности сети
🔥12👍3
4 забавных команды в Linux, которые оживят ваш терминал.
Часть 3
Продолжим смотреть на интересные и порой забавные команды, которые помогут вам отвлечься от работы и взглянуть на терминал Linux по новому!
⏺ "Крейзи" команда
Данная «крейзи» команда будет экспоненциально запускать свои копии до тех пор, пока не исчерпаются все системные ресурсы и система не зависнет.
Перед тем, как испробовать всю мощь данной команды, сохраните и закройте все другие программы и файлы, и только после этого введите в терминале:
⏺ Команда rig
Команда rig каждый раз генерирует случайное имя и адрес.
Сначала нужно установить
А затем можно использовать:
⏺ Команда aview
Как насчет просмотра изображений в ASCII-формате прямо в терминале?
Сначала нужно установить
А затем можно использовать:
⏺ Команда cowthink
Эта команда похожа на команду
Чтобы использовать эту команду, просто введите:
Например:
Часть 3
Продолжим смотреть на интересные и порой забавные команды, которые помогут вам отвлечься от работы и взглянуть на терминал Linux по новому!
Данная «крейзи» команда будет экспоненциально запускать свои копии до тех пор, пока не исчерпаются все системные ресурсы и система не зависнет.
Перед тем, как испробовать всю мощь данной команды, сохраните и закройте все другие программы и файлы, и только после этого введите в терминале:
# :(){ :|:& }:
Команда rig каждый раз генерирует случайное имя и адрес.
Сначала нужно установить
rig:$ sudo apt install rig
А затем можно использовать:
$ rig
Как насчет просмотра изображений в ASCII-формате прямо в терминале?
Сначала нужно установить
aview:$ sudo apt install aview
А затем можно использовать:
$ asciiview [путь_к_картинке]
Эта команда похожа на команду
cowsay, с той лишь разницей, что вывод отображается в виде мысли. Чтобы использовать эту команду, просто введите:
$ cowthink [строка]
Например:
$ cowthink Hmm, I know kung-fu
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🤣2
Управление пакетами с помощью YUM: 10 Полезных Команд
YUM (Yellowdog Updater Modified) — это инструмент управления пакетами с открытым исходным кодом для систем Linux, основанных на RPM (RedHat Package Manager).
Он позволяет пользователям и системным администраторам легко устанавливать, обновлять, удалять или искать программные пакеты в системе.
Установка, Обновление и Удаление Пакетов
Для установки пакета (например, Firefox), выполните следующую команду:
Чтобы установить пакет без запроса подтверждения, используйте параметр -y:
Для удаления пакета с именем Firefox и всеми его зависимостями:
Для удаления без подтверждения:
Для обновления пакета MySQL до последней стабильной версии:
Поиск и Информация о Пакетах
Для поиска пакета по его имени (например, openssh):
Если вы не помните точное название пакета, воспользуйтесь функцией search, чтобы найти все доступные пакеты, соответствующие указанной части имени:
Для получения информации о пакете перед его установкой (например, Firefox):
Управление Списками Пакетов
Для вывода списка всех установленных пакетов в системе:
Чтобы узнать, к какому пакету принадлежит файл (например, /etc/httpd/conf/httpd.conf):
Работа с Репозиториями
Для отображения всех включённых репозиториев:
Для добавления нового репозитория в систему (например, EPEL):
YUM (Yellowdog Updater Modified) — это инструмент управления пакетами с открытым исходным кодом для систем Linux, основанных на RPM (RedHat Package Manager).
Он позволяет пользователям и системным администраторам легко устанавливать, обновлять, удалять или искать программные пакеты в системе.
Установка, Обновление и Удаление Пакетов
Для установки пакета (например, Firefox), выполните следующую команду:
yum install firefox
Чтобы установить пакет без запроса подтверждения, используйте параметр -y:
yum -y install firefox
Для удаления пакета с именем Firefox и всеми его зависимостями:
yum remove firefox
Для удаления без подтверждения:
yum -y remove firefox
Для обновления пакета MySQL до последней стабильной версии:
yum update mysql
Поиск и Информация о Пакетах
Для поиска пакета по его имени (например, openssh):
yum list openssh
Если вы не помните точное название пакета, воспользуйтесь функцией search, чтобы найти все доступные пакеты, соответствующие указанной части имени:
yum search vsftpd
Для получения информации о пакете перед его установкой (например, Firefox):
yum info firefox
Управление Списками Пакетов
Для вывода списка всех установленных пакетов в системе:
yum list installed | less
Чтобы узнать, к какому пакету принадлежит файл (например, /etc/httpd/conf/httpd.conf):
yum provides /etc/httpd/conf/httpd.conf
Работа с Репозиториями
Для отображения всех включённых репозиториев:
yum repolist
Для добавления нового репозитория в систему (например, EPEL):
yum-config-manager --add-repo=https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
👍18
dnf-automatic — автоматическая установка обновлений безопасности в CentOS
Вы можете вручную применять исправления безопасности в своей системе CentOS 8, но системному администратору гораздо проще настроить автоматические обновления.
Это придаст уверенности в том, что ваша система будет периодически проверять наличие исправлений или обновлений безопасности и применять их.
Установите dnf-automatic в CentOS
Чтобы начать работу, начните с установки пакета dnf-automatic RPM:
После успешной установки вы можете подтвердить его наличие, выполнив команду:
Настройка dnf-automatic в CentOS
Файл конфигурации для RPM-файла dnf-automatic — это файл automatic.conf, который находится в каталоге
Вы можете просмотреть конфигурации по умолчанию, используя свой любимый текстовый редактор:
В разделе «commands» определите тип обновления.
Вы можете оставить его по умолчанию, и все обновления будут применены.
Поскольку нас интересуют обновления безопасности, установите его, как показано:
Затем перейдите к разделу «emitters» и установите имя хоста системы:
Также установите для параметра emit_via значение motd, чтобы при каждом входе в систему отображались сообщения о пакетах обновлений:
Теперь сохраните и выйдите из файла конфигурации.
Следующим шагом будет запуск службы dnf-automatic.
Выполните команду ниже, чтобы начать планирование автоматических обновлений для вашей системы CentOS 8:
Чтобы проверить статус службы, введите команду:
dnf-makecache запускает службу dnf-makecache, которая отвечает за обновление пакетов кеша, а модуль dnf-automatic запускает службу dnf-automatic, которая загружает обновления пакетов.
Автоматическая установка обновлений безопасности с помощью Cockpit в CentOS
Cockpit — это веб-платформа с графическим пользовательским интерфейсом, которая позволяет системным администраторам легко просматривать системные метрики и настраивать различные параметры, такие как межсетевой экран, создание пользователей, управление заданиями cron и т. д.
Чтобы настроить автоматические обновления безопасности, войдите в Cockpit как пользователь root, открыв следующий URL-адрес сервера:
На левой боковой панели нажмите на опцию «Обновления программного обеспечения».
Затем включите переключатель «Автоматические обновления». Обязательно выберите «Применить обновления безопасности» и выберите частоту обновлений.
Вы можете вручную применять исправления безопасности в своей системе CentOS 8, но системному администратору гораздо проще настроить автоматические обновления.
Это придаст уверенности в том, что ваша система будет периодически проверять наличие исправлений или обновлений безопасности и применять их.
Установите dnf-automatic в CentOS
Чтобы начать работу, начните с установки пакета dnf-automatic RPM:
dnf install dnf-automatic
После успешной установки вы можете подтвердить его наличие, выполнив команду:
rpm -qi dnf-automatic
Настройка dnf-automatic в CentOS
Файл конфигурации для RPM-файла dnf-automatic — это файл automatic.conf, который находится в каталоге
/etc/dnf/. Вы можете просмотреть конфигурации по умолчанию, используя свой любимый текстовый редактор:
vi /etc/dnf/automatic.conf
В разделе «commands» определите тип обновления.
Вы можете оставить его по умолчанию, и все обновления будут применены.
Поскольку нас интересуют обновления безопасности, установите его, как показано:
upgrade_type = security
Затем перейдите к разделу «emitters» и установите имя хоста системы:
system_name = centos-8
Также установите для параметра emit_via значение motd, чтобы при каждом входе в систему отображались сообщения о пакетах обновлений:
emit_via = motd
Теперь сохраните и выйдите из файла конфигурации.
Следующим шагом будет запуск службы dnf-automatic.
Выполните команду ниже, чтобы начать планирование автоматических обновлений для вашей системы CentOS 8:
systemctl enable --now dnf-automatic.timer
Чтобы проверить статус службы, введите команду:
systemctl list-timers *dnf-*
dnf-makecache запускает службу dnf-makecache, которая отвечает за обновление пакетов кеша, а модуль dnf-automatic запускает службу dnf-automatic, которая загружает обновления пакетов.
Автоматическая установка обновлений безопасности с помощью Cockpit в CentOS
Cockpit — это веб-платформа с графическим пользовательским интерфейсом, которая позволяет системным администраторам легко просматривать системные метрики и настраивать различные параметры, такие как межсетевой экран, создание пользователей, управление заданиями cron и т. д.
Cockpit также позволяет настраивать автоматические обновления: пакетные/функциональные обновления и обновления безопасности.
Чтобы настроить автоматические обновления безопасности, войдите в Cockpit как пользователь root, открыв следующий URL-адрес сервера:
http://server-ip:9090.На левой боковой панели нажмите на опцию «Обновления программного обеспечения».
Затем включите переключатель «Автоматические обновления». Обязательно выберите «Применить обновления безопасности» и выберите частоту обновлений.
👍14
Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.# dmidecode -t bios
# dmidecode 2.12
SMBIOS 2.8 present.
Handle 0x0010, DMI type 0, 24 bytes
BIOS Information
Vendor: HP
Version: P79
Release Date: 04/01/2014
Address: 0xF0000
Runtime Size: 64 kB
ROM Size: 16384 kB
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32
Какая команда в Windows используется для проверки состояния дисков и файловых систем через командную строку?
Anonymous Quiz
81%
chkdsk
1%
fsutil
10%
diskpart
8%
sfc
👍7🔥2💘2❤1🤯1
3 лучших системы мониторинга заданий Cron
В эпоху, когда многие процессы автоматизированы, люди постоянно ищут способы эффективно выполнять задачи.
А почему бы и нет? Дорога каждая секунда!
Совершенно аналогично, если вы используете Unix-подобную операционную систему, вы можете сэкономить свое время, прибегнув к автоматизации задач посредством заданий Cron.
Что такое задание Cron?
У этой встроенной команды есть запланированное время и дата для автоматического запуска без ручной реализации.
Задания Cron созданы для автоматизации повторяющихся задач, например, удаления файлов, перезагрузки сервера или выполнения других функций.
Основные элементы задания Cron
Задание Cron работает с тремя важными компонентами: Сценарий – первое, что внедряется в задание Cron и вызывается для исполнения.
Расписание определяет, когда необходимо запускать указанные сценарии.
Действие – это порядок, в котором должен появляться результат после выполнения сценария.
1️⃣ Better Uptime
Better Uptime – это современная служба мониторинга, объединяющая мониторинг cron-заданий и периода работоспособности, управление инцидентами и страницы состояний. Настройка занимает всего 3 минуты.
Основные особенности: проверки Cron-заданий, API, Ping, HTTP(s) соединений, срока действия SSL и TLD; неограниченное количество уведомлений посредством телефонных звонков; простое планирование по требованию; скриншоты и журналы регистрации ошибок и инцидентов; более 100 интеграций, включая Slack, Teams, Heroku, AWS.
2️⃣ HealthChecks
Основные особенности: уникальный URL-адрес для каждого задания; информационная панель, обновляющаяся в режиме реального времени; параметры «Grace Time» и «Period» для различных подходов и статусов мониторинга; интеграция со Slack, электронной почтой, Webhook, Microsoft Teams и т.д.
3️⃣ Cronitor
Cronitor помогает в планировании заданий и предоставляет быстрые уведомления.
Основные особенности: мониторинг различных типов Cron-заданий, включая AWS, Microsoft, Jenkins, Kubernetes и Java; гибкие политики уведомлений и правила; мониторинг периода работоспособности веб-сайта, API, хранилища S3 и т.д.
В эпоху, когда многие процессы автоматизированы, люди постоянно ищут способы эффективно выполнять задачи.
А почему бы и нет? Дорога каждая секунда!
Совершенно аналогично, если вы используете Unix-подобную операционную систему, вы можете сэкономить свое время, прибегнув к автоматизации задач посредством заданий Cron.
Что такое задание Cron?
Задание Cron – это программа-утилита, которая планирует сценарии и команды на сервере.
У этой встроенной команды есть запланированное время и дата для автоматического запуска без ручной реализации.
Задания Cron созданы для автоматизации повторяющихся задач, например, удаления файлов, перезагрузки сервера или выполнения других функций.
Основные элементы задания Cron
Задание Cron работает с тремя важными компонентами: Сценарий – первое, что внедряется в задание Cron и вызывается для исполнения.
Расписание определяет, когда необходимо запускать указанные сценарии.
Действие – это порядок, в котором должен появляться результат после выполнения сценария.
Better Uptime – это современная служба мониторинга, объединяющая мониторинг cron-заданий и периода работоспособности, управление инцидентами и страницы состояний. Настройка занимает всего 3 минуты.
Основные особенности: проверки Cron-заданий, API, Ping, HTTP(s) соединений, срока действия SSL и TLD; неограниченное количество уведомлений посредством телефонных звонков; простое планирование по требованию; скриншоты и журналы регистрации ошибок и инцидентов; более 100 интеграций, включая Slack, Teams, Heroku, AWS.
HealthChecks – одна из лучших систем мониторинга Cron-заданий за счет своей простоты и эффективности.
Основные особенности: уникальный URL-адрес для каждого задания; информационная панель, обновляющаяся в режиме реального времени; параметры «Grace Time» и «Period» для различных подходов и статусов мониторинга; интеграция со Slack, электронной почтой, Webhook, Microsoft Teams и т.д.
Cronitor помогает в планировании заданий и предоставляет быстрые уведомления.
Основные особенности: мониторинг различных типов Cron-заданий, включая AWS, Microsoft, Jenkins, Kubernetes и Java; гибкие политики уведомлений и правила; мониторинг периода работоспособности веб-сайта, API, хранилища S3 и т.д.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁31👍1👎1
Дистрибутив TENS
Еще один дистрибутив с шифрованием данных.
Из особенностей:
⏺ Мастер шифрования
⏺ Несколько редакций
⏺ Отсутствует менеджер пакетов
TENS (Trusted End Node Security) — это live-дистрибутив на базе Linux (ранее именуемый как «LPS» от «Lightweight Portable Security»), разработанный Научно-исследовательской лабораторией ВВС Министерства Обороны США.
Он предназначен для того, чтобы позволить пользователям работать на компьютере без риска подвергнуть свои учетные и личные данные воздействию вредоносных программ, кейлоггеров и других угроз.
Макет рабочего стола, размещение и название программы запуска приложений, а также оформление окон будут выглядеть аналогично Windows.
Одним из уникальных аспектов дистрибутива является приложение Мастера Шифрования (Encryption Wizard).
Вы можете перетаскивать файлы внутрь него и указывать пароль для их блокировки.
Вы также можете зашифровать файлы с помощью файла сертификата или сгенерировать безопасный пароль, чтобы получить более устойчивую к дешифровке парольную фразу.
⏺ Deluxe-издание включает в себя обычные настольные приложения для повседневного использования, такие как: LibreOffice, Totem Movie Player, Evince PDF reader, Firefox, Thunderbird и другие.
⏺ Регулярный выпуск включает в себя приложение шифрования и некоторый небольшой набор дополнительных программ.
🔥 В отличие от других дистрибутивов, TENS не поддерживает установку большего количества программного обеспечения и в нем отсутствует менеджер пакетов.
Еще один дистрибутив с шифрованием данных.
Из особенностей:
TENS (Trusted End Node Security) — это live-дистрибутив на базе Linux (ранее именуемый как «LPS» от «Lightweight Portable Security»), разработанный Научно-исследовательской лабораторией ВВС Министерства Обороны США.
Он предназначен для того, чтобы позволить пользователям работать на компьютере без риска подвергнуть свои учетные и личные данные воздействию вредоносных программ, кейлоггеров и других угроз.
Дистрибутив использует рабочее окружение Xfce, которое настроено таким образом, чтобы имитировать Windows ХР.
Макет рабочего стола, размещение и название программы запуска приложений, а также оформление окон будут выглядеть аналогично Windows.
Одним из уникальных аспектов дистрибутива является приложение Мастера Шифрования (Encryption Wizard).
Вы можете перетаскивать файлы внутрь него и указывать пароль для их блокировки.
Вы также можете зашифровать файлы с помощью файла сертификата или сгенерировать безопасный пароль, чтобы получить более устойчивую к дешифровке парольную фразу.
Он использует 128- и 256-битное AES-шифрование и поддерживает сжатие зашифрованных архивов.
TENS выпускается в двух редакциях:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥1
Исследователи MIT представили генеративный ИИ для баз данных
Исследователи Массачусетского технологического института представили GenSQL — инструмент генеративного ИИ, который упрощает выполнение сложного статистического анализа табличных данных.
Основные возможности
GenSQL помогает делать прогнозы, обнаруживать аномалии, угадывать пропущенные значения, исправлять ошибки и генерировать синтетические данные.
Например, при анализе медицинских данных GenSQL может выявить аномальные показания артериального давления у пациента.
Интеграция и модели
GenSQL автоматически интегрирует табличные данные и генеративную вероятностную модель ИИ, которая учитывает неопределённость и корректирует решения на основе новых данных.
GenSQL разработан на основе SQL.
«Исторически SQL научил мир бизнеса тому, на что способен компьютер. Мы думаем, что при переходе к моделированию данных нам понадобится аналогичный язык», — отмечает соавтор разработки Викаш Мансингхка.
Преимущества модели
Запросы к модели могут дать более глубокое понимание данных.
Пользователю нужно загрузить данные и вероятностную модель, которую система автоматически интегрирует.
Это позволяет выполнять более сложные запросы и получать точные ответы.
Эффективность и точность
В тематических исследованиях система выявила неправильно маркированные данные клинических испытаний и генерировала точные синтетические данные для геномики.
Будущие планы
Исследователи планируют расширить применение GenSQL для крупномасштабного моделирования популяций.
☄️ Они хотят сделать систему более мощной и простой в использовании, добавив новые средства автоматизации и возможность выполнять запросы на естественном языке, создавая аналог ChatGPT для баз данных.
Исследователи Массачусетского технологического института представили GenSQL — инструмент генеративного ИИ, который упрощает выполнение сложного статистического анализа табличных данных.
Основные возможности
GenSQL помогает делать прогнозы, обнаруживать аномалии, угадывать пропущенные значения, исправлять ошибки и генерировать синтетические данные.
Например, при анализе медицинских данных GenSQL может выявить аномальные показания артериального давления у пациента.
Интеграция и модели
GenSQL автоматически интегрирует табличные данные и генеративную вероятностную модель ИИ, которая учитывает неопределённость и корректирует решения на основе новых данных.
Этот инструмент также подходит для создания и анализа синтетических данных, когда исходная информация конфиденциальна.
GenSQL разработан на основе SQL.
«Исторически SQL научил мир бизнеса тому, на что способен компьютер. Мы думаем, что при переходе к моделированию данных нам понадобится аналогичный язык», — отмечает соавтор разработки Викаш Мансингхка.
Преимущества модели
Запросы к модели могут дать более глубокое понимание данных.
Пользователю нужно загрузить данные и вероятностную модель, которую система автоматически интегрирует.
Это позволяет выполнять более сложные запросы и получать точные ответы.
Эффективность и точность
GenSQL работает в 1,7–6,8 раза быстрее, чем нейронные сети, и обеспечивает более точные результаты.
В тематических исследованиях система выявила неправильно маркированные данные клинических испытаний и генерировала точные синтетические данные для геномики.
Будущие планы
Исследователи планируют расширить применение GenSQL для крупномасштабного моделирования популяций.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤2
Что делает команда chroot в Linux?
Anonymous Quiz
44%
Устанавливает права доступа к файлам
54%
Изменяет корневую директорию текущего процесса
2%
Обновляет системные библиотеки
1%
Сканирует систему на наличие вредоносного ПО
👍18😁5🤔3
Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.• Запускать периодические аудиты безопасности.
• Настроить лимит доступа к данным, хранящимся на Jenkins.
• Убедиться в том, что опция “global security” включена.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤1
Как защитить серверы Linux с помощью SELinux?
В наше время безопасность – это крайне важный компонент разработки программного обеспечения и управления серверами.
Что такое SELinux?
SELinux (Security Enhanced Linux) был разработан АНБ для выполнения правительственных задач в области безопасности.
Он предоставляет системным администраторам контроль над доступом к файлам и процессам через контексты, что позволяет ограничить доступ для определённых пользователей и процессов.
SELinux по умолчанию присутствует в большинстве дистрибутивов Linux, таких как Fedora. Для работы с ним вам потребуются права root или sudo.
Файл конфигурации SELinux находится здесь: /etc/sysconfig/selinux.
Режимы SELinux
В файле конфигурации вы можете выбрать один из режимов:
⏺ Enforced: Политики применяются, доступ ограничивается.
⏺ Permissive: Политики не применяются, но все попытки доступа записываются в логи.
⏺ Disabled: SELinux отключен (не рекомендуется).
Проверить текущий режим можно с помощью команд:
Для изменения режима на текущий сеанс:
Политики SELinux
Политики определяют доступ пользователей к ролям, ролей к доменам, и доменов к файлам. Политики управляются через логические переключатели.
Просмотреть и изменить переключатели можно так:
Флаг -P сохраняет изменение после перезагрузки.
Устранение неисправностей и логи SELinux
Логи SELinux находятся здесь: /var/log/audit.
Для диагностики проблем можно включить режим Permissive, чтобы записывать все события в логи.
В наше время безопасность – это крайне важный компонент разработки программного обеспечения и управления серверами.
Если вы пользуетесь Linux, то у вас есть мощная функция SELinux, которая добавляет дополнительный уровень защиты.
Что такое SELinux?
SELinux (Security Enhanced Linux) был разработан АНБ для выполнения правительственных задач в области безопасности.
Он предоставляет системным администраторам контроль над доступом к файлам и процессам через контексты, что позволяет ограничить доступ для определённых пользователей и процессов.
SELinux по умолчанию присутствует в большинстве дистрибутивов Linux, таких как Fedora. Для работы с ним вам потребуются права root или sudo.
Файл конфигурации SELinux находится здесь: /etc/sysconfig/selinux.
Режимы SELinux
В файле конфигурации вы можете выбрать один из режимов:
Проверить текущий режим можно с помощью команд:
getenforce
sestatus
Для изменения режима на текущий сеанс:
sudo setenforce 0 # Permissive
sudo setenforce 1 # Enforced
Политики SELinux
Политики определяют доступ пользователей к ролям, ролей к доменам, и доменов к файлам. Политики управляются через логические переключатели.
Просмотреть и изменить переключатели можно так:
getsebool -a | grep httpd # Все переключатели для httpd
getsebool httpd_can_connect_ftp # Проверить состояние переключателя
setsebool -P httpd_can_connect_ftp 1 # Включить переключатель
Флаг -P сохраняет изменение после перезагрузки.
Устранение неисправностей и логи SELinux
Логи SELinux находятся здесь: /var/log/audit.
Для диагностики проблем можно включить режим Permissive, чтобы записывать все события в логи.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥2❤1
— У нас лучшие DevOps практики. Давайте перечислим некоторые преимущества, которые мы получили от внедрения DevOps!
— Автоматизированные юнит-тесты!
— Конфигурацию в виде кода!
— А как насчёт дашбордов и лучших инсайтов?
— Я обожаю сервер Майнкрафта!
— Сервер Майнкрафта не является частью DevOps.
— Упс, э… Среды, которые разворачиваются без участия сисадмина, например!
— Автоматизированные юнит-тесты!
— Конфигурацию в виде кода!
— А как насчёт дашбордов и лучших инсайтов?
— Я обожаю сервер Майнкрафта!
— Сервер Майнкрафта не является частью DevOps.
— Упс, э… Среды, которые разворачиваются без участия сисадмина, например!
👍10
Андервольтинг в Linux центрального процессора (CPU)
Андервольтинг – это процесс снижения напряжения, подаваемого на центральный процессор (CPU), с целью уменьшения тепловыделения и энергопотребления.
Для Linux отсутствует официальная программа для андервольтинга, поэтому энтузиасты нашли способы менять напряжение на процессоре методами обратной инженерии и создали свои собственные утилиты:
• undervolt
• iuvolt
• intel-undervolt
Мы рассмотрим утилиту intel-undervolt, написанную на C.
Установка intel-undervolt
Скачивание исходного кода:
Настройка и установка:
Команда для запуска программы:
Режимы программы
read: Прочитать и отобразить текущие значения
apply: Применить значения из конфигурационного файла
measure: Измерить потребление энергии
Опции: -f, --format <формат> (terminal, csv)
-s, --sleep <интервал> (интервал сна в секундах)
daemon: Запустить в режиме службы
Настройка андервольтинга
Для настройки intel-undervolt нужно изменить значения в конфигурационном файле /etc/intel-undervolt.conf:
Пример конфигурационного файла:
Пример настройки андервольтинга
Для установки андервольтинга на 25.84 мВ для кэша процессора:
Ограничение мощности
Можно задать свои значения для TDP (Thermal Design Power). TDP имеет значение на короткое и длительное время турбобуста:
Пример:
Здесь TDP установлено на 35 для короткого турбобуста (5 секунд) и на 25 для длительного турбобуста (60 секунд).
Лимит температуры
Установка предела температуры для термального троттлинга:
Если максимальная температура установлена на 100°C, то результирующий лимит будет 100 - 20 = 80°C.
Применение настроек
После изменения конфигурационного файла нужно применить настройки:
Режим службы
Для автоматического применения настроек используйте intel-undervolt-loop.service.
Измените интервал обновления в конфигурации:
Это значение в миллисекундах, по умолчанию 5 секунд.
Андервольтинг – это процесс снижения напряжения, подаваемого на центральный процессор (CPU), с целью уменьшения тепловыделения и энергопотребления.
Для Linux отсутствует официальная программа для андервольтинга, поэтому энтузиасты нашли способы менять напряжение на процессоре методами обратной инженерии и создали свои собственные утилиты:
• undervolt
• iuvolt
• intel-undervolt
Мы рассмотрим утилиту intel-undervolt, написанную на C.
Установка intel-undervolt
Скачивание исходного кода:
git clone https://github.com/kitsunyan/intel-undervolt
cd intel-undervolt/
Настройка и установка:
./configure --enable-systemd --enable-openrc
make
sudo make install
sudo systemctl daemon-reload
Команда для запуска программы:
intel-undervolt РЕЖИМ [ОПЦИИ]...
Режимы программы
read: Прочитать и отобразить текущие значения
apply: Применить значения из конфигурационного файла
measure: Измерить потребление энергии
Опции: -f, --format <формат> (terminal, csv)
-s, --sleep <интервал> (интервал сна в секундах)
daemon: Запустить в режиме службы
Настройка андервольтинга
Для настройки intel-undervolt нужно изменить значения в конфигурационном файле /etc/intel-undervolt.conf:
sudo gedit /etc/intel-undervolt.conf
Пример конфигурационного файла:
# Включение или отключение триггеров (elogind)
enable no
# CPU андервольтинг
undervolt 0 'CPU' 0
undervolt 1 'GPU' 0
undervolt 2 'CPU Cache' 0
undervolt 3 'System Agent' 0
undervolt 4 'Analog I/O' 0
# Интервал обновления демона
interval 5000
# Действия демона
daemon undervolt:once
daemon power
daemon tjoffset
Пример настройки андервольтинга
Для установки андервольтинга на 25.84 мВ для кэша процессора:
apply 2 'CPU Cache' -25.84
Ограничение мощности
Можно задать свои значения для TDP (Thermal Design Power). TDP имеет значение на короткое и длительное время турбобуста:
power package ${short_term} ${long_term}
power package ${short_term}/${time_window} ${long_term}/${time_window}Пример:
power package 35/5 25/60
Здесь TDP установлено на 35 для короткого турбобуста (5 секунд) и на 25 для длительного турбобуста (60 секунд).
Лимит температуры
Установка предела температуры для термального троттлинга:
tjoffset -20
Если максимальная температура установлена на 100°C, то результирующий лимит будет 100 - 20 = 80°C.
Применение настроек
После изменения конфигурационного файла нужно применить настройки:
sudo intel-undervolt apply
Режим службы
Для автоматического применения настроек используйте intel-undervolt-loop.service.
Измените интервал обновления в конфигурации:
interval 5000
Это значение в миллисекундах, по умолчанию 5 секунд.
👍14❤3
Вышел Wireshark 4.2.6
Версия 4.0.0 популярного сетевого инструмента была представлена 4 октября 2022 года. 15 ноября 2023 года вышла версия Wireshark 4.2.0.
Предыдущая стабильная версия анализатора была представлена 15 мая. Стабильный релиз Wireshark 1.0.0 состоялся в 2008 году.
Код проекта распространяется под стандартной общественной лицензией GPLv2.
В Wireshark 4.2.6 разработчики исправили баги и ошибки (уязвимости), обнаруженные в ходе тестирования, а также внесли изменения и дополнения в код проекта, включая обновления в поддержке протоколов:
• DHCP
• E.212
• MySQL
• NAS-5GS
• PKT CCC
• ProtoBuf
• RADIUS
• RLC-LTE
• RTP
• SIP
• SPRT
• Thrift
• Wi-SUN
11 июля 2024 года вышла стабильная версия свободного программного сетевого анализатора Wireshark 4.2.6.
Версия 4.0.0 популярного сетевого инструмента была представлена 4 октября 2022 года. 15 ноября 2023 года вышла версия Wireshark 4.2.0.
Предыдущая стабильная версия анализатора была представлена 15 мая. Стабильный релиз Wireshark 1.0.0 состоялся в 2008 году.
Код проекта распространяется под стандартной общественной лицензией GPLv2.
В Wireshark 4.2.6 разработчики исправили баги и ошибки (уязвимости), обнаруженные в ходе тестирования, а также внесли изменения и дополнения в код проекта, включая обновления в поддержке протоколов:
• DHCP
• E.212
• MySQL
• NAS-5GS
• PKT CCC
• ProtoBuf
• RADIUS
• RLC-LTE
• RTP
• SIP
• SPRT
• Thrift
• Wi-SUN
Также доработали поддержку пакетов log3gpp.
👍18