Я намагаюся відповідати назви файлів для в'язниці fail2ban - тому мені потрібно використовувати лише глобальне ім'я файлів - а не регулярні вирази та баш сценарії.
Мій /var/log/apache2
каталог містить файли, включаючи:
example.com.error.log
db.example.com.error.log
app1.example.com.error.log
app2.example.com.error.log
Я намагаюся створити глобус, щоб відповідати всім файлам, які закінчуються, за .error.log
винятком db.example.error.log
- чи це можливо?
Я намагався, !(db)*.error.log
але це все одно відповідає db.example.com.error.log
. Я здогадуюсь, що !()
знак не відповідає жодним символам, що дозволяє *
збігу з початку імені файлу.
Примітка: мені не хочеться розширювати глобус, коли appX
додаються нові логістичні файли, тому я не можу використовувати @()
зі списком відомих на даний момент файлів не-db.
(Передумови: я хочу створити фільтр, який забороняє будь-кому запитувати будь-які URL-адреси phpMyAdmin у будь-якому домені, крім db.example.com)