Я хочу иметь возможность автоматически проверять все мои серверы, чтобы убедиться, что просмотр каталогов включен. Как мне сделать это в сценарии оболочки?
1 ответ
3
Два предложения:
Создайте каталог, извлеките его содержимое по HTTP с localhost (используя
curl
,wget -O /dev/stdout
,lynx -dump
,w3m -dump
,elinks -dump
) и найдите список файлов. Пример для Apache2, который обычно показываетIndex of /directory
:cd /srv/http name="test-$RANDOM$RANDOM$RANDOM" mkdir "$name" if curl "http://localhost/$name/" | fgrep -qs "Index of /$name"; then echo "enabled" rmdir "$name" else echo "disabled" rmdir "$name" exit 1 fi
Если вы используете Lighttpd, nginx или что-то еще, настройте шаблон grep .
Альтернатива: изучите
grep
илиperl
и разберитесь с вашими файлами конфигурации. Точный процесс зависит от используемого вами демона HTTP - их форматы конфигурации очень разные.