У меня действительно странное поведение на одном из серверов Debian. При запросе stuff.com (пример) или stuff.com/image.jpg, скажем, 50% раз я имею правильный ответ, другие 50% раз я имею 404, в случае изображения, если я запрашиваю обычный HTML-файл я получаю страницу по умолчанию apache.
Все началось, когда я создал новый виртуальный хост сегодня утром, настроил DocumentRoot как обычно и все остальное, и вдруг я начинаю получать около 404 на изображениях между обновлениями, и иногда я получу страницу по умолчанию apache.
Virtual Host Config:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName stuff.com
DocumentRoot /var/www/html/stuff/stuff-test
<Directory /var/www/html/stuff/stuff-test >
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/apache2/stuff/stuff/error.log
CustomLog /var/log/apache2/stuff/stuff/access.log combined
</VirtualHost>
Default config:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Это был сложный сайт, созданный с помощью Symfony, поэтому я подумал, что он может быть связан с этим, поэтому установлен на другом сервере и все работает. Затем мы начали вырубать еще больше наших возможностей, и теперь у нас есть только index.html и image.jpg в папке, и это все равно происходит то же самое.
Мы пробовали все, кроме перезапуска Apache с перезапуском service apache2, мы обычно используем перезагрузку.
Следует отметить, что на этом сервере настроено 97 виртуальных хостов, мы увеличили уровень всех журналов, apache (до trace8), на рассматриваемом виртуальном хосте и на виртуальном хосте по умолчанию.
Мы также проверили dmesg ,/var/log/messages ,/var/log/kern.log ,/var/log/syslog.
И ничего интересного не появляется ни в одном из этих журналов, когда запросы не попадают на виртуальный хост и переходят к виртуальному хосту по умолчанию.
Еще один интересный факт, или нет, это происходит только с новыми виртуальными хостами, мы пытались создать кучу из них все с одинаковым результатом, но на старых (созданных до сегодняшнего дня), все работает идеально без проблем.
На сервере ничего не менялось (последнее изменение было 3 декабря), ни обновления программного обеспечения, ни перезапуска, ничего.
Мы собираемся перезапустить apache сегодня вечером, не хочу рисковать перезапуском apache в течение дня и внезапно все сайты падают. И посмотрите, что будет.
Кто-нибудь имеет представление?
Вещи, которые мы проверили, не по специальному заказу:
Версии программного обеспечения: Debian: 10,2
Apache: Apache/2.4.38 (Debian)
PHP: 7,2,34 (не то, чтобы это имело значение)
-121--304454-Этот вопрос был вызван этим потоком
Гипотетический сценарий для контекста таков:
Стандартный подход может заключаться в использовании PKI с доверенным CA, установленным на всех учетных записях пользователей, и развертывании локального сервера SCEP и т.д. Но вместо этого было бы благоразумно:
Во время работы в безопасной среде и после конфигурирования импортируйте идентификационный код RSA сервера в контейнер известных _ хостов
нашего хост-компьютера (или где бы он ни хранился, я еще не слишком знаком с Linux) использование ssh-keyscan -H x.x.x.x > > ~/.ssh/knowledge _ hosts
Общий доступ/зеркальное отображение этого контейнера идентификационных данных RSA для всех пользователей на этой хост-машине
Настройте узел/каждого пользователя на отклонение/удаление/отказ от подключения при наличии следующей подсказки, чтобы
Аутентичность хоста Отпечаток ключа RSA - [отпечаток ключа]. Вы действительно хотите продолжить подключение (да/нет)?
У вас есть внутренний DNS-сервер? Поместите открытые ключи хоста в записи SSHFP. Теперь они доступны для всей вашей организации, и их не нужно везде копировать вручную. Клиентские машины должны быть настроены с VerifyHostKeyDNS yes
, чтобы проверить их. Примерно так в / etc / ssh / ssh_config
:
Match host *.internal.example.com
VerifyHostKeyDNS yes
Чтобы предотвратить подключения к неизвестным хостам, используйте StrictHostKeyChecking yes
. Но имейте в виду, что очень часто возникает необходимость подключаться к новым хостам, поэтому это, вероятно, доставит достаточно неудобств, чтобы пользователи попытались его обойти. См. Страницу руководства для альтернативных конфигураций, которые могут обеспечить лучший баланс.