Перейти до

Переадресация из NAS


Рекомендованные сообщения

 

идимо необходимо прописать проброс портов в firewall.conf из локалки на адрес 172.244.127.97

 

не думаю что енто понадобится   

 

Я думал "все пригодиться"

Ссылка на сообщение
Поделиться на других сайтах

 

как вы это представляете ... ???  

и может вас заинтересует такая штука как UHW ... клевая штука ...)) ... облегчает работу админа 

 

Частично поюзал, хорошая вещь 

Ссылка на сообщение
Поделиться на других сайтах

 

вот очень понятная статья

Мудрено, только вот папки apache на NAS нету, есть  /usr/local/etc/nginx/nginx.conf такой файл сканает?)

 

я у вас уже ГУГЛОМ подрабатываю

Ссылка на сообщение
Поделиться на других сайтах

смысл такой что когда народ обращается на НАС пройти в  личный кабинет типа переадресовывает на убилл а так как на насе есть инет .... если конечно его не отключили за неуплату .... то народ увидет свой любимый кабинет даже когда у них нет инета .... ))

Ссылка на сообщение
Поделиться на других сайтах
Спасибо!

Почитал, переписал nginx.conf, после чего перенаправляет с 172.16.2.1 в К/П увы только при положительном балансе, при отрицательном ничего не загружает. 

 

worker_processes  1;

 

 

events {

    worker_connections  1024;

}

 

 

http {

 

 

    server{

    listen 80;

    server_name example.com;

 

    access_log /home/path_to_site/access.log;

    error_log /home/path_to_site/error.log;

 

    location / {

        proxy_pass http://172.244.127.97:80;

        proxy_set_header Host $host;

        proxy_set_header X-Real-IP $remote_addr;

        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    }

}

 

}
Ссылка на сообщение
Поделиться на других сайтах

 

Спасибо!
Почитал, переписал nginx.conf, после чего перенаправляет с 172.16.2.1 в К/П увы только при положительном балансе, при отрицательном ничего не загружает. 
 
worker_processes  1;
 
 
events {
    worker_connections  1024;
}
 
 
http {
 
 
    server{
    listen 80;
    server_name example.com;
 
    access_log /home/path_to_site/access.log;
    error_log /home/path_to_site/error.log;
 
    location / {
        proxy_pass http://172.244.127.97:80;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
 
}

 

ну и что он слушает ... с чем сравнивает .... и куда отправляет ...))  ??? 

Ссылка на сообщение
Поделиться на других сайтах

Всім привіт, тоже боровся з цією проблемою, вирішив її так:

 

(в мене кабінет резолвиться по доменному імені - аля user.isp.com, який вказує на іп білінга)

 

1). в фаєрі на насі роблю редірект на 127.0.0.1:80 / 443 де слухає нжинкс, тобто фаєр завертає все до себе, якшо юзер з насу хоче зайти на прорезолвену ір білінга:

 

${FwCMD} table 17 add іп-адрес-білінга_де ровернутий-кабінет-юзера/32

${FwCMD} add 160 fwd 127.0.0.1,80 ip from table\(2\) to table\(17\) dst-port 80 via vlan*
${FwCMD} add 160 fwd 127.0.0.1,443 ip from table\(2\) to table\(17\) dst-port 443 via vlan*
 
2). Нжинкс на насіф все прокидує (проксує) на внутрішню ір білінга
 
http {
 
    ssl_session_cache   shared:SSL:10m;
    ssl_session_timeout 10m;
 
    server {
 
    listen  80;
    listen 443 ssl;
    server_name localhost;
    client_max_body_size 16m;
 
    # Enable SSL
    ssl_certificate /CA/webserver.crt;
    ssl_certificate_key /CA/webserver.key;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
    ssl_prefer_server_ciphers on;
 
    location / {
 
        add_header 'Access-Control-Allow-Methods' 'GET,POST,DELETE,OPTIONS';
        add_header 'Access-Control-Allow-Credentials' 'true';
        add_header 'Access-Control-Allow-Origin' "$http_origin";
        add_header 'Access-Control-Allow-Headers' 'WD-Since,WD-Start,WD-Direction,WD-Length,WD-Ids,Content-Type,WD-Client-Id';
        add_header 'Access-Control-Expose-Headers' 'WD-Total-Length,WD-Phone-Modal,WD-Client-Id,WD-Udid,WD-Need-More';
 
        proxy_pass http://100.100.100.10:80/;
 
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 
#        root /usr/local/www/data/;
#        index  index.html index.htm;
        }
 
      }
    }
 

