Задать вопрос
  • Как отредактировать nginx с помощью ansible?

    siferdj
    @siferdj
    Люблю учиться
    awk '
       /server {/ { in_server = 1 }
       in_server && /ssl_certificate / { next }
       in_server && /ssl_certificate_key / { next }
       in_server && /error_log / { next }
       in_server && /access_log / { next }
       in_server && /}/ { 
           print "    ssl_certificate /etc/nginx/ssl/fullchain.pem;"
           print "    ssl_certificate_key /etc/nginx/ssl/privkey.pem;"
           print "    error_log syslog:server=<Адрес сервера SIEM>:<Порт сервера SIEM>,facility=local6,tag=siemnginxerrlog info;"
           print "    access_log syslog:server=<Адрес сервера SIEM>:<Порт сервера SIEM>,facility=local6,tag=siemnginxacclog,severity=info combined;"
           in_server = 0
       }
       { print }
       ' /etc/nginx/nginx.conf > /etc/nginx/nginx.conf.tmp
       mv /etc/nginx/nginx.conf.tmp /etc/nginx/nginx.conf
    Ответ написан
    Комментировать
  • OWA для Exchange и сайт на одном ip-адресе?

    siferdj
    @siferdj
    Люблю учиться
    Ответ от DeepSpeek:
    Да, можно настроить доступ к обоим сервисам (Bitrix и OWA) через один статический IP-адрес, даже если они находятся на разных виртуальных машинах. Для этого можно использовать Nginx в качестве обратного прокси-сервера. Nginx будет перенаправлять запросы на соответствующие серверы в зависимости от доменного имени, указанного в запросе.

    Вот как это можно сделать:

    1. Установка и настройка Nginx
    Установите Nginx на отдельную виртуальную машину или на одну из существующих (например, на ту, где установлен Bitrix). Nginx будет работать как прокси-сервер, который будет перенаправлять запросы на нужный сервер.

    2. Настройка DNS
    Настройте DNS-записи для ваших доменов:
    - `crm.domain1.com` — должен указывать на ваш статический IP-адрес.
    - `mail.domain1.com` — должен указывать на тот же статический IP-адрес.

    3. Конфигурация Nginx
    Создайте конфигурационный файл для Nginx, который будет перенаправлять запросы на соответствующие серверы.

    Пример конфигурации:


    server {
    listen 80;
    server_name crm.domain1.com;

    location / {
    proxy_pass http://IP_адрес_виртуальной_машины_с_Bitrix;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    }
    }

    server {
    listen 80;
    server_name mail.domain1.com;

    location / {
    proxy_pass http://IP_адрес_виртуальной_машины_с_Exchange;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    }
    }


    Замените IP_адрес_виртуальной_машины_с_Bitrix и IP_адрес_виртуальной_машины_с_Exchange на реальные IP-адреса ваших виртуальных машин.

    4. Настройка SSL (опционально, но рекомендуется)
    Если вы хотите использовать HTTPS, вам нужно будет настроить SSL-сертификаты для обоих доменов. Вы можете использовать Let's Encrypt для получения бесплатных сертификатов.

    Пример настройки SSL:


    server {
    listen 443 ssl;
    server_name crm.domain1.com;

    ssl_certificate /etc/nginx/ssl/crm.domain1.com.crt;
    ssl_certificate_key /etc/nginx/ssl/crm.domain1.com.key;

    location / {
    proxy_pass http://;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    }
    }

    server {
    listen 443 ssl;
    server_name mail.domain1.com;

    ssl_certificate /etc/nginx/ssl/mail.domain1.com.crt;
    ssl_certificate_key /etc/nginx/ssl/mail.domain1.com.key;

    location / {
    proxy_pass http://;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    }
    }

    5. Перезапуск Nginx
    После настройки конфигурации перезапустите Nginx:

    sudo systemctl restart nginx


    6. Проверка
    Теперь, если вы откроете в браузере `crm.domain1.com`, вы должны увидеть ваш Bitrix, а если откроете `mail.domain1.com`, вы попадете на OWA.

    Важные моменты:
    - Убедитесь, что порты 80 и 443 открыты на вашем статическом IP-адресе.
    - Если вы используете брандмауэр, убедитесь, что он разрешает трафик на эти порты.
    - Если у вас уже есть веб-сервер на одной из виртуальных машин, убедитесь, что он не конфликтует с Nginx.

    Таким образом, Nginx будет выступать в роли прокси-сервера, который будет перенаправлять запросы на соответствующие серверы в зависимости от доменного имени.
    Ответ написан
    Комментировать
  • Почему nginx скачивает html вместо открытия?

    siferdj
    @siferdj
    Люблю учиться
    Попробуй убрать Content-Type для HTML. Он корректно работает не для всех кодов ответов.
    Ответ написан
    Комментировать
  • Как настроить nginx для быстрой работы?

    siferdj
    @siferdj
    Люблю учиться
    Можно попробовать локализовать проблему для дальнейшей диагностики. Можно сначала попробовать отрывать только Nginx и OpenServer статичную страницу HTML. Потом, сделать то же самое, но передавая на PHP-FPM, но без запроса к БД. А потом с запросом. Тем самым можно будет понять, на каком из этапов возникает задержка и уже предметно решать её.
    Ответ написан
    Комментировать
  • Почему дропается база данных?

    siferdj
    @siferdj
    Люблю учиться
    Привет. Предположу, что у тебя не указан путь до хостового volume и он может меняться. Т.е. возможно база лежит на диске, но уже на не используемом старом месте.
    Ответ написан
  • Есть ли в природе подходящая ticket система?

    siferdj
    @siferdj
    Люблю учиться
    Ответ написан
    Комментировать
  • Как одновременно управлять несколькими Mikrotik`ами?

    siferdj
    @siferdj Автор вопроса
    Люблю учиться
    В общем решение я нашел. Как по мне, так оно идеально со всех сторон. Начну сначала.
    • База данных
    • Веб сервер
    • Дополнительные библиотеки

    А теперь подробнее.

    База данных
    Поднял MySQL сервер. Внес все необходимые данные. Всё надежно, быстро и доступно.

    Веб сервер
    Тут всё тривиально как и с остальными пунктами.

    Дополнительные библиотеки
    php*-snmp, php*-ssh2

    Началось всё с того, что необходимо было управлять большим количеством роутеров, а также следить за их "самочувствием" и многими другими параметрами.

    Не получив подходящего и правильного решения по удаленному администрированию роутеров, я занялся изучением zabbix. Настроив, я начал вникать в тонкости мониторинга. Это, я Вам скажу тот еще подарок. Попытался извратиться при помощи этого продукта и хотел добиться того злополучного удаленного управления. Получилось, но с костылями.

    А теперь вся соль.
    Заполнил данные в базу. Ну, как заполнил. Парсингом на php перенес всё необходимое. После чего пару дней мучений и что мы получаем по итогу?
    • Удаленное администрирование каждый или всеми разу роутерами
    • Мониторинг. Строго функциональный.
    • Email, sms, jabber оповещения. (был старенький gsm шлюз)

    По сути, мы имеем тот-же zabbix, только ко всему узко специализированный. Как я понял, использовал 2% от всех возможностей самого zabbix. Он сильно нагружает как базу данных и как следствие систему.

    В общем вся эта эпопея с микротиками обошлась мне до 100 строк кода на php. Получен необходимый функционал. Удаленное управление по регионам, по моделям, по штукам. Мониторинг всего что необходимо. Оповещения. Плюс всё лежит в базе данных. Можно использовать для любых задач в дальнейшем.
    Веб интерфейс который подходит только Вам. Как нарисуете, таким и будет. Сбор информации только тот, который нужен. Удаленное управление только то, что Вам необходимо.
    Итог:
    Учите php и html+css. Если хотите интерактивности, то можно еще javascript выучить. Задача кажется не простой, но по факту тривиальна. К примеру, для того, чтобы управлять всеми роутерами необходима информация для входа и 10 строк кода. Обновить, сделать резервное копирование, поменять пароль на wi-fi, удалить, дописать. Всё что душе угодно. Все надежно и быстро. 1 минута на обновление всех 80 штук. Как Вам? Вот и думайте)))
    Ответ написан
    1 комментарий
  • Где можно скачивать макеты PSD?

    siferdj
    @siferdj
    Люблю учиться
    Ответ написан
    Комментировать
  • Есть ли такие ресурсы на которых разбирают базовые проблемы вёрстки?

    siferdj
    @siferdj
    Люблю учиться
    Практика закаляет. В теории можно запутаться и если ей не заниматься, то через некоторое время забудется. Создай полноценный сайт, по ходу дела, ты будешь сталкиваться с трудностями и решать их по мере необходимости. От всего не застрахуешься. Есть ряд критериев, которые надо учитывать при верстке, но если ты прошел htmlacademy и им подобные курсы, то с семантикой как минимум ты должен быть знаком. Самое верное решение - фриланс. Сделай небольшой проект бесплатно, но предупреди заказчика о своей цели. В конечном итоге вы оба в выигрыше останетесь. Удачи!
    Ответ написан
    1 комментарий