Я пытаюсь сделать что-то, что, я уверен, было сделано раньше, поэтому мне нужна помощь в поиске лучших инструментов для работы.
У меня есть сервер загрузки данных в Интернете, сейчас пользователь должен войти на сервер и запросить файл, а Apache httpd работает непосредственно через сеть.
Поскольку файлы довольно большие, я хочу настроить компьютер, который в настоящее время функционирует в качестве маршрутизатора для нашей локальной сети, чтобы загрузка с него происходила любому пользователю, подключенному к нашей локальной сети, но аутентификация пользователя все еще должна происходить на веб-сервере. , Кроме того, я не хочу, чтобы мои пользователи имели дело с этим изменением, они должны войти в систему и запросить файл, а локальный маршрутизатор должен вступить во владение, если они находятся в локальной сети, в противном случае они должны получить файл из Интернета.
Я думаю, мне нужно настроить локальный сервер Apache в маршрутизаторе, чтобы он мог обслуживать файлы, но я не уверен, как перехватить запрос на файл, запросить проверку подлинности с сервера и по-прежнему обслуживать файл с локальный роутер. Я читаю документацию по Squid, так как поначалу кажется, что он может делать что-то подобное, но я был бы признателен за некоторые указания от опытных людей.
Является ли Squid подходящим инструментом для решения этой проблемы? Есть ли лучшие альтернативы?
Другое решение, о котором я думал, - это поддержка локальной копии базы данных аутентификации, поэтому, когда пользователь запрашивает файл, мне нужно только перехватить этот запрос и выполнить аутентификацию локально и предоставить файл, проблема в том, что права доступа к файлу довольно нестабильный, и я не знаю хорошего способа автоматически синхронизировать обе базы данных. Есть ли какой-то инструмент, чтобы помочь в этом отношении?
источник