Я пытался и не мог найти способ сделать это. Я хочу настроить административную веб-панель управления сервером (по аналогии с webmin), но пытаюсь добавить чрезвычайно сложную для подделки меру безопасности, которая в основном прозрачна для тех, у кого есть доступ и которая не работает. У меня есть идея, которая звучит подходящей, но я не могу найти действительно работоспособное решение.
У меня есть настройка стука порта поверх аутентификации только по ключу на ssh. Это уменьшило количество попыток атаки почти до нуля. Я довольно доволен существующими мерами безопасности ssh, но оказалось бесполезным обеспечить такую же безопасность для nginx.
Можно ли настроить что-то вроде блокировки порта, чтобы только пользователь, активно вошедший в ssh, имел порт, открытый на http? Я не могу просто использовать ESTABLISHED, так как хочу также требовать аутентификации в ssh.
Идеальное решение работало бы примерно так ...
Я понимаю, что завершение сеанса приведет к переключению на DROP, что было бы приемлемо.
Ближайшее решение, которое я смог придумать, включает сканирование журналов ssh через cron и изменение iptables на лету, но должен быть способ лучше. Открыт для идей, по крайней мере, чтобы указать мне правильное направление.
Не могли бы вы отредактировать свой вопрос, чтобы немного рассказать, зачем вам нужен такой уровень безопасности? Вроде излишество. - Тим
Я упомянул администрирование сервера аля Webmin. Вкратце, скрипты php / py с доступом к внутренним компонентам сервера, таким как iptables, модификация / etc, выключение / перезагрузка, парсеры журналов, другие инструменты обслуживания. Для доступа к самому серверу потребуется sudo, следовательно, он будет максимально защищен.