• Как в nginx перенаправить главную страницу на другой docker контейнер?

    @mezhuev
    Системный администратор
    location = / {
        proxy_pass http://127.0.0.1:8081/;
    }
    location / {
        proxy_pass http://127.0.0.1:8080/;
    }

    Или по вашему варианту, но первый предпочтительней:
    location / {
        proxy_pass http://127.0.0.1:8081/;
    }
    location ~ ^/.+ {
        proxy_pass http://127.0.0.1:8080;
    }
    Ответ написан
  • Postfix и домен 3 уровня?

    @mezhuev
    Системный администратор
    Можете направить в какой то мануал, чтобы иметь представление как это реализовать?

    Postfix Virtual Domain Hosting Howto
    Ответ написан
    Комментировать
  • В чем отличие одной пары квадратных скобок, в отличие от двух вложенных друг в друга? [] и [[]]?

    @mezhuev
    Системный администратор
    Если кратко, то [ это синоним для test. Обрабатывается как и любая другая команда с соответствующими ограничениями. [[ — это расширение Bash (не совместимо с другими оболочками) и так как это внутренняя команда, то имеет несколько больше возможностей. В частности, нет необходимости заключать переменные в кавычки, можно использовать &&, ||, < и > и есть поддержка регулярных выражений через оператор =~. Для подробностей смотрите man bash.
    Ответ написан
    6 комментариев
  • ESXi скрипт в cron, что со временем?

    @mezhuev
    Системный администратор
    ESXi внутри использует UTC, хоть и показывает в интерфейсе время согласно установленному часовому поясу. Соответственно если вы в московском часов поясе, то всё верно: 2:00 UTC + 3 часа = 5:00 MSK.
    Ответ написан
    Комментировать
  • Где взять шаблон Zabbix?

    @mezhuev
    Системный администратор
    Все официальные шаблоны можно взять из репозитория Zabbix. Нужный вам шаблон есть в ветке release/5.0.
    Ответ написан
  • Совместимость реализаций ZFS?

    @mezhuev
    Системный администратор
    FreeBSD перешла на OpenZFS с версии 13.0. В целом же различные реализации ZFS совместимы между собой при условии, что у пула список активированных Feature Flags поддерживается всеми системами, где его планируется использовать.
    Ответ написан
    Комментировать
  • Thunderbird настройка через GPO - как?

    @mezhuev
    Системный администратор
    Некоторые базовые возможности были добавлены какое-то время назад: enterprise.thunderbird.net, но список не сказать что большой и практически не расширяется. Поэтому если нужна максимальная гибкость, то через правку конфигурационного файла (см. MCD). При этом файл autoconf.js может находиться на веб-сервере и динамически формироваться под каждого пользователя. Решение нельзя назвать тривиальным, но это работает.
    Ответ написан
    Комментировать
  • Как сделать локальную сеть на 3 офиса?

    @mezhuev
    Системный администратор
    Раздавать /28 подсеть на все устройства не надо и она нужна лишь для связи между офисам. В самих же офисах делаете свои подсети необходимого размера с любыми адресами, главное чтобы они не пересекались между собой и выделенной вам провайдером подсетью. Например, резервируете 10.2.0.0/16, 10.3.0.0/16 и 10.4.0.0/16 для офиса 1–3 соответственно.

    Далее на пограничном маршрутизаторе в каждом офисе настраиваете:
    1. LAN-порт на обслуживание локальной подсети.
    2. WAN-порт для L3VPN, выделяя один IP-адрес на устройство (офис). Например, 172.16.0.2, 172.16.0.3 и 172.16.0.4 для офиса 1–3 соответственно.
    3. WAN-порт для доступа в интернет если это необходимо.
    4. Маршруты для доступа к другим офисам через L3VPN. Для офиса 1 будет примерно так:
      Destination     Gateway
      10.3.0.0/16     172.16.0.3
      10.4.0.0/16     172.16.0.4

    5. Для трафика между локальными подсетями отключаете NAT, если по умолчанию на вашем железе он включён.
    6. Соответствующим образом настраиваем файрволл (если есть), чтобы входящий трафик из других офисов не блокировался.
    7. Опционально для параноиков. Поднимаем свой VPN между офисами, чтобы недобросовестный провайдер не мог смотреть трафик.
    Ответ написан
    5 комментариев
  • Как выдаются лицензии 1С?

    @mezhuev
    Системный администратор
    Зависит от варианта лицензирования и способа запуска. Если используется аппаратный ключ USB и непосредственное получение лицензии клиентским ПК через HASP LM, то будет использована одна лицензия при любом количестве сеансов. Если используются программные лицензии или выдача осуществляется через сервер 1С/веб-сервер, то каждый сеанс заберёт одну лицензию.
    Ответ написан
    Комментировать
  • Как правильно спроксировать nginx до внутреннего сервиса?

    @mezhuev
    Системный администратор
    location /int/ {
        proxy_pass https://internal.local/;
    }
    Ответ написан
  • Как передать в цикл for два аргумента из строки bash?

    @mezhuev
    Системный администратор
    Установите необходимый разделитель через переменную $IFS.
    IFS=$'\n'
    for addr in $(cat filename); do
        IFS=' '
        telnet $addr
    done

    man bash

    Word Splitting
    The shell scans the results of parameter expansion, command substitution, and arithmetic expansion that did not occur within double quotes for word splitting.

    The shell treats each character of IFS as a delimiter, and splits the results of the other expansions into words using these characters as field terminators. If IFS is unset, or its value is exactly , the default, then sequences of , , and at the beginning and end of the results of the previous expansions are ignored, and any sequence of IFS characters not at the beginning or end serves to delimit words. If IFS has a value other than the default, then sequences of the whitespace characters space, tab, and newline are ignored at the beginning and end of the word, as long as the whitespace character is in the value of IFS (an IFS whitespace character). Any character in IFS that is not IFS whitespace, along with any adjacent IFS whitespace characters, delimits a field. A sequence of IFS whitespace characters is also treated as a delimiter. If the value of IFS is null, no word splitting occurs.

    Explicit null arguments ("" or '') are retained and passed to commands as empty strings. Unquoted implicit null arguments, resulting from the expansion of parameters that have no values, are removed. If a parameter with no value is expanded within double quotes, a null argument results and is retained and passed to a command as an empty string. When a quoted null argument appears as part of a word whose expansion is non-null, the null argument is removed. That is, the word -d'' becomes -d after word splitting and null argument removal.

    Note that if no expansion occurs, no splitting is performed.
    Ответ написан
    3 комментария
  • Бесплатное приложение для родительского контроля на Windows?

    @mezhuev
    Системный администратор
    В Windows 10/11 есть штатный родительский контроль Microsoft Family Safety. Удалённого просмотра экрана нет, но остальное из списка присутствует.
    Ответ написан
    Комментировать
  • Почему не работают квоты в dovecot?

    @mezhuev
    Системный администратор
    В список каталогов добавил каталог Архив, он в клиенте не отображается.

    Добавьте auto = subscribe, чтобы получилось примерно так:

    mailbox Archives {
      auto = subscribe
      special_use = \Archive
    }

    Для уже существующих пользователей можно выполнить doveadm mailbox subscribe -A Archive.
    Ответ написан
  • Какие условия лицензионного соглашения я нарушаю устанавливая ESET PROTECT на Windows 7?

    @mezhuev
    Системный администратор
    В Windows 7 немного размытые формулировки, но кое что подходит. В частности в пункте 8 сказано:
    ОБЪЕМ ЛИЦЕНЗИИ. Программное обеспечение не продается, а предоставляется в пользование по лицензии. Это соглашение дает вам только некоторые права на использование функций, имеющихся в данном выпуске программного обеспечения, лицензию на который вы получили. Microsoft оставляет за собой все остальные права. <…> При этом вы должны соблюдать все технические ограничения в программном обеспечении, допускающие использование программного обеспечения только определенным образом. Вы не имеете права:
    • пытаться обойти технические ограничения в программном обеспечении;
    <…>
    • использовать это программное обеспечение для предоставления сетевых услуг на
    коммерческой основе.

    Под техническими ограничениям стоит понимать, например, ограничение в 20 подключений (см. пункт 3е).

    А вот у Windows 10 лицензия более однозначная, смотрим пункт 2c:
    Ограничения. Изготовитель или установщик и Microsoft сохраняют все права (например, права, предусмотренные законами о защите интеллектуальной собственности), которые не предоставляются явным образом в рамках настоящего соглашения. Например, эта лицензия не предоставляет вам права:
    <…>
    (iv) пытаться обойти технические ограничения в программном обеспечении;
    (v) использовать программное обеспечение в качестве серверного программного обеспечения, для предоставления к услуг размещения на коммерческой основе, предоставлять данное программное обеспечение для одновременного использования несколькими пользователями в сети, устанавливать программное обеспечение на сервере и предоставлять пользователям удаленный доступ к нему или устанавливать программное обеспечение на устройстве для использования только удаленными пользователями;
    (vii) при использовании интернет-возможностей вы не имеете права использовать их каким-либо образом, который может помешать их использованию другими лицами, пытаться получить несанкционированный доступ или осуществлять несанкционированное использование каких-либо служб, данных, учетных записей или сетей.
    Ответ написан
    Комментировать
  • Как правильно подобрать лицензию для сервера под Active Directory?

    @mezhuev
    Системный администратор
    У Essentials ограничение в 25 пользователей / 50 устройств / 10 ядер / 1 сокет. Вычёркиваем.

    Вам требуется лицензия Standard на 36 ядер (необходимо лицензировать все физические ядра). Это позволит вам запустить две ВМ c Windows Server на данном железе. Если надо больше — берём ещё лицензию Standard на 36 ядер и запускаем 4 ВМ. Если надо ещё больше, то стоит рассмотреть использование Datacenter.

    Дополнительно к лицензии Windows Server необходимо приобрести требуемое количество клиентских лицензий (CAL Device или CAL User, смотря что для вас выгоднее/удобнее).
    Ответ написан
    1 комментарий
  • Второй сервер 1С под Linux - доменная аутентификация?

    @mezhuev
    Системный администратор
    Два сервера — две учётные записи в AD, для каждого сервера своя учётная запись.
    Ответ написан
    1 комментарий
  • Postfix, скрыть реального отправителя?

    @mezhuev
    Системный администратор
    Смотрите ADDRESS_REWRITING_README, в частности раздел Canonical address mapping.

    Это будет легко реализуемая и корректная замена ivan@domain.ru → support@domain.ru и support@domain.ru → ivan@domain.ru соответственно.

    получатель видит что письмо пришло с support@domain.ru … получатель отвечает на это письмо то оно должно прийти ivan@domain.ru

    А вот здесь уже сложнее. Условный заголовок X-Real-Sender-ID в теле отправленного вами письма никак не попадёт в ответ, который отправит получатель такого письма. Соответственно в нём нет особого смысла. В принципе можно приспособить для этих целей заголовок References, но всё равно придётся писать свой прокси для обработки входящих.

    Адрес, на который будет отправлено письмо при нажатии кнопки «Ответить» задаётся заголовком Reply-To. Но и тут надо понимать, что вы не в силах запретить получателю щёлкнуть по адресу в поле «От» и подготовить ответ на данный адрес или любым иным способом указать support@domain.ru в поле «Кому».

    Так что ваша идея заведомо содержит неустранимые недостатки и выходит за рамки обязанностей МТА. Решать её, по хорошему, надо другими способами. Например, если это служба поддержки, то за приём и отправку писем должна отвечать специализированная система (Jira, YouTrack и т. д.).
    Ответ написан
    2 комментария
  • 2 DNS в одной сети AD домена?

    @mezhuev
    Системный администратор
    1. В параметрах сервера DNS в AD укажите сервером пересылки ваш AdGuard.
    2. У пользователей оставьте только DNS в AD.
    Ответ написан
    4 комментария
  • Как сделать видимы друг другу две подсети на zyxel usg60?

    @mezhuev
    Системный администратор
    Для начала перестаньте называть коммутатор (aka switch) хабом.

    Зачем в этой цепочке TL-SG1008MP? Судя по схеме его можно и нужно убрать.

    А теперь два пути:
    1. Полностью сохраняем текущую адресацию:
      • На USG60 создаём VLAN с типом интерфейса «internal» и VLAN ID по своему выбору (например, 15). Зона и базовый интерфейс устанавливаем соответственно настройкам текущего активного порта. Скорее всего это будут LAN1 и lan1 соответственно. В будущем, если возникнет потребность или желание более гибко настроить маршрутизацию и политики безопасности, то всё это можно легко изменить.

        На вновь созданном интерфейсе прописываем IP-адрес из подсети 192.168.15.0/24 (любой не занятый) и настраиваем сервер DHCP. Но чтобы всё прошло совсем незаметно для пользователей, лучше прописать 192.168.15.1.
      • Переходим к коммутатору HP, через который подключен безымянный маршрутизатор Wi-Fi, и для начала определим номера портов, к которым подключены USG60 (порт GW1) и Wi-Fi (порт GW2).

        Как только получим эту информацию заходим в настройки коммутатора и создаём VLAN с тем же ID, что прописали на USG60. Скорее всего это делается через VLANS → VLAN Membership → Add VLAN → (вводим VLAN ID) → Add. Порты GW1 и GW2 с предыдущего шага делаем членами этого VLAN и применяем настройки.

        Так как наш Wi-Fi скорее всего не умеет в VLAN, в настройках коммутатора находим VLAN Port Config и для порта GW2 прописываем PVID нашего нового VLAN.
      • На Wi-Fi отключаем DHCP. Если на USG60 прописали IP 192.168.15.1, то здесь меняем на любой другой свободный. И только после этого перетыкаем кабель из WAN в LAN-порт — наш маршрутизатор становится просто точкой доступа, а за выдачу адресов и маршрутизацию между подсетями отвечает USG60.
      • Если в подсети 192.168.15.0/24 присутствуют устройства со статическими IP-адресами и вы не стали назначать USG60 адрес 192.168.15.1, то на этих устройствах потребуется вручную изменить шлюз по умолчанию и возможно DNS на тот адрес, что был выбран для USG60.

    2. Если у вас нет устройств со статическими IP-адресами или их немного, можно сделать проще и объединить всё в одну подсеть (хотя рекомендации как раз делать наоборот, но оставим их за скобками).

      Объединяем все устройства в одну подсеть:
      • На USG60 заходим в настройках интерфейса (скорее всего это будет интерфейс lan1) и меняем маску подсети. Текущая маска 255.255.255.0 или /24 даёт нам 254 адреса. Маска 255.255.254.0 или /23 даст уже 510, маска 255.255.252.0 иди /22 — 1022 и так далее по степеням двойки (−2 адреса). Там же в параметрах DHCP изменяем диапазон доступных клиентам IP-адресов.

        Откройте калькулятор IP-адресов и рассчитайте сами, какая вам подойдёт больше всего. Ставить сразу 255.255.0.0, как советуют в соседнем ответе, не рекомендую, так как если у вас возникнет потребность раздробить сеть (например, выделить DMZ), то это будет уже не так удобно.
      • На Wi-Fi отключаем DHCP и меняем IP-адрес на любой свободный в новом диапазоне с учётом новой маски. Перетыкаем кабель из WAN в LAN-порт — наш маршрутизатор становится просто точкой доступа, а за выдачу адресов отвечает USG60.
      • Если в сети присутствуют устройства со статическими IP-адресами, то на этих устройствах потребуется вручную изменить маску подсети, а для устройств с адресами из 192.168.15.0/24 полностью прописать новые настройки. Однако если вы выбрали маску /20 или меньше, то только изменить маску подсети.

    Ответ написан
    Комментировать
  • Gmail: 550 Too many invalid recipients - почему и как починить?

    @mezhuev
    Системный администратор
    Вот ваша причина:

    Address not found

    Навскидку есть несколько вариантов:
    1. Некорректная настройка принимающего сервера или временны сбой.
    2. Данный человек больше не работает в данной компании или ему сменили адрес.
    3. Вас внесли в чёрный список, но не хотят это явно показывать.
    Ответ написан
    Комментировать