Беда с внешним доступом

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

xxxShahxxx
Сообщения: 115
Зарегистрирован: Вт дек 06, 2016 2:22 pm
Откуда: Екатеринбург
Благодарил (а): 25 раз
Поблагодарили: 2 раза
Контактная информация:

Беда с внешним доступом

Сообщение xxxShahxxx » Вт мар 20, 2018 11:12 pm

Доброго времени суток, уважаемые.

Предыстория: Давненько, с года 2016-2017 ничего не менял уже в Majordomo, особо не заморачивался и стояло все на абсолютно других компах, роутер тоже слабенький был. Теперь же полностью обновил парк техники дома, установил с ноля majordomo, вспомнил, как делал все, но малость впал в ступор. А именно, не смог настроить внешний доступ к Умному дому.

Порядок действий, значится такой:
1) Установил majordomo, наставил плагинов и настроил их, сделал все под себя снова на localhost'е
2) Раскомментил в config.php строчки с авторизаций по логину и паролю
3) Пробросил порты на роутере(D-link DIR-825 AC/G1A)

Теперь при входе с телефона по адресу "192.168.0.ип компа с MDM" в домашней сети, либо по внешнему ip "88.*.*.*" выдает
СпойлерПоказать
Eror response

Eror code 403.

Message: Not Serving Client 192.168.0.(ip телефона)

Eror code explanation: 403 = Request forbidden -- authorization will not help.
Это что зверь такой? Где чего не сделал, не правильно сделал?

Вот что в config.php
СпойлерПоказать

Код: Выделить всё

<?php
/**
* Project Config
*
* @package MajorDoMo
* @author Serge Dzheigalo <jey@tut.by> http://smartliving.ru/
* 

@version 1.1
*/

Define('DB_HOST', '127.0.0.1');
Define('DB_NAME', 'db_terminal');
Define('DB_USER', 'root');
Define

('DB_PASSWORD', '');

Define('DIR_TEMPLATES', "./templates/");
Define('DIR_MODULES', "./modules/");
Define

('DEBUG_MODE', 1);
Define('UPDATES_REPOSITORY_NAME', 'smarthome');

Define('PROJECT_TITLE', 'MajordomoSL');
Define

('PROJECT_BUGTRACK', "bugtrack@smartliving.ru");

date_default_timezone_set('UTC');

if (isset($_ENV["COMPUTERNAME"]) 

&& $_ENV["COMPUTERNAME"])
{
   Define('COMPUTER_NAME', strtolower($_ENV["COMPUTERNAME"])); 
} 
else 
{
   // Your 

computer name (optional)
   Define('COMPUTER_NAME', 'mycomp');                       
}

 Define('DOC_ROOT', dirname

(__FILE__));              // Your htdocs location (should be detected automatically)

 Define('SERVER_ROOT', 

'c:/_majordomo');
 Define('PATH_TO_PHP', SERVER_ROOT.'/server/php/php.exe');
 Define('PATH_TO_MYSQLDUMP', 

SERVER_ROOT."/server/mysql/bin/mysqldump");

 
if (isset($_ENV["S2G_BASE_URL"]) && $_ENV["S2G_BASE_URL"])
{
   Define

('BASE_URL', $_ENV["S2G_BASE_URL"]);
}
else 
{
   // Your base URL:port (!!!)
   Define('BASE_URL', 

'http://127.0.0.1:80');              
}


Define('ROOT', DOC_ROOT."/");
Define('ROOTHTML', "/");
Define('PROJECT_DOMAIN', 

$_SERVER['SERVER_NAME']);

// 1-wire OWFS server
//Define('ONEWIRE_SERVER', 'tcp://localhost:8234');    



Define('HOME_NETWORK', '192.168.0.*');                  // home network (optional)
   
Define('EXT_ACCESS_USERNAME', 'мой логин');                  // access details for external network (internet)
   
Define('EXT_ACCESS_PASSWORD', 'мой пароль');

/// (Optional)


//Define('DROPBOX_SHOPPING_LIST', 'c:/data/dropbox/list.txt');  

 $restart_threads=array(
                       

'cycle_execs.php', 
                       'cycle_main.php', 
                       'cycle_ping.php', 
               

        'cycle_scheduler.php', 
                       'cycle_states.php', 
                       

'cycle_webvars.php');

 //Define('USE_PROXY', '127.0.0.1:8888');               //PROXY SERVER DETAILS (optional)
 