3). Так як в мене авторизація в кабінеті без паролю а по ip, то ще в авторизаційному скрипті кабінета підправив трохи код, і  :( постоянно після обнови потрібно його знову змінювати, - бажано би шоб ці зміни включили в оф. версію:

 

vi /usr/local/www/apache24/data/billing/userstats/modules/engine/api.userstats.php 
ф-цію  zbs_UserDetectIp привести до такого вигляду
 
function zbs_UserDetectIp($debug = false) {
    $glob_conf = zbs_LoadConfig();
    $ip = '';
 
    //default auth method
    if ($glob_conf['auth'] == 'ip') {
        if (!empty($_SERVER['HTTP_CLIENT_IP']))
        {
                $ip=$_SERVER['HTTP_CLIENT_IP'];
        }
        elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
        {
                $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
        }
        else
        {
                $ip=$_SERVER['REMOTE_ADDR'];
        }
    }
    //password based auth
    if ($glob_conf['auth'] == 'login') {
        if ((isset($_COOKIE['ulogin'])) AND ( isset($_COOKIE['upassword']))) {
            $ulogin = trim(vf($_COOKIE['ulogin']));
            $upassword = trim(vf($_COOKIE['upassword']));
            $ip = zbs_UserCheckLoginAuth($ulogin, $upassword);
        }
    }
    if ($debug) {
         //$ip='172.30.0.2';
    }
 
    return($ip);
}
 
P.S таким чином в мене все наразі працює без проблем, також при цій схемі в мене проходить редірект боржників , заморозків, на відповідні сторінки (субдомени), які розвернуті на білінгу, а дефолтний скрипт на білінгу вирішує кого куда перенаправити
Відредаговано chinhis
Ссылка на сообщение
Поделиться на других сайтах

 

Всім привіт, тоже боровся з цією проблемою, вирішив її так:

 

(в мене кабінет резолвиться по доменному імені - аля user.isp.com, який вказує на іп білінга)

 

1). в фаєрі на насі роблю редірект на 127.0.0.1:80 / 443 де слухає нжинкс, тобто фаєр завертає все до себе, якшо юзер з насу хоче зайти на прорезолвену ір білінга:

 

${FwCMD} table 17 add іп-адрес-білінга_де ровернутий-кабінет-юзера/32

${FwCMD} add 160 fwd 127.0.0.1,80 ip from table\(2\) to table\(17\) dst-port 80 via vlan*
${FwCMD} add 160 fwd 127.0.0.1,443 ip from table\(2\) to table\(17\) dst-port 443 via vlan*
 
2). Нжинкс на насіф все прокидує (проксує) на внутрішню ір білінга
 
http {
 
    ssl_session_cache   shared:SSL:10m;
    ssl_session_timeout 10m;
 
    server {
 
    listen  80;
    listen 443 ssl;
    server_name localhost;
    client_max_body_size 16m;
 
    # Enable SSL
    ssl_certificate /CA/webserver.crt;
    ssl_certificate_key /CA/webserver.key;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
    ssl_prefer_server_ciphers on;
 
    location / {
 
        add_header 'Access-Control-Allow-Methods' 'GET,POST,DELETE,OPTIONS';
        add_header 'Access-Control-Allow-Credentials' 'true';
        add_header 'Access-Control-Allow-Origin' "$http_origin";
        add_header 'Access-Control-Allow-Headers' 'WD-Since,WD-Start,WD-Direction,WD-Length,WD-Ids,Content-Type,WD-Client-Id';
        add_header 'Access-Control-Expose-Headers' 'WD-Total-Length,WD-Phone-Modal,WD-Client-Id,WD-Udid,WD-Need-More';
 
        proxy_pass http://100.100.100.10:80/;
 
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 
#        root /usr/local/www/data/;
#        index  index.html index.htm;
        }
 
      }
    }
 

