Установка opensnitch на fedora linux
- Скачиваем релиз со страницы релизов;
- При установке демона доустанавливаем все пакеты, которые требуются rpm (выводятся в процессе установки);
- Перед установкой UI-компонента скачиваем файл requirements.txt из репозиторияустанавливаем зависимости через
pip -r requirements.txt
; - Устанавливаем UI-компонент.
Более подробно, почему установка выглядит так, описано в документации.
Далее...Настройка Docker через socks5-прокси на linux с systemd, используя ssh-туннель
Примечание: работает при сетевых настройках по умолчанию.
Предположим, что у нас есть ssh-сервер с доступом по ключу, к которому подключаемся по ключу.
ssh user@hostname -i ~/.ssh/key
Тогда создание ssh-туннеля происходит командой ниже.
ssh -f -C2qTnN -D 1080 user@hostname -i ~/.ssh/key
Далее открываем файл /etc/systemd/system/docker.service.d/http-proxy.conf через sudo и добавляем выделенные строки.
[Service]
Environment="HTTP_PROXY=socks5://localhost:1080"
Environment="HTTPS_PROXY=socks5://localhost:1080"
Environment="NO_PROXY=localhost,127.0.0.0/8,172.17.0.1"
Для применения настроек необходимо перезапустить сервис.
Далее...Добавление функции перемещения окна на другой монитор в XFCE
При запуске ПК с прошивкой для запуска игр мне дико понравился хоткей Win+Shift+Стрелка для перемещения окна на другие экраны. Очень захотелось такой в прошивке для работы, однако, оказалось, что XFCE сходу так не умеет (или я не разобрался).
Но, решение есть, и нашлось оно довольно быстро...
Далее...Перенос Fedora c SATA на M.2
Команды в основном описаны в документации, за исключением несостыковки в использовании luks и создании нового раздела.
Рассматривается ситуация, при которой существовал раздел /boot без efi.
Далее...Обновление Fedora c 32 до 36
Типичное обновление версии выглядит примерно вот так:
dnf upgrade --refresh
dnf install dnf-plugin-system-upgrade
dnf system-upgrade download --releasever=N
dnf system-upgrade reboot
где N - версия дистрибутива. Однако, все может пойти не по сценарию. Например, вот так.
Под катом инфа про то, как можно дойти до такого состояния и как из него выходить.
Далее...Изменения в блоге 2023
Довольно давно в блоге не было никаких изменений. С одной стороны, было много других дел, и на блог просто не оставалось свободного времени. С другой, когда оно все-таки появлялось, становилось лень что-то писать.
Не скажу, что в этом плане что-то изменилось, однако, время заняться блогом нашлось. Причем в весьма своеобразной форме.
Во-первых, решил перенести его с wordpress на генерацию статики, которую сам же и написал, когда было время и желание. Wordpress был очень хорош вначале, когда было желание писать и не заморачиваться с настройкой инструмента. Но со временем инструмент уже сам начал сковывать в возможностях, при этом во многом функциональность wordpress для меня была избыточной. А еще приходилось следить за обновлениями как самого wordpress, так и связанных с ним вещей. Все это с течением времени привело к тому, что от wordpress пришлось отказаться.
Со своим решением у меня гораздо меньше рамок со всякими экспериментами, если вдруг в этом появится потребность. Однако, на данный момент статичный контент на сервере накладывает некоторые ограничения. Например, отсутствуют комментарии. Сторонние сервисы использовать нет желания, а заниматься этим самостоятельно не вижу необходимости. Поэтому, если вдруг у кого появится желание оставить комментарий или поспамить, сделать это на данный момент и в ближайшее время не получится. Так же огорчу всех пользователей wpscan: сейчас в нем совершенно нет необходимости из-за отсутствия целевой платформы на сервере.
Далее...Отладка собранного в контейнере webassembly кода вне этого контейнера
Собирать webassebmly файл внутри docker-контейнера достаточно удобно, потому что не приходится следить за окружением и что-то постоянно доустанавливать и фиксить. Однако, есть небольшая тонкость при отладке собранных файлов.
Заключается она в том, что пути внутри контейнера и в любой другой среде скорее всего будут отличаться. Поэтому необходимо это учитывать при сборке. Например, есть файл test.c со следующим содержимым.
#include <stdlib.h>
#include <stdio.h>
int main() {
int i = 0;
for (int j = 0; j < 10; j++)
{
i++;
}
return 0;
}
Собираем код следующей командой
docker run --expose=8080 --rm -v $(pwd):/src -u $(id -u):$(id -g) emscripten/emsdk emcc -g test.c -o test.html **-ffile-prefix-map=/src=$(pwd)**
Далее необходимо настроить свой браузер (на примере хрома) для отладки. После чего достаточно поднять любой веб-сервер для того, чтобы можно было обратиться к каталогу из браузера. Например, пакет serve из npm. Отладка webassembly кода станет доступна точно также, как и отладка js-кода.
Далее...Исправляем отсутствие доступа на запись в каталог внутри docker-контейнера
Иногда так бывает, что при монтировании каталога в контейнер необходимо иметь права на запись, однако по каким-то причинам запись недоступна
version: "3"
services:
php:
build:
context: ./configs
dockerfile: php74.dockerfile
env_file:
- configs/vars.env
volumes:
- .**/:/var/www**
- ./configs/xdebug.ini:/usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
Вот пример конфигурации, допустим внутри www есть каталог log, в который необходимо что-то писать. Для этого достаточно на хост-машине отредактировать права на каталог так, как это требуется для работы (ниже пример, не надо так делать без необходимости).
[dv4mp1r3@mbp ipinfo]$ ls -l | grep log
drwxrwxrwx. 2 dv4mp1r3 dv4mp1r3 4096 Jan 2 23:31 log
А происходить так может потому, что пользователь, из под которого запускается процесс внутри контейнера может не совпадать с владельцем каталога, поэтому и менять права надо вне контейнера.
Далее...Удаленная отладка с помощью xdebug 3
Совсем недавно (чуть больше месяца назад на момент написания) вышел xdebug версии 3.0.0. И сразу же после того, как докер подхватил изменения, удаленная отладка перестала работать.
А дело все в том, что в конфиге xdebug изменились названия параметров. Пример настройки для новой версии ниже.
xdebug.**mode=debug**
xdebug.**client_host**=172.17.0.1
xdebug.**client_port**=9001
Более подробно про переезд с 2.x на 3.x можно почитать в официальной документации.
UPD: необходимо экспортировать переменную для отладки cli-скриптов
export XDEBUG_SESSION=1
Далее...
Сборка и подключение nginx-dav-ext-module к работающему nginx на CentOS 8
На днях столкнулся с необходимостью настроить webdav на nginx, а для поддержки некоторых клиентов нужно собрать дополнительный модуль nginx-dav-ext-module. При этом пересобирать nginx целиком не хотелось. Под катом компоновка материала из похожей статьи на хабре с дополнениями от себя.
Далее...