//Define('USE_PROXY_AUTH', 'user:password');           //PROXY SERVER AUTH (optional)

 //Define

('HISTORY_NO_OPTIMIZE', 1);


Define('MASTER_UPDATE_URL', 

'https://github.com/sergejey/majordomo/archive/alpha.tar.gz'); // master update URL 

(https://github.com/sergejey/majordomo/archive/alpha.tar.gz)

//Define('WAIT_FOR_MAIN_CYCLE', 1);
//Define

('TRACK_DATA_CHANGES', 1);                                   // TRACK EVENTS
//Define('TRACK_DATA_CHANGES_IGNORE', 

'cycle_, clockchime, uptime, WSClientsTotal'); // IGNORE

Define('GETURL_WARNING_TIMEOUT',5);                   // 

TIMEOUT LIMIT FOR getURL function warning

//Define('SEPARATE_HISTORY_STORAGE',1);                 // STORE HISTORY 

DATA IN DIFFERENT TABLES
//Define('LOG_DIRECTORY', 'c:/temp');                 // PATH TO STORE LOGS
Define

('PATH_TO_FFMPEG','avconv');
//Define('DISABLE_PANEL_ACCELERATION', 1);
//Define('VERBOSE_LOG',1); // STORE SYSTEM 

ACTIVITY IN VERBOSE LOG
//Define('VERBOSE_LOG_IGNORE','.checkstate, ThisComputer.uptime'); // IGNORE SOME DATA
//Define('DISABLE_SIMPLE_DEVICES',1); // disables simple devices behavior
define('WEBSOCKETS_PORT',8001);
Вот проброс портов на роутере.
СпойлерПоказать
Majordomo 1.jpg
Majordomo 1.jpg (235.07 КБ) 6662 просмотра
Majordomo 2.jpg
Majordomo 2.jpg (236.55 КБ) 6662 просмотра
Помогайте. Забыл уже многие моменты. Еще забыл, как(точнее где) отключается запуск IE, а не браузера по умолчанию.
За это сообщение автора xxxShahxxx поблагодарил:
tarasfrompir (Пт июл 13, 2018 5:14 pm)
Рейтинг: 1.16%
olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 85 раз
Поблагодарили: 342 раза

Re: Беда с внешним доступом

Сообщение olehs » Ср мар 21, 2018 1:50 am

xxxShahxxx писал(а): Это что зверь такой? Где чего не сделал, не правильно сделал?
Похоже, это Plex отвечает.
xxxShahxxx писал(а):Помогайте. Забыл уже многие моменты. Еще забыл, как(точнее где) отключается запуск IE, а не браузера по умолчанию.
отключается запуск браузера в pms_config.ini

Код: Выделить всё

BrowserType=NONE
xxxShahxxx
Сообщения: 115
Зарегистрирован: Вт дек 06, 2016 2:22 pm
Откуда: Екатеринбург
Благодарил (а): 25 раз
Поблагодарили: 2 раза
Контактная информация:

Re: Беда с внешним доступом

Сообщение xxxShahxxx » Ср мар 21, 2018 7:26 am

Хз, Plex на другом порте болтается в проброске портов на роутере. там 34000 и 34001 порты.
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Беда с внешним доступом

Сообщение nick7zmail » Ср мар 21, 2018 7:45 am

https://github.com/iBaa/PlexConnect/issues/436
Вот что гугл говорит...там рекомендуют плекс перествить.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
xxxShahxxx
Сообщения: 115
Зарегистрирован: Вт дек 06, 2016 2:22 pm
Откуда: Екатеринбург
Благодарил (а): 25 раз
Поблагодарили: 2 раза
Контактная информация:

Re: Беда с внешним доступом

Сообщение xxxShahxxx » Ср мар 21, 2018 8:03 am

Это для Nas'a. У меня же не нас. И, я так понимаю, там больше предлагают перекинуть Plex на другие порты. Типа методом проб и ошибок пробросить порты для Plex и Majordomo для совместной работы на одном ip адресе.
Если учитывать, что Plex в локалке висит по адресу http://127.0.0.1:32400/web/index.html (он же localhost) и MDM висит по адресу http://127.0.0.1, только порт проброшен 80, то да, надо что-то куда-то переставлять.

