Наиболее инфраструктурно-верный способ - побороться вот с этим.
DHCP не возможен в данном варианте, так как по причине нахождения в подсети некоторых специфичных железок, у которых статика меняется автоматом на DHCP адрес, как только железяка видит в сети DHCP.
Запроксируйте на "двух других" урлы к статике через фоновый с кэшем - тогда они скачают файл с него всего по одному разу, положат его в кэш и затем будут отдавать из него.
Разумеется, при изменении файлов нужно менять на странице урл к нему, например, с помощью аргумента с версией.
Всё зависит от конкретного пакета. По идее - все конфиги должны храниться в /etc и после purge удаляться - именно в этом же его смысл по сравнению с remove. Универсального рецепта нет, короче - только следить, в какие ещё каталоги гадит ПО.
Если взломали сервер - хакер либо достанет все ваши ключи прямо из незашифрованного хранилища, либо перехватит в момент передачи из шифрованного хранилища в приложение (сложнее), либо из памяти процесса (ещё сложнее, но вполне реализуемо).
Способ защиты в вашем случае - недопущение взлома, а не нагромождение лишних сущностей.
В каком плане "как"? Берёте любой, какой хотите - и используете. Если подвержены предрассудкам и некуда девать деньги - покупаете. Если лишены этих недостатков - Let`s Encrypt.
То, что внешний интерфейс роутера не доступен изнутри - вполне нормально. Нужно для локальных ресурсов отдавать локальный адрес, а не ломиться "наружу, потом вовнутрь".
Вам дали это задание, предполагаю, в рамках именно того, чтобы вы перестали быть "полным профаном". Если действительно "ничего не объяснили", а не вы пропустили соответствующие занятия - это повод задуматься над профпригодностью преподавателя.