Обновить

Poisk: однофайловый поисковик для изолированной корпоративной сети

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели7.5K
Всего голосов 2: ↑1 и ↓10
Комментарии6

Комментарии 6

спасибо за кейс!

как устроен скрипт питона с индексацией с точки зрения разных ОС на нодах? у вас маппинг какой то для линукс, мак, винды в config.ini? или фабрика в коде?

как устроены списки кредов с доступами?

прямо из поиска пользователь получает прямой доступ к файлам на разных хостах с помощью каких-то открывающихся ssh-соединений? или вы просто пути до файлов подсказывает, а дальше пользак сам идет за файлом?

есть какие то ограничения с точки зрения ИБ кому что можно искать и что можно так идексировать?

Спасибо!

Все намного проще. У меня обычная пользовательская машина в сети как у всех остальных пользователей.

В сентябре нас всех стали переводить на АстраЛинукс. А там в отличии от Windows есть предустановленный Python. Решил воспользоваться такой возможностью.

И скрипт сборки поисковика запускаю у себя, а не на серверах. Скрипт видит сеть как любой рядовой пользователь сети.

В конфигурационном файле только пути до каталогов сканирования как они видны на моей машине. И путь куда нужно положить файл поисковика. Дальше внутри поисковика все пути до файлов и каталогов относительные от места расположения поисковика.

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

Довольно удобно когда браузер может просматривать каталоги и открывать некоторые типы файлов (в частности PDF). А те файлы которые он не умеет открывать позволяет скачать на машину пользователя и открывать отдельной программой. Грех было бы не воспользоваться и этой возможностью.

Специально делал такое "толстое" клиентское решение. Сеть корпоративная. Безопасники ничего не позволят там завести. А информационщики сервера под это не дают. Я ведь не их сотрудник, а обычный клерк в тендерном отделе. Потому и собираем из палок и прочего связующего материала... Благо компьютеры теперь обладают большой операционной памятью и могут переваривать в себе сотню мегабайт.

Вроде на все вопросы ответил и даже на вопрос из следующего сообщения в этой ленте.

Если это поиск , возможно подключить эластик серч будет хорошим решением ? Или какой другой микросервис ?

Полностью согласен. У меня диплом в магистратуре был именно на нем.

Но никто сервер мне не даст. И никакой другой микросервис мне не запустить. Я могу лишь выложить файл на общий диск. Потому и выбрал такую стратегию (в HTML файле собрать и базу и обработку).

Спасибо за наработку, посмотрел-пощупал, но коллегам ранее предложил под MS Windows и Astra Linux portable сборку DocFetcher. Работает исправно и дело своё делает. Рекомендую в закрытых сегментах без доступа в Интернет.

https://docfetcher.sourceforge.io/ru/

Если бы наши безопсники это в нашей сетке увидели, я бы даже заявление не успел написать...

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации