Задать вопрос
Ответы пользователя по тегу Системное администрирование
  • Как регистрировать не все IP-адреса машины на DNS-сервере?

    veselov4nton
    @veselov4nton
    Системный администратор.
    Правильный способ: GPO или реестр, чтобы запретить DNS-регистрацию глобально, а потом настроить только нужную
    Ответ написан
    1 комментарий
  • Как сделать две конфигурации для WG?

    veselov4nton
    @veselov4nton
    Системный администратор.
    Для решения задачи, описанной вами, можно использовать несколько подходов, чтобы автоматически генерировать различные конфигурации для WireGuard через Telegram-бота.

    1. Разделение конфигураций через Docker
    Ваш запрос включает создание двух разных конфигураций для WireGuard (полный VPN и частичный VPN для отдельных IP). Один из вариантов — использовать два разных контейнера Docker, как предложено в комментарии. Однако, это может быть немного избыточно, если хотите минимизировать сложность.

    Вместо этого, можно настроить один контейнер с возможностью переключения конфигураций внутри него. В контейнере можно создать несколько конфигурационных файлов для WireGuard (например, full_vpn.conf и partial_vpn.conf), и с помощью команды копирования нужного конфигурационного файла из одного места в другое на запрос Telegram-бота.

    2. Использование Telegram-бота для выдачи конфигов
    Для того чтобы автоматически генерировать конфиг при запросе через Telegram-бота, можно создать простой бот, который будет выполнять следующие действия:

    При получении команды от пользователя, бот будет формировать нужный конфиг в зависимости от типа VPN.
    Генерация конфигов может быть на основе шаблонов, которые вы заранее подготовите для разных случаев (например, один конфиг для полного VPN, а другой — для частичного).
    Шаги для реализации:

    1. Установка и настройка Telegram-бота

    Для начала нужно создать Telegram-бота через BotFather и получить токен API. Затем можно использовать библиотеку python-telegram-bot или аналогичную для написания скрипта. Установите библиотеку:

    pip install python-telegram-bot

    2. Скрипт бота

    Создайте Python-скрипт, который будет обрабатывать команды и выдавать соответствующие конфиги.

    Пример базового скрипта:

    import os
    from telegram import Update
    from telegram.ext import Updater, CommandHandler, CallbackContext

    # Путь к конфигурационным файлам WireGuard
    config_dir = "/etc/wireguard/"

    def start(update: Update, context: CallbackContext) -> None:
    update.message.reply_text('Привет! Я могу создать конфиг для VPN. Выберите опцию: /fullvpn или /partialvpn')

    def full_vpn(update: Update, context: CallbackContext) -> None:
    with open(os.path.join(config_dir, "full_vpn.conf"), "r") as file:
    config = file.read()
    update.message.reply_text(f"Конфиг для полного VPN:\n{config}")

    def partial_vpn(update: Update, context: CallbackContext) -> None:
    with open(os.path.join(config_dir, "partial_vpn.conf"), "r") as file:
    config = file.read()
    update.message.reply_text(f"Конфиг для частичного VPN:\n{config}")

    def main():
    # Токен вашего бота
    updater = Updater("YOUR_BOT_API_TOKEN", use_context=True)
    dp = updater.dispatcher

    dp.add_handler(CommandHandler("start", start))
    dp.add_handler(CommandHandler("fullvpn", full_vpn))
    dp.add_handler(CommandHandler("partialvpn", partial_vpn))

    updater.start_polling()
    updater.idle()

    if __name__ == '__main__':
    main()

    Этот код создает бота, который на команды /fullvpn и /partialvpn будет отправлять соответствующие конфигурации. Обратите внимание, что конфигурационные файлы должны быть заранее подготовлены.

    3. Настройка конфигов WireGuard

    Конфигурации WireGuard могут выглядеть следующим образом:

    Полный VPN (full_vpn.conf):

    [Interface]
    PrivateKey =
    Address = 10.0.0.2/24
    DNS = 1.1.1.1

    [Peer]
    PublicKey =
    Endpoint = :51820
    AllowedIPs = 0.0.0.0/0
    PersistentKeepalive = 25
    Частичный VPN (partial_vpn.conf):

    [Interface]
    PrivateKey =
    Address = 10.0.0.2/24
    DNS = 1.1.1.1

    [Peer]
    PublicKey =
    Endpoint = :51820
    AllowedIPs = 192.168.1.0/24, 10.1.1.0/24
    PersistentKeepalive = 25

    4. Возможность переключения конфигов

    Для переключения конфигов в Docker-контейнере можно использовать тома (volumes) или монтировать конфигурационные файлы в зависимости от выбранного типа VPN. Если это нужно сделать без перезапуска контейнера, можно настроить систему, чтобы бота автоматически менял конфиг, например, заменяя wg0.conf в соответствующей директории.

    5. Запуск бота

    Запустите бота командой:

    python bot_script.py

    Теперь бот будет ждать команд и при необходимости отправлять нужные конфигурации. Напишите получилось ли?
    Ответ написан
    Комментировать
  • Что делать, если очистка диска неправильно отображает объём освобождаемого пространства?

    veselov4nton
    @veselov4nton
    Системный администратор.
    По совокупности признаков похоже, что "Очистка диска" отображает старые или кэшированные данные об объёме мусора, который уже физически удалён, но метаданные не обновлены. Такое иногда бывает после обновлений или сбоя в работе службы Superfetch (SysMain), службы Storage Service или кэша компонента «Оценка хранилища».

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

    Перезапусти службы, отвечающие за оценку хранилища
    Нажми Win + R, введи services.msc и нажми Enter.
    Найди следующие службы:
    SysMain (ранее Superfetch)
    Storage Service
    Windows Update
    Поочерёдно:
    Нажми правой кнопкой на каждую из них, выбери Перезапустить (или сначала "Остановить", потом "Запустить", если кнопка недоступна).
    После этого снова запусти cleanmgr с правами администратора и посмотри, сколько теперь отображается.
    Ответ написан
  • Почему не уходят письма с почтового сервера на определенные адреса?

    veselov4nton
    @veselov4nton
    Системный администратор.
    Проверьте, действительно ли 25 порт недоступен с вашего почтового сервера.

    Сделайте на MDaemon-сервере (или с любого хоста в вашей сети, откуда уходят письма) команду:

    telnet mailserver.sverdlova.ru 25
    или
    telnet 82.208.88.132 25
    telnet 193.228.231.7 25
    Если telnet не установлен, можно воспользоваться openssl:

    openssl s_client -connect mailserver.sverdlova.ru:25
    Сообщи, получилось ли подключиться хотя бы к одному из адресов и что выводится в ответ.
    Ответ написан
    Комментировать