@@ -62,21 +62,22 @@ The architectures supported by this image are:
6262
6363This container is designed to allow fail2ban to function at the host level, as well as at the docker container level.
6464If you are running applications on the host, you will need to set the ` chain ` to ` INPUT ` in the jail for that application.
65- All jails require the ability to read the application log files.
66- We recommend mounting each application's logs as a volume to the container (illustrated by the optional volumes in our documentation).
6765
68- ### Configuration Files
66+ ### [ Configuration Files] ( https://github.com/linuxserver/fail2ban-confs )
6967
7068On first run, the container will create a number of folders and files in ` /config ` . The default configurations for fail2ban are all disabled by default.
7169
7270Please refer to the [ Configuration README] ( https://github.com/linuxserver/fail2ban-confs/blob/master/README.md ) , which can be viewed in our repository, or in your config folder at ` /config/fail2ban/README.md ` .
7371
7472### Remote Logs
7573
74+ All jails require the ability to read the application log files.
75+ We recommend mounting each application's log folder as a volume to the container (illustrated by the optional volumes in our documentation).
76+ Mounting individual log files can cause issues and is not recommended.
77+
7678The ` /remotelogs ` path is designed to act as a parent for all log files you would like fail2ban to be able to use.
7779Each log file should be mounted in a subfolder underneath ` /remotelogs ` , ex:
7880- ` /remotelogs/nginx/ ` would mount a folder containing the nginx logs to the container
79- - ` /remotelogs/unificontroller/server.log ` would mount a single file for the unifi controller logs to the container
8081
8182## Usage
8283
@@ -102,28 +103,23 @@ services:
102103 volumes :
103104 - /path/to/appdata/config:/config
104105 - /var/log:/var/log:ro
105- - /path/to/airsonic/airsonic. log:/remotelogs/airsonic/airsonic.log :ro # optional
106+ - /path/to/airsonic/log:/remotelogs/airsonic:ro # optional
106107 - /path/to/apache2/log:/remotelogs/apache2:ro # optional
107- - /path/to/audit/audit.log:/remotelogs/audit/audit.log:ro # optional
108- - /path/to/authelia/authelia.log:/remotelogs/authelia/authelia.log:ro # optional
109- - /path/to/emby/embyserver.txt:/remotelogs/emby/embyserver.txt:ro # optional
110- - /path/to/exim/mainlog:/remotelogs/exim/mainlog:ro # optional
111- - /path/to/filebrowser/filebrowser.log:/remotelogs/filebrowser/filebrowser.log:ro # optional
112- - /path/to/gitea/gitea.log:/remotelogs/gitea/gitea.log:ro # optional
113- - /path/to/homeassistant/home-assistant.log:/remotelogs/homeassistant/home-assistant.log:ro # optional
114- - /path/to/lighttpd/error.log:/remotelogs/lighttpd/error.log:ro # optional
115- - /path/to/nextcloud/nextcloud.log:/remotelogs/nextcloud/nextcloud.log:ro # optional
108+ - /path/to/authelia/log:/remotelogs/authelia:ro # optional
109+ - /path/to/emby/log:/remotelogs/emby:ro # optional
110+ - /path/to/filebrowser/log:/remotelogs/filebrowser:ro # optional
111+ - /path/to/homeassistant/log:/remotelogs/homeassistant:ro # optional
112+ - /path/to/lighttpd/log:/remotelogs/lighttpd:ro # optional
113+ - /path/to/nextcloud/log:/remotelogs/nextcloud:ro # optional
116114 - /path/to/nginx/log:/remotelogs/nginx:ro # optional
117- - /path/to/nzbget/nzbget.log:/remotelogs/nzbget/nzbget.log:ro # optional
118- - /path/to/overseerr/overseerr.log:/remotelogs/overseerr/overseerr.log:ro # optional
119- - /path/to/prowlarr/prowlarr.txt:/remotelogs/prowlarr/prowlarr.txt:ro # optional
120- - /path/to/radarr/radarr.txt:/remotelogs/radarr/radarr.txt:ro # optional
121- - /path/to/roundcube/errors:/remotelogs/roundcube/errors:ro # optional
122- - /path/to/sabnzbd/sabnzbd.log:/remotelogs/sabnzbd/sabnzbd.log:ro # optional
123- - /path/to/sonarr/sonarr.txt:/remotelogs/sonarr/sonarr.txt:ro # optional
124- - /path/to/unificontroller/server.log:/remotelogs/unificontroller/server.log:ro # optional
125- - /path/to/vaultwarden/vaultwarden.log:/remotelogs/vaultwarden/vaultwarden.log:ro # optional
126- - /path/to/vsftpd/vsftpd.log:/remotelogs/vsftpd/vsftpd.log:ro # optional
115+ - /path/to/nzbget/log:/remotelogs/nzbget:ro # optional
116+ - /path/to/overseerr/log:/remotelogs/overseerr:ro # optional
117+ - /path/to/prowlarr/log:/remotelogs/prowlarr:ro # optional
118+ - /path/to/radarr/log:/remotelogs/radarr:ro # optional
119+ - /path/to/sabnzbd/log:/remotelogs/sabnzbd:ro # optional
120+ - /path/to/sonarr/log:/remotelogs/sonarr:ro # optional
121+ - /path/to/unificontroller/log:/remotelogs/unificontroller:ro # optional
122+ - /path/to/vaultwarden/log:/remotelogs/vaultwarden:ro # optional
127123 restart : unless-stopped
128124` ` `
129125
@@ -140,28 +136,23 @@ docker run -d \
140136 -e TZ=America/New_York \
141137 -v /path/to/appdata/config:/config \
142138 -v /var/log:/var/log:ro \
143- -v /path/to/airsonic/airsonic. log:/remotelogs/airsonic/airsonic.log :ro `#optional` \
139+ -v /path/to/airsonic/log:/remotelogs/airsonic:ro `#optional` \
144140 -v /path/to/apache2/log:/remotelogs/apache2:ro `#optional` \
145- -v /path/to/audit/audit.log:/remotelogs/audit/audit.log:ro `#optional` \
146- -v /path/to/authelia/authelia.log:/remotelogs/authelia/authelia.log:ro `#optional` \
147- -v /path/to/emby/embyserver.txt:/remotelogs/emby/embyserver.txt:ro `#optional` \
148- -v /path/to/exim/mainlog:/remotelogs/exim/mainlog:ro `#optional` \
149- -v /path/to/filebrowser/filebrowser.log:/remotelogs/filebrowser/filebrowser.log:ro `#optional` \
150- -v /path/to/gitea/gitea.log:/remotelogs/gitea/gitea.log:ro `#optional` \
151- -v /path/to/homeassistant/home-assistant.log:/remotelogs/homeassistant/home-assistant.log:ro `#optional` \
152- -v /path/to/lighttpd/error.log:/remotelogs/lighttpd/error.log:ro `#optional` \
153- -v /path/to/nextcloud/nextcloud.log:/remotelogs/nextcloud/nextcloud.log:ro `#optional` \
141+ -v /path/to/authelia/log:/remotelogs/authelia:ro `#optional` \
142+ -v /path/to/emby/log:/remotelogs/emby:ro `#optional` \
143+ -v /path/to/filebrowser/log:/remotelogs/filebrowser:ro `#optional` \
144+ -v /path/to/homeassistant/log:/remotelogs/homeassistant:ro `#optional` \
145+ -v /path/to/lighttpd/log:/remotelogs/lighttpd:ro `#optional` \
146+ -v /path/to/nextcloud/log:/remotelogs/nextcloud:ro `#optional` \
154147 -v /path/to/nginx/log:/remotelogs/nginx:ro `#optional` \
155- -v /path/to/nzbget/nzbget.log:/remotelogs/nzbget/nzbget.log:ro `#optional` \
156- -v /path/to/overseerr/overseerr.log:/remotelogs/overseerr/overseerr.log:ro `#optional` \
157- -v /path/to/prowlarr/prowlarr.txt:/remotelogs/prowlarr/prowlarr.txt:ro `#optional` \
158- -v /path/to/radarr/radarr.txt:/remotelogs/radarr/radarr.txt:ro `#optional` \
159- -v /path/to/roundcube/errors:/remotelogs/roundcube/errors:ro `#optional` \
160- -v /path/to/sabnzbd/sabnzbd.log:/remotelogs/sabnzbd/sabnzbd.log:ro `#optional` \
161- -v /path/to/sonarr/sonarr.txt:/remotelogs/sonarr/sonarr.txt:ro `#optional` \
162- -v /path/to/unificontroller/server.log:/remotelogs/unificontroller/server.log:ro `#optional` \
163- -v /path/to/vaultwarden/vaultwarden.log:/remotelogs/vaultwarden/vaultwarden.log:ro `#optional` \
164- -v /path/to/vsftpd/vsftpd.log:/remotelogs/vsftpd/vsftpd.log:ro `#optional` \
148+ -v /path/to/nzbget/log:/remotelogs/nzbget:ro `#optional` \
149+ -v /path/to/overseerr/log:/remotelogs/overseerr:ro `#optional` \
150+ -v /path/to/prowlarr/log:/remotelogs/prowlarr:ro `#optional` \
151+ -v /path/to/radarr/log:/remotelogs/radarr:ro `#optional` \
152+ -v /path/to/sabnzbd/log:/remotelogs/sabnzbd:ro `#optional` \
153+ -v /path/to/sonarr/log:/remotelogs/sonarr:ro `#optional` \
154+ -v /path/to/unificontroller/log:/remotelogs/unificontroller:ro `#optional` \
155+ -v /path/to/vaultwarden/log:/remotelogs/vaultwarden:ro `#optional` \
165156 --restart unless-stopped \
166157 lscr.io/linuxserver/fail2ban:latest
167158```
@@ -178,28 +169,23 @@ Container images are configured using parameters passed at runtime (such as thos
178169| ` -e TZ=America/New_York ` | Specify a timezone to use EG America/New_York |
179170| ` -v /config ` | Contains all relevant configuration files. |
180171| ` -v /var/log:ro ` | Host logs. Mounted as Read Only. |
181- | ` -v /remotelogs/airsonic/airsonic.log :ro ` | Optional path to airsonic log file . Mounted as Read Only. |
172+ | ` -v /remotelogs/airsonic:ro ` | Optional path to airsonic log folder . Mounted as Read Only. |
182173| ` -v /remotelogs/apache2:ro ` | Optional path to apache2 log folder. Mounted as Read Only. |
183- | ` -v /remotelogs/audit/audit.log:ro ` | Optional path to auditd log file. Mounted as Read Only. |
184- | ` -v /remotelogs/authelia/authelia.log:ro ` | Optional path to authelia log file. Mounted as Read Only. |
185- | ` -v /remotelogs/emby/embyserver.txt:ro ` | Optional path to emby log file. Mounted as Read Only. |
186- | ` -v /remotelogs/exim/mainlog:ro ` | Optional path to exim log file. Mounted as Read Only. |
187- | ` -v /remotelogs/filebrowser/filebrowser.log:ro ` | Optional path to filebrowser log file. Mounted as Read Only. |
188- | ` -v /remotelogs/gitea/gitea.log:ro ` | Optional path to gitea log file. Mounted as Read Only. |
189- | ` -v /remotelogs/homeassistant/home-assistant.log:ro ` | Optional path to homeassistant log file. Mounted as Read Only. |
190- | ` -v /remotelogs/lighttpd/error.log:ro ` | Optional path to lighttpd error log file. Mounted as Read Only. |
191- | ` -v /remotelogs/nextcloud/nextcloud.log:ro ` | Optional path to nextcloud log file. Mounted as Read Only. |
174+ | ` -v /remotelogs/authelia:ro ` | Optional path to authelia log folder. Mounted as Read Only. |
175+ | ` -v /remotelogs/emby:ro ` | Optional path to emby log folder. Mounted as Read Only. |
176+ | ` -v /remotelogs/filebrowser:ro ` | Optional path to filebrowser log folder. Mounted as Read Only. |
177+ | ` -v /remotelogs/homeassistant:ro ` | Optional path to homeassistant log folder. Mounted as Read Only. |
178+ | ` -v /remotelogs/lighttpd:ro ` | Optional path to lighttpd log folder. Mounted as Read Only. |
179+ | ` -v /remotelogs/nextcloud:ro ` | Optional path to nextcloud log folder. Mounted as Read Only. |
192180| ` -v /remotelogs/nginx:ro ` | Optional path to nginx log folder. Mounted as Read Only. |
193- | ` -v /remotelogs/nzbget/nzbget.log:ro ` | Optional path to nzbget log file. Mounted as Read Only. |
194- | ` -v /remotelogs/overseerr/overseerr.log:ro ` | Optional path to overseerr log file. Mounted as Read Only. |
195- | ` -v /remotelogs/prowlarr/prowlarr.txt:ro ` | Optional path to prowlarr log file. Mounted as Read Only. |
196- | ` -v /remotelogs/radarr/radarr.txt:ro ` | Optional path to radarr log file. Mounted as Read Only. |
197- | ` -v /remotelogs/roundcube/errors:ro ` | Optional path to roundcube error log file. Mounted as Read Only. |
198- | ` -v /remotelogs/sabnzbd/sabnzbd.log:ro ` | Optional path to sabnzbd log file. Mounted as Read Only. |
199- | ` -v /remotelogs/sonarr/sonarr.txt:ro ` | Optional path to sonarr log file. Mounted as Read Only. |
200- | ` -v /remotelogs/unificontroller/server.log:ro ` | Optional path to unificontroller server log file. Mounted as Read Only. |
201- | ` -v /remotelogs/vaultwarden/vaultwarden.log:ro ` | Optional path to vaultwarden log file. Mounted as Read Only. |
202- | ` -v /remotelogs/vsftpd/vsftpd.log:ro ` | Optional path to vsftpd log file. Mounted as Read Only. |
181+ | ` -v /remotelogs/nzbget:ro ` | Optional path to nzbget log folder. Mounted as Read Only. |
182+ | ` -v /remotelogs/overseerr:ro ` | Optional path to overseerr log folder. Mounted as Read Only. |
183+ | ` -v /remotelogs/prowlarr:ro ` | Optional path to prowlarr log folder. Mounted as Read Only. |
184+ | ` -v /remotelogs/radarr:ro ` | Optional path to radarr log folder. Mounted as Read Only. |
185+ | ` -v /remotelogs/sabnzbd:ro ` | Optional path to sabnzbd log folder. Mounted as Read Only. |
186+ | ` -v /remotelogs/sonarr:ro ` | Optional path to sonarr log folder. Mounted as Read Only. |
187+ | ` -v /remotelogs/unificontroller:ro ` | Optional path to unificontroller log folder. Mounted as Read Only. |
188+ | ` -v /remotelogs/vaultwarden:ro ` | Optional path to vaultwarden log folder. Mounted as Read Only. |
203189
204190### Portainer notice
205191
@@ -314,4 +300,5 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
314300
315301## Versions
316302
303+ * ** 25.08.22:** - Update README to clarify remote log information.
317304* ** 09.08.22:** - Initial Release.
0 commit comments