3). Так як в мене авторизація в кабінеті без паролю а по ip, то ще в авторизаційному скрипті кабінета підправив трохи код, і  :( постоянно після обнови потрібно його знову змінювати, - бажано би шоб ці зміни включили в оф. версію:

 

vi /usr/local/www/apache24/data/billing/userstats/modules/engine/api.userstats.php 
ф-цію  zbs_UserDetectIp привести до такого вигляду
 
function zbs_UserDetectIp($debug = false) {
    $glob_conf = zbs_LoadConfig();
    $ip = '';
 
    //default auth method
    if ($glob_conf['auth'] == 'ip') {
        if (!empty($_SERVER['HTTP_CLIENT_IP']))
        {
                $ip=$_SERVER['HTTP_CLIENT_IP'];
        }
        elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
        {
                $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
        }
        else
        {
                $ip=$_SERVER['REMOTE_ADDR'];
        }
    }
    //password based auth
    if ($glob_conf['auth'] == 'login') {
        if ((isset($_COOKIE['ulogin'])) AND ( isset($_COOKIE['upassword']))) {
            $ulogin = trim(vf($_COOKIE['ulogin']));
            $upassword = trim(vf($_COOKIE['upassword']));
            $ip = zbs_UserCheckLoginAuth($ulogin, $upassword);
        }
    }
    if ($debug) {
         //$ip='172.30.0.2';
    }
 
    return($ip);
}
 
P.S таким чином в мене все наразі працює без проблем, також при цій схемі в мене проходить редірект боржників , заморозків, на відповідні сторінки (субдомени), які розвернуті на білінгу, а дефолтний скрипт на білінгу вирішує кого куда перенаправити

 

Спасибо! Заворот работает как нужно, очень помогли. Так же редактировал api.userstats.php сделал как у вас по ip, пишет Unknown user EX_EMPTY_AUTHFAILREDIR так что вернул обратно.  Не совсем понимаю как оно должно работать, то есть как Ubilling идентифицирует ip абона в другой сети для доступа в К/П. 

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

  • Схожий контент

    • Від ppv
      Проглянув FAQ і Ubilling Wiki. Зацікавило питання чи є в Ubilling якась реалізація reCAPTCHA, чи потрібно додавати руцями, (для прикладу для форми подачі заявок чи для кабінету користувача)?
       
    • Від sanyadnepr
      Приветствую всех.
      Подскажите пожалуйста где копнуть и нет ли проблемы со стороны протокола взаимодействия сити24 или возможно не учтена необходимая проверка в модуле сити24 в Ubilling, пока писал понял что похоже в проверке payID, но это не точно.  
      Недавно обнаружилось с сити24 начали прилетать дубликаты платежей, в целом платежей мало, два одинаковых запроса Pay с одинаковым transactionID и payID в одну секунду одному платежному ID при этом биллинг "думает" примерно чуть больше минуты и отвечает одним ответом <result>0</result>, сити24 утверждает что ответ они не получили и по протоколу дальше повторяет запросы дублем, биллинг ответ и так по кругу, сити24 спрашивает каким образом с одинаковым payID от сити24 билл продолжает обрабатывать запросы и пополнять абоненту счет раз в 5 минут примерно, на одну и туже сумму, ведь этот payID уже был обработан предполагают сити24 согласно протоколу.
      Конечно есть вопрос к сити24 зачем они дублем присылают два запроса, но они отвечают что эта ситуация учтена в протоколе и проблема на стороне биллинга, потому что он пополняет счет по уже обработанному одинаковому payID.
      При этом transactionID в дублях одинаковый, но с каждым новым дублем разный.
      Если зафаерволить запросы от сити24, но оставить возможность отвечать то после блокировки билл отправляет 2-3 минуты 6 ответов <account>0001</account>  <result>0</result>.
      После снятия блокировки, дубли и платежи нескольких проблемных абонентов прилетают так же по кругу, при этом и с некоторыми новыми пополнениями происходит аналогичная ситуация.
      В openpayz в платежах transactionID и не видно payID.
    • Від nightfly
      Ubilling 1.4.3 rev 9058 The Bladewood Grove
       
      Зміни в структурі БД. alter.ini: нові опції OPHANIMFLOW_ENABLED та OPHANIMFLOW_URLS котрі вмикають та керують інтеграцією з OphanimFlow. alter:ini: нова опція PHOTOSTORAGE_POSTPROCESSING, що вмикає післяобробку зображень при завантаженні в Сховище зображень. alter:ini: нова опція PHOTOSTORAGE_WATERMARK, що вмикає розміщення вотермарки на всіх зображеннях, що завантажуються. alter:ini: нова опція PHOTOSTORAGE_RECOMPRESS, що вмикає зміну компрессії завантажених зображень. alter:ini: нова опція PHOTOSTORAGE_AUTORESIZE, що вмикає автоматичне та лагідне масштабування зображень конячих розмірів. alter:ini: нова опція PHOTOSTORAGE_DRAWIMGINFO, що вмикає вдруковування в зображення відлагоджувальної інформації. alter.ini: нова опція ONDEMAND_CHARTS, що вмикає відкладене завантаження графіків завантаження користувацької смуги. userstats.ini: нова опція OPHANIM_ENABLED, що вмикає інтеграцію OphanimFlow в кабінеті користувача. Модуль Заздрість: тепер авторизаційні дані пристроїв, не відображаються в списку пристроїв. Модуль “Заздрість”: при створенні та редагуванні пристроїв, для полів “пароль” та “enable пароль” тепер використовуються інпути паролів. Модуль “Заздрість”: заздрісним пристроям додано нове поле “Порт”. Тепер в скриптах можна використовувати, відповідний макрос {PORT}. Модуль “Статистика трафіку користувача”: проведено радикальний рефакторинг. Модуль “Статистика трафіку користувача”: додано опційну можливість, відображення трафіку отриманого з OphanimFlow. Модуль “Статистика трафіку користувача”: виправлено проблему невірного відображення залишку коштів на кінець місяця, при використанні Ішимури. Модуль “Статистика трафіку користувача”: додано можливість відображення графіків за останню годину з OphanimFlow. Модуль “Користувачі”: додано опційну можливість, відображення трафіку отриманого з OphanimFlow. Модуль “Сховище зображень”: тепер додатково перевіряє завантажувані зображення на тему їх валідності. Модуль “Фінансові операції”: виправлено відображення суми платежів користувача. Remote API: новий виклик ophanimtraff, який просто бере і синхронізує локальну БД з віддаленими джерелами OphanimFlow. Remote API: виклик userbynum тепер також опційно містить поле з “Платіжним ID” користувача. Глобально: у всіх полях вводу паролів, окрім форми входу, тепер відображається елемент керування “показати/приховати” пароль. Кабінет користувача: в модулі “Трафік” додано опційну можливість, відображення трафіку отриманого з OphanimFlow. Кабінет користувача: в модулі “Трафік” виправлено проблему невірного відображення залишку коштів на кінець місяця, при використанні Ішимури. Кабінет користувача: в модулі “Відеоспостереження” для NVR WolfRecorder замінено розділювач попередньо заповнених даних авторизації. OpenPayz: додано frontend portmonemulti, для отримання платежів від різних контрагентів. Інформацію по контрагентам бере з біллінгу, також використовую розширену інформацію контрагента. Платіжна система в контрагенті мусить бути створена, як PORTMONE 1984tech: додано функціонал генерації RPZ для isc-bind, спасибі @misterromanbush  
      Повний чейнджлог
      Оновлена демка
       

    • Від mac
      Здається, після оновлення PHP 7.4 до PHP 8.2 feesharvester припинив працювати:
       
      /usr/local/bin/curl "http://127.0.0.1/billing/?module=remoteapi&key={SERIAL}&action=feesharvester" <br /> <b>Fatal error</b>: Uncaught TypeError: Unsupported operand types: string - string in {UBPATH}/billing/api/libs/api.fundsflow.php:570 Stack trace: #0 {UBPATH}/billing/modules/remoteapi/feesharvester.php(22): FundsFlow-&gt;harvestFees('2024-01') ...  
      Невеличке розслідування врешті з'ясувало, що це через наявність пробілу у деяких логінах абонентів. Як так сталося? Тому що інколи був неуважно додан трейлінг пробіл до номеру будинка і цей пробіл потрапив до логіну абоненту. Логін абоненту неможливо змінити ніяким чином штатними засобами. Я не розглядаю створення нового абонента для усунення помілки.

      Був обран такий шлях вирішення проблеми. Заміну функції php explode() знайшов у мережі. Мабуть це станеться в нагоді:

       
      diff api.fundsflow.php.bak api.fundsflow.php.new 559c559 < $eachfee = explode(' ', $eachline); --- > $eachfee = preg_split("~(?<!\\\\)(?:\\\\{2})*'[^'\\\\]*(?:\\\\.[^'\\\\]*)*'(*SKIP)(*F)|\s+~s" , $eachline);  
    • Від Zend
      Продам сабж.
      2 контроллера CA07336-C001, в каждом по одном интерфейсном модуле CA07336-C009 (2 x 1Gbps iSCSI)
      HDD: 24 x 900GB SAS 10K
      Исправен.
      С ним могу продать шкафчик того же вендора.
       
      Стоимость - $4000, торг
       

×
×
  • Створити нове...