forum.bitel.ru
http://forum.bitel.ru/

[6.1] Открытые сервлеты
http://forum.bitel.ru/viewtopic.php?f=22&t=9934
Страница 1 из 1

Автор:  Phricker [ 18 ноя 2014, 19:35 ]
Заголовок сообщения:  [6.1] Открытые сервлеты

По мотивам

Как можно глянуть какие сервлеты у биллинга есть?
Чтобы закрыть те, которые мог пропустить.

Автор:  stark [ 18 ноя 2014, 19:39 ]
Заголовок сообщения:  Re: [6.1] Открытые сервлеты

А нельзя закрыть все по дефолту и добавлять по мере необходимости ?

Автор:  Phricker [ 19 ноя 2014, 03:29 ]
Заголовок сообщения:  Re: [6.1] Открытые сервлеты

Это в смысле закрыть дать доступ к /bgbilling/webexecuter и закрыть доступ к / ?

Например вот так
Код:
location /bgbilling/webexecuter {
         proxy_pass http://127.0.0.1:8080;
         proxy_set_header        X-Real-Ip       $remote_addr;
         proxy_set_header        Host            $host;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
      location / {
         deny all;
      }

Но тут отваливается /bgbilling/style.css, /bgbilling/custom.css, /bgbilling/js/* и т.д.

Разбираться с каждым из них или давать доступ к /bgbilling?
Даем доступ к /bgbilling - открываем доступ к /bgbilling/mpsexecuter /bgblling/executer и т.д. и т.п.

Автор:  dimOn [ 19 ноя 2014, 11:28 ]
Заголовок сообщения:  Re: [6.1] Открытые сервлеты

при старте в INFO пишет все сервлеты которые вешает

Автор:  Phricker [ 19 ноя 2014, 12:07 ]
Заголовок сообщения:  Re: [6.1] Открытые сервлеты

Судя по всему не все.
Не вижу того же mpsexecuter, pubexecuter и webexecuter.
Так что не верю, что список полный
Код:
11-19/00:06:39  INFO [main] Server - Starting BGBillingServer..
11-19/00:06:39  INFO [main] Server - HTTP Connector: 127.0.0.1:8080
11-19/00:06:39  INFO [main] Server - Starting HTTP connector 127.0.0.1:8080...
11-19/00:06:39  INFO [main] Server - HTTPS Connector: null
11-19/00:06:40  INFO [main] Server - Browsing installed modules...
11-19/00:06:40  INFO [main] Server - card v. 6.1.200 / 08.09.2014 16:51:09
11-19/00:06:40  INFO [main] Server - dba v. 6.1.161 / 18.06.2014 14:18:37
11-19/00:06:40  INFO [main] Server - dialup v. 6.1.312 / 12.09.2014 16:44:17
11-19/00:06:40  INFO [main] Server - inet v. 6.1.622 / 05.11.2014 21:28:17
11-19/00:06:40  INFO [main] Server - ipn v. 6.1.229 / 03.10.2014 14:29:32
11-19/00:06:40  INFO [main] Server - mps v. 6.1.183 / 20.10.2014 12:59:47
11-19/00:06:40  INFO [main] Server - npay v. 6.1.179 / 07.11.2014 02:16:26
11-19/00:06:40  INFO [main] Server - phone v. 6.1.239 / 16.07.2014 18:23:39
11-19/00:06:40  INFO [main] Server - reports v. 6.1.192 / 02.11.2014 23:12:01
11-19/00:06:40  INFO [main] Server - trayinfo v. 6.1.162 / 23.10.2014 12:24:12
11-19/00:06:40  INFO [main] Server - voiceip v. 6.1.179 / 07.07.2014 13:57:50
11-19/00:06:40  INFO [main] Server - tv v. 6.1.191 / 30.10.2014 22:54:10
11-19/00:06:40  INFO [main] Server - bill v. 6.1.250 / 10.09.2014 16:16:54
11-19/00:06:40  INFO [main] Server - Creating installed modules map...
11-19/00:06:40  INFO [main] Setup - Load config for mid=13
11-19/00:06:40  INFO [main] CardActivateWorker - Starting CardActivateWorker
11-19/00:06:40  INFO [main] Server - Add servlet for modules...
11-19/00:06:40  INFO [main] Server - Add mapping: bitel.billing.server.card.DealerExecuter to /dealer
11-19/00:06:40  INFO [main] Server - Add mapping: bitel.billing.server.card.idealer.IDealerExecuter to /idealer
11-19/00:06:40  INFO [main] Server - Add mapping: bitel.billing.server.reports.ReportsExecuter to /reportsexecuter/*
11-19/00:06:40  INFO [main] Server - Add mapping: ru.bitel.bgbilling.modules.trayinfo.server.BalanceSender to /balance_sender
11-19/00:06:40  INFO [main] Server - Add mapping: ru.bitel.bgbilling.modules.tv.api.server.TvExecutor to /tv-ws/*
11-19/00:06:40  INFO [main] Server - Add mapping: bitel.billing.server.bill.PDFExecuter to /pdfexecuter
11-19/00:06:40  INFO [main] Server - Add custom servlet from setup...
11-19/00:06:40  INFO [main] Server - Custom.servlet.keys => []
11-19/00:06:40  INFO [main] Server - Add servlet for plugins...
11-19/00:06:40  INFO [main] Server - Add mapping: ru.bitel.bgbilling.plugins.crm.server.servlet.CRMAdminExecuter to /crm_admin/*
11-19/00:06:51  INFO [main] TariffOptionWorker - Starting TariffOptionWorker
11-19/00:07:00  INFO [main] AdminPortListener - Starting listen admin port 2005
11-19/00:07:02  INFO [main] Http11Protocol - Initializing ProtocolHandler ["http-bio-127.0.0.1-8080"]
11-19/00:07:02  INFO [main] StandardService - Starting service Tomcat
11-19/00:07:02  INFO [main] StandardEngine - Starting Servlet Engine: Apache Tomcat/7.0.34
11-19/00:07:02  INFO [localhost.localdomain-startStop-1] ContextConfig - No global web.xml found
11-19/00:07:11  INFO [localhost.localdomain-startStop-1] AbstractTilesApplicationContextFactory - Initializing Tiles2 application context. . .
11-19/00:07:11  INFO [localhost.localdomain-startStop-1] AbstractTilesApplicationContextFactory - Finished initializing Tiles2 application context.
11-19/00:07:11  INFO [localhost.localdomain-startStop-1] TilesContainerFactory - Initializing Tiles2 container. . .
11-19/00:07:12  INFO [localhost.localdomain-startStop-1] TilesContainerFactory - Tiles2 container initialized
11-19/00:07:12  INFO [localhost.localdomain-startStop-1] TilesAccess - Publishing TilesContext for context: org.apache.tiles.servlet.context.ServletTilesApplicationContext

Автор:  dimOn [ 19 ноя 2014, 12:41 ]
Заголовок сообщения:  Re: [6.1] Открытые сервлеты

Здесь пишутся все, которые добавляются модулями, т.е. ВСЕ помимо тех, что прописаны в web.xml . Почему эти предопределённые не пишутся - надо поглядеть. Можно тоже выводить для красоты, наверное.

Автор:  Phricker [ 19 ноя 2014, 12:50 ]
Заголовок сообщения:  Re: [6.1] Открытые сервлеты

А есть какой нибудь вариант с закрыть всё, и открыть то что нужно?
Как я предложил, но чтобы при этом не отвалилось всё остальное.

Автор:  dimOn [ 19 ноя 2014, 13:29 ]
Заголовок сообщения:  Re: [6.1] Открытые сервлеты

Phricker писал(а):
А есть какой нибудь вариант с закрыть всё, и открыть то что нужно?
Как я предложил, но чтобы при этом не отвалилось всё остальное.

не понял задачу - что такое вообще "закрыть всё"? и зачем это нужно? или это не про биллинг вопрос сейчас?

Автор:  Phricker [ 19 ноя 2014, 13:37 ]
Заголовок сообщения:  Re: [6.1] Открытые сервлеты

Это про то, как закрыть доступ к биллингу извне используя Nginx, оставив при этом для абонентов открытым pubexecuter и webexecuter. Ну и до кучи balance_sender

Сделать малой кровью это можно вот так
Код:
location /bgbilling/webexecuter {
         proxy_pass http://127.0.0.1:8080;
         proxy_set_header        X-Real-Ip       $remote_addr;
         proxy_set_header        Host            $host;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
      location / {
         deny all;
      }


В этом случае, что бы вы там не внедрили новое (тот же reportsexecuter, TvExecutor to /tv-ws/*), оно будет по-умолчанию закрыто.
Нет нужды постоянно отслеживать что вы там добавили.

Но в моем примере есть маленький изъян.
Он закрывает доступы к тому, что используется webexecuter'ом и pubexecuter'ом.
Таблицы стилей css, JS и может быть что-то еще.
Мой пример начинает выглядеть как-то вот так
Изображение

Собственно поэтому и вопрос.
Как закрыть доступ к /bgbilling оставив при этом открытым все эти таблицы стилей и прочее, закрыв при этом доступ ко всем существующим сервлетам, и ко всем сервлетам которые появятся в будущем.

Автор:  dimOn [ 19 ноя 2014, 14:27 ]
Заголовок сообщения:  Re: [6.1] Открытые сервлеты

а, ну это по энжиникс вопрос, стало быть

Автор:  Phricker [ 19 ноя 2014, 14:49 ]
Заголовок сообщения:  Re: [6.1] Открытые сервлеты

Ну или же
- как посмотреть ВСЕ сервлеты биллинга?
- будете ли вы писать о том, какой новый сервлет добавили, чтобы его можно было оперативно закрыть?

Автор:  Phricker [ 19 ноя 2014, 15:29 ]
Заголовок сообщения:  Re: [6.1] Открытые сервлеты

А можно и так выкручиваться )))
Код:
server {
        listen       80;
        server_name  test.local.ru;

      location /bgbilling/webexecuter {
         proxy_pass http://127.0.0.1:8080/bgbilling/webexecuter ;
         proxy_set_header        X-Real-Ip       $remote_addr;
         proxy_set_header        Host            $host;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

         client_max_body_size       10m;
         client_body_buffer_size    128k;
         proxy_connect_timeout      300;
         proxy_send_timeout         300;
         proxy_read_timeout         300;
         proxy_buffer_size          4k;
         proxy_buffers              4 32k;
         proxy_busy_buffers_size    64k;
         proxy_temp_file_write_size 64k;
      }
      location /bgbilling/pubexecuter {
         proxy_pass http://127.0.0.1:8080/bgbilling/pubexecuter ;
         proxy_set_header        X-Real-Ip       $remote_addr;
         proxy_set_header        Host            $host;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
      location /bgbilling/balance_sender {
         proxy_pass http://127.0.0.1:8080/bgbilling/balance_sender ;
         proxy_set_header        X-Real-Ip       $remote_addr;
         proxy_set_header        Host            $host;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
      location /bgbilling/js {
         proxy_pass http://127.0.0.1:8080/bgbilling/js ;
         proxy_set_header        X-Real-Ip       $remote_addr;
         proxy_set_header        Host            $host;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
      location /bgbilling/style.css {
         proxy_pass http://127.0.0.1:8080/bgbilling/style.css ;
         proxy_set_header        X-Real-Ip       $remote_addr;
         proxy_set_header        Host            $host;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
      location /bgbilling/custom.css {
         proxy_pass http://127.0.0.1:8080/bgbilling/custom.css ;
         proxy_set_header        X-Real-Ip       $remote_addr;
         proxy_set_header        Host            $host;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
      location /bgbilling/css/redmond/jquery-ui-1.8.13.custom.css {
         proxy_pass http://127.0.0.1:8080/bgbilling/css/redmond/jquery-ui-1.8.13.custom.css;
         proxy_set_header        X-Real-Ip       $remote_addr;
         proxy_set_header        Host            $host;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
      location /bgbilling/img {
         proxy_pass http://127.0.0.1:8080/bgbilling/img;
         proxy_set_header        X-Real-Ip       $remote_addr;
         proxy_set_header        Host            $host;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
      location / {
         deny all;
      }


ну и можно вместо двух правил для css написать одно

Автор:  vkulakov [ 23 ноя 2014, 20:34 ]
Заголовок сообщения:  Re: [6.1] Открытые сервлеты

У нас как-то так:
Код:
    location / {
        allow 10.0.0.0/8;
        allow 192.168.0.0/16;
        deny  all;

        proxy_pass $scheme://127.0.0.1:$server_port;
    }

    location ~* \.(ico|css|js|png|gif)$ {
        proxy_pass $scheme://127.0.0.1:$server_port;
    }

    location /bgbilling/help {
        proxy_pass $scheme://127.0.0.1:$server_port;
    }

    location /bgbilling/webexecuter {
        proxy_pass $scheme://127.0.0.1:$server_port;
    }

    location /bgbilling/pubexecuter {
        proxy_pass $scheme://127.0.0.1:$server_port;
    }

    location /bgbilling/api/ru.joxnet.bgbilling.service/MobilePaymentService {
        deny all;
    }

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/