Заметки сисадмина о интересных вещах из мира IT, инструкции и рецензии. Alt26 Настраиваем Компьютеры/Сервера/1С/SIP-телефонию в Москве



Ubuntu22: Signal Proxy

2025-11-05 · Posted in Linux Ubuntu

Ubuntu Version

This post uses this year’s LTS – 22.04 / Jammy Jellyfish – but the steps should be the same on other releases.

The easiest way to get started is to get a VPS from one of the many hosting providers available – DigitalOcean, AWS, Linode, whoever best suits you – it’s beneficial if proxies are spread across as wide a range of providers as possible, as it makes blocking much more disruptive and obvious.

Requirements

You will need:

  • Somewhere to host the proxy (an inexpensive VPS can easily handle hundreds of connections)
  • A Domain Name or Subdomain to use (Signal’s proxy uses LetsEncrypt to obtain a SSL certificate, and LetsEncrypt don’t issue certificates for IPs.)
  • Optional: InfluxDB (or a free InfluxDB Cloud account) for system monitoring

If you don’t own a domain to use (or don’t want to use your own), there are ways around this – for example, using dynamic DNS services to get a free subdomain – but those are outside the scope of this post (feel free to get in contact if you want some guidance on this).

Selecting a VPS datacenter close to Iran will give lower latency, but there’s probably some benefit in geo-diversity too.

DNS Setup Guidance

Once you’ve got a VPS running, you’ll need to create a DNS record to point a name to it.

Out of an abundance of caution, you probably don’t want to give it a name which discloses what the system is: don’t use a subdomain called signal-proxy, for example.

Not only does it make blocking easier, but it’ll lead to user’s DNS lookups making them easily identifiable to anyone watching the network.

Install Docker

These instructions only differ very slightly from Docker’s install instructions – they install docker-compose and git because those will be required later.

Add Repos and keys

Update the package indexes and install

Get and install Signal Proxy

Clone down the Signal-Proxy files

cd into the directory and then run the setup script

After some setup, this will prompt you for the domain name that you’ve created for the proxy – provide this.

The build process will compile NGinx, so you may see quite a lot of output scrolling by.

Eventually it’ll complete and print a message like

Bring the system up

The proxy is now ready for use.

You can verify that the containers are up:

You should see three containers

  • signal-tls-proxy_certbot_1
  • signal-tls-proxy_nginx-relay_1
  • signal-tls-proxy_nginx-terminate_1

You can let people know that you’ve a proxy available for use by posting on Social Media with the hashtag #IRanASignalProxy. Don’t post the link to your proxy publicly – they’re easily searched for and blocked, ask people to DM you to request the link.

Provide users with the full signal.tube link provided in the output earlier – Signal’s app has special handler for signal.tube which allows the proxy to be easily/quickly configured by the user.

Optional: Monitoring The System

The proxy doesn’t demand many resources, all the same you might want to implement some basic monitoring so that you can ensure your system isn’t overloaded (as this’ll have a negative impact on the people most in need of it).

For avoidance of doubt, You cannot directly monitor the proxy, or the contents of the traffic it carries – it’s been designed specifically to ensure that user’s aren’t put in a position of having to trust the proxy operator with their comms (the containers don’t even generate logs).

What you can monitor is system resource usage, as well as that all three containers are up and running.

I use Telegraf and InfluxDB for monitoring, so on my proxies I’ve done the following

Then in /etc/telegraf/telegraf.conf I’ve set

The stats can then be used with my existing system monitoring and alerting dashboards.

If you don’t already have relevant dashboards, there are a community templates which you can import to get dashboards:

If the statistics show a prolonged drop in network traffic to the docker containers, it can be taken as an indicator that the proxy has been detected and blocked and a prompt to look at setting up under new domain names and IPs.

Как срочно проверить, кто и когда перезагружал сервер

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

Ловим события перезагрузки через журнал:

Этот запрос покажет, кто инициировал перезагрузку, с какой причиной и когда это было. Очень полезно при разборе неожиданных рестартов или плановых работ, которые никто “не помнит”.

Дополнительно можно глянуть системные события ID 6006 (нормальное выключение) и 6005 (загрузка журнала, т.е. запуск системы):

Удобно добавлять эти команды в свой набор “быстрых админских команд”.

Ubuntu22: hiddify-manager 11 типичные ошибки

2025-10-22 · Posted in Linux Ubuntu

Основные сервисы Hiddify и их логи

Проверить, какие вообще службы Hiddify есть:

Смотреть всё подряд, что содержит “hiddify” (в одном выводе):

или (если systemd не поддерживает wildcard):

Полезные опции:

  • -n 200 показать последние 200 строк
  • –since “10 minutes ago” показать логи за последние 10 минут
  • –since today показать логи с начала дня
  • -f «живой» просмотр логов (реальное время)

Панель управления (веб-интерфейс):

Фоновые задачи (обновление трафика, очистка, cron):

XRay (ядро прокси):

Sing-box (если используется вместо XRay):

Redis (кэш и очередь задач):

Nginx (обвязка панели / HTTPS):

Hiddify Manager (если установлен отдельным сервисом):

Не считает траффик

Добавить в cron:

Строку:

Добавить в конце если требуется:

Проверка:

Добавить глобальные переменные

Можно прописать глобально для всей системы:

Проверка:

Почистить «битый» Beat и перезапустить фон (если не делал):

Фоновые задачи

Проверить и перезапустить фоновые задачи панели:

Перезапуск + автозапуск:

Провка логов:

Все упавшие юниты (вдруг среди них есть «устаревшие»)

убрать, чтобы не светилось в –failed пример если сервис shadowsocks-libev.service

Проверить все запущенные таймеры (cron-аналог systemd)

Топ по активности (нагрузка от служб)

Показывает CPU, память и IO каждой службы в реальном времени.

Обновление IP-пулов стран (GeoIP / GeoSite)

ESXI: Как изменить загрузочный носитель

2025-10-20 · Posted in VMWare

При включении виртуальной машины VMWare, на короткое время появляется экран загрузки, на котором можно увидеть клавиши, которыми можно управлять загрузкой. Например, F2 – вход в BIOS виртуальной машины, а ESC – меню загрузки с возможностью выбора загрузочного устройства.

Можно увеличить параметр Boot delay до 10000 (1o секунд)  в настройках виртуальной машины, тогда это окно будет отображать дольше.

И вот мы вошли в BIOS виртуальной машины. Идём в раздел Boot, задаём последовательность загрузочных устройств, как в обычном компьютере.

По какой-то причине, виртуальная машина VMWare пока ещё не поддерживает загрузку с загрузочной флешки. Но ничего, мы можем воспользоваться сторонним менеджером загрузки. Воспользуемся, например, Plop Boot Manager.

Нужно скачать его и распаковать в любую директорию на компьютере. Затем в свойствах виртуальной машины задать в качестве устройства загрузки образ plpbt.iso, который находится в архиве. И после этого, во время загрузки виртуальной машины будет появляться меню с возможностью выбора загрузочного устройства, в том числе, флешки.

Windows11: Make every systray icon visible by default

2025-10-07 · Posted in PowerShell, Windows – 11

In Windows 10, to always show all icons and notifications on the taskbar, it was enough to create the

In Windows 11, there is no longer a way to set all icons to be displayed. The display is configured on a per-icon basis. One strategy is to create a script that checks which icons are hidden and sets them to be displayed.

If you do want to hide all the icons, the solution would be:

Then you can schedule a task, which will trigger the script at a 1 minute interval, in the context of the local group Users ==> SID S-1-5-32-545.