Никит, у тебя же стоит Plex и, как понимаю так же Plex и MDM на одной железке. Как делал?
Аватара пользователя
slgeo
Сообщения: 551
Зарегистрирован: Чт фев 05, 2015 2:35 pm
Откуда: РнД
Благодарил (а): 139 раз
Поблагодарили: 74 раза

Re: Беда с внешним доступом

Сообщение slgeo » Ср мар 21, 2018 8:32 am

xxxShahxxx писал(а): Помогайте.
Да, мой господин! ©
Raspberry Pi2 Model B + NRF24L01 (MySensors) + 1-Wire + Esp8266 (WiFi-IoT)
CONNECT
Аватара пользователя
Sapizdullin
Сообщения: 408
Зарегистрирован: Сб фев 18, 2017 9:47 am
Откуда: Земля
Благодарил (а): 54 раза
Поблагодарили: 61 раз

Re: Беда с внешним доступом

Сообщение Sapizdullin » Ср мар 21, 2018 9:45 am

ИМХО китайцы наворотили хрени в своих D-ink`ах. Зачем Вы пользуетесь непонятной хренью под названием "Виртуальный сервер"? Там что нет простой опции "forward ports"? Или "Трансляция сетевых адресов (NAT)"? В роутере?
Intel(R) Core(TM) i7-6700, Debian 9 "Stretch", Zoneminder, Avreg.
Аватара пользователя
Sapizdullin
Сообщения: 408
Зарегистрирован: Сб фев 18, 2017 9:47 am
Откуда: Земля
Благодарил (а): 54 раза
Поблагодарили: 61 раз

Re: Беда с внешним доступом

Сообщение Sapizdullin » Ср мар 21, 2018 9:49 am

xxxShahxxx писал(а):Это для Nas'a. У меня же не нас. И, я так понимаю, там больше предлагают перекинуть Plex на другие порты. Типа методом проб и ошибок пробросить порты для Plex и Majordomo для совместной работы на одном ip адресе.
Если учитывать, что Plex в локалке висит по адресу http://127.0.0.1:32400/web/index.html (он же localhost) и MDM висит по адресу http://127.0.0.1, только порт проброшен 80, то да, надо что-то куда-то переставлять.

Никит, у тебя же стоит Plex и, как понимаю так же Plex и MDM на одной железке. Как делал?
не могут железяки висеть на 127 адресе. Это loopback адрес. Вам нужно тупо входящий 80 отправить на железяку с МДМ на 80 порт. Все. Без всяких ухищрений. Попробуйте внешний указать другой. Например 8080. На внутренний 80. И вообще не рекомендую открывать стандартные порты наружу. Апачи ломают роботы. И ходят по известным портам. Откройте например 6380 внешний.
Intel(R) Core(TM) i7-6700, Debian 9 "Stretch", Zoneminder, Avreg.
xxxShahxxx
Сообщения: 115
Зарегистрирован: Вт дек 06, 2016 2:22 pm
Откуда: Екатеринбург
Благодарил (а): 25 раз
Поблагодарили: 2 раза
Контактная информация:

Re: Беда с внешним доступом

Сообщение xxxShahxxx » Ср мар 21, 2018 10:47 am

Ну блин... Нафиг дома то мне Cisco или Mikrotik? Есть в наличии они, но смысла в их установке дома не вижу. И нет, в этих роутерах именно через вирутальные серверы пробрасывается все. NAT то есть, но заморочки свои тоже присутствуют.

И, если так вам будет понятнее, то ip дома и Plex одинаковы http://192.168.0.*:32400/web/index.html (он же localhost), MDM висит по адресу http://192.168.0.*:80
olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 85 раз
Поблагодарили: 342 раза

Re: Беда с внешним доступом

Сообщение olehs » Ср мар 21, 2018 11:38 am

Все у вас правильно настроено. Попробуйте остановить Plex, перезапустить MDM и проверить.

P.S.
netstat -a -b
покажет, кто за какой порт зацепился
Ответить