xtrime-ru / TelegramApiServer

Fast, simple, async php telegram api server: MadelineProto + Amp HTTP Server
https://tg.i-c-a.su
MIT License
534 stars 120 forks source link

Error: connect ECONNREFUSED 45.82.**.214:9503 #61

Closed SidorkinAlex closed 3 years ago

SidorkinAlex commented 3 years ago

Привет, благодарю за крутую разработку, но у меня вопрос, если я к телеграмм серверу пытаюсь обратиться с другого сервера получаю такую ошибку. не можешь подсказать что я должен сделать что бы обращаться к нему с другой машины? IP_WHITELIST я оставил пустым SERVER_ADDRESS=0.0.0.0 curl http://45.82.**.214:9503/system/getSessionList возвращает ошибку, но если на сервере на котором развернут контейнер с телеграмм сервером выполить curl http://0.0.0.0:9503/system/getSessionList все работает штатно.

Как мне обратиться к Телеграм серверу со стороннего сервера ?

Hello, thank you for the cool development, but I have a question, if I try to access the telegram server from another server, I get this error. can you tell me what I should do to access it from another machine? I left IP_WHITELIST blank SERVER_ADDRESS = 0.0.0.0 curl http: //45.82.**.214: 9503 / system / getSessionList returns an error, but if curl http://0.0.0.0:9503/system/getSessionList is deployed on the server on which the container with telegrams is deployed, everything works normally.

How can I access the Telegram server from a third-party server?

xtrime-ru commented 3 years ago

Привет. Ошибка Error: connect ECONNREFUSED скорее всего возникает из-за firewall на твоем сервере. В случае если ты используешь какую либо панель управления хостингом, то нужно искать решение там и открыть порт 9503 для внешних подключений.

Либо можно попробовать докер версию. У docker свои правила для IP tables он работает в обход стандартных firewall.


You need to open 9503 port in your firewall. Or try docker version. Docker overwrite firewall rules for itself.

SidorkinAlex commented 3 years ago

привет, проблема была в том, что в docker-compose есть строчка :

ports:
      - "127.0.0.1:9503:9503"

при таком указании ip и Порта мы ограничиваем доступность сети контейнера только хост машиной, если поменять на

ports:
      - "9503:9503"

то все будет работать. Понимаю , что проблема в моем не очень хорошем знании докеркомпоза, но круто было бы если бы это было добавлено в документацию

Hey! the problem was in the line of the docker compose file

ports:
      - "127.0.0.1:9503:9503"

if you change it to

ports:
      - "9503:9503"

the service will be available from other servers, not only from the host machine

xtrime-ru commented 3 years ago

@SidorkinAlex Спасибо за инфу. Как то из головы вылетел этот момент. Сделал 127.0.0.1 для безопасности, что бы по умолчанию докер не светил открытым портом наружу. Сейчас добавлю в документацию.

Еще раз обращаю внимание, что в случае если указан пустой IP_WHITELIST и ports: - "9503:9503", то скорее всего любой пользователь интернета имеет полный доступ к авторизованному в madelineProto аккаунту, а так же может авторизовывать любые свои аккаунты. Для этого надо только подобрать ip, что легко делается автоматическими средствами. Все ip и популярные порты мониторятся.