<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://hpc-wiki.info/hpc/index.php?action=history&amp;feed=atom&amp;title=Admin_Guide_Fail2ban</id>
	<title>Admin Guide Fail2ban - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://hpc-wiki.info/hpc/index.php?action=history&amp;feed=atom&amp;title=Admin_Guide_Fail2ban"/>
	<link rel="alternate" type="text/html" href="https://hpc-wiki.info/hpc/index.php?title=Admin_Guide_Fail2ban&amp;action=history"/>
	<updated>2026-06-02T02:45:48Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.9</generator>
	<entry>
		<id>https://hpc-wiki.info/hpc/index.php?title=Admin_Guide_Fail2ban&amp;diff=4498&amp;oldid=prev</id>
		<title>Mukund-pondkule-6a11@uni-paderborn.de at 17:57, 9 December 2020</title>
		<link rel="alternate" type="text/html" href="https://hpc-wiki.info/hpc/index.php?title=Admin_Guide_Fail2ban&amp;diff=4498&amp;oldid=prev"/>
		<updated>2020-12-09T17:57:36Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 17:57, 9 December 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:HPC-Admin|Fail2ban]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:HPC-Admin|Fail2ban]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;nowiki /&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:HPC.NRW-Best-Practices|Fail2ban]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:HPC.NRW-Best-Practices|Fail2ban]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;nowiki /&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Fail2ban]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Fail2ban]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;nowiki /&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:ssh]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:ssh]]&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;nowiki /&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;{{DISPLAYTITLE:Fail2ban (Admin Guide)}}&amp;lt;nowiki /&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Fail2ban: Stop Brute-Force Attacks on Exposed Services ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Fail2ban: Stop Brute-Force Attacks on Exposed Services ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key hpc_wiki:diff::1.12:old-3901:rev-4498 --&gt;
&lt;/table&gt;</summary>
		<author><name>Mukund-pondkule-6a11@uni-paderborn.de</name></author>
	</entry>
	<entry>
		<id>https://hpc-wiki.info/hpc/index.php?title=Admin_Guide_Fail2ban&amp;diff=3901&amp;oldid=prev</id>
		<title>Robert-schade-e757@uni-paderborn.de at 15:40, 2 November 2020</title>
		<link rel="alternate" type="text/html" href="https://hpc-wiki.info/hpc/index.php?title=Admin_Guide_Fail2ban&amp;diff=3901&amp;oldid=prev"/>
		<updated>2020-11-02T15:40:58Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 15:40, 2 November 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l2&quot; &gt;Line 2:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 2:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:HPC.NRW-Best-Practices|Fail2ban]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:HPC.NRW-Best-Practices|Fail2ban]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Fail2ban]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Fail2ban]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:ssh]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key hpc_wiki:diff::1.12:old-3897:rev-3901 --&gt;
&lt;/table&gt;</summary>
		<author><name>Robert-schade-e757@uni-paderborn.de</name></author>
	</entry>
	<entry>
		<id>https://hpc-wiki.info/hpc/index.php?title=Admin_Guide_Fail2ban&amp;diff=3897&amp;oldid=prev</id>
		<title>Robert-schade-e757@uni-paderborn.de at 15:39, 2 November 2020</title>
		<link rel="alternate" type="text/html" href="https://hpc-wiki.info/hpc/index.php?title=Admin_Guide_Fail2ban&amp;diff=3897&amp;oldid=prev"/>
		<updated>2020-11-02T15:39:56Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 15:39, 2 November 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:HPC-Admin|Fail2ban]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:HPC-Admin|Fail2ban]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:HPC.NRW-Best-Practices|Fail2ban]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:HPC.NRW-Best-Practices|Fail2ban]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:Fail2ban]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key hpc_wiki:diff::1.12:old-3852:rev-3897 --&gt;
&lt;/table&gt;</summary>
		<author><name>Robert-schade-e757@uni-paderborn.de</name></author>
	</entry>
	<entry>
		<id>https://hpc-wiki.info/hpc/index.php?title=Admin_Guide_Fail2ban&amp;diff=3852&amp;oldid=prev</id>
		<title>Robert-schade-e757@uni-paderborn.de at 14:16, 2 November 2020</title>
		<link rel="alternate" type="text/html" href="https://hpc-wiki.info/hpc/index.php?title=Admin_Guide_Fail2ban&amp;diff=3852&amp;oldid=prev"/>
		<updated>2020-11-02T14:16:46Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 14:16, 2 November 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:HPC-Admin]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:HPC-Admin&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;|Fail2ban&lt;/ins&gt;]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:HPC.NRW-Best-Practices]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:HPC.NRW-Best-Practices&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;|Fail2ban&lt;/ins&gt;]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key hpc_wiki:diff::1.12:old-3758:rev-3852 --&gt;
&lt;/table&gt;</summary>
		<author><name>Robert-schade-e757@uni-paderborn.de</name></author>
	</entry>
	<entry>
		<id>https://hpc-wiki.info/hpc/index.php?title=Admin_Guide_Fail2ban&amp;diff=3758&amp;oldid=prev</id>
		<title>Robert-schade-e757@uni-paderborn.de: Author Martin Errenst</title>
		<link rel="alternate" type="text/html" href="https://hpc-wiki.info/hpc/index.php?title=Admin_Guide_Fail2ban&amp;diff=3758&amp;oldid=prev"/>
		<updated>2020-10-30T18:20:25Z</updated>

		<summary type="html">&lt;p&gt;Author Martin Errenst&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:HPC-Admin]]&lt;br /&gt;
[[Category:HPC.NRW-Best-Practices]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Fail2ban: Stop Brute-Force Attacks on Exposed Services ==&lt;br /&gt;
&lt;br /&gt;
Fail2ban monitors log files of various services to block individual IPs after too many failed login attempts.&lt;br /&gt;
&lt;br /&gt;
It is transparent to the user, as long as the correct credentials are used to log in. With wrong credentials and multiple login attempts, the users IP will be blocked for a certain time. This time period may increase every time when this IP is blocked.&lt;br /&gt;
&lt;br /&gt;
An administrator has to configure Fail2ban for every exposed service. After initial configuration, the service works autonomously. The Fail2ban service can be used to (un-)ban IPs manually.&lt;br /&gt;
&lt;br /&gt;
How Fail2ban works:&lt;br /&gt;
&lt;br /&gt;
* Parse log files for password/login failure reports&lt;br /&gt;
* Define &amp;#039;&amp;#039;Jails&amp;#039;&amp;#039;:&lt;br /&gt;
** A Jail consists of &amp;#039;&amp;#039;Filters&amp;#039;&amp;#039; and &amp;#039;&amp;#039;Actions&amp;#039;&amp;#039;&lt;br /&gt;
** Can be created for every network-facing process&lt;br /&gt;
** Check &amp;lt;code&amp;gt;man jail.conf&amp;lt;/code&amp;gt; for more details&lt;br /&gt;
* &amp;#039;&amp;#039;Filters&amp;#039;&amp;#039;:&lt;br /&gt;
** Python regex in &amp;lt;code&amp;gt;/etc/fail2ban/filter.d&amp;lt;/code&amp;gt;&lt;br /&gt;
** Defines how to detect authentication failures&lt;br /&gt;
* &amp;#039;&amp;#039;Action&amp;#039;&amp;#039;:&lt;br /&gt;
** Usually (un-)banning via &amp;lt;code&amp;gt;/etc/hosts.deny&amp;lt;/code&amp;gt;, firewallcmd, iptables, pfsense etc.&lt;br /&gt;
** Can execute arbitrary code (everything python scriptable)&lt;br /&gt;
** Stored in &amp;lt;code&amp;gt;/etc/fail2ban/action.d&amp;lt;/code&amp;gt;&lt;br /&gt;
* Defaults for apache, sshd, lighttpd, vsftpd, qmail, postfix, courier, …&lt;br /&gt;
* General config in &amp;lt;code&amp;gt;/etc/fail2ban/fail2ban.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
** Contains typical ban times&lt;br /&gt;
** Fail2ban logging level &amp;amp;amp; target&lt;br /&gt;
** Check &amp;lt;code&amp;gt;man fail2ban&amp;lt;/code&amp;gt; for more details&lt;br /&gt;
* Recommendations:&lt;br /&gt;
** keep &amp;lt;code&amp;gt;*.conf&amp;lt;/code&amp;gt; files unchanged and add custom modifications in &amp;lt;code&amp;gt;*.local&amp;lt;/code&amp;gt; files (parsed after .conf files), e.g.:&lt;br /&gt;
*** &amp;lt;code&amp;gt;fail2ban.d/01_custom_log.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
*** &amp;lt;code&amp;gt;jail.d/01_enable.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
*** &amp;lt;code&amp;gt;jail.d/02_custom_port.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Challenges / Problems ==&lt;br /&gt;
&lt;br /&gt;
Be aware of what Fail2ban doesn’t protect against: &lt;br /&gt;
* Distributed denial of service attacks &lt;br /&gt;
** IPs are only banned after multiple failed attempts per IP &lt;br /&gt;
* Cannot eliminate risk of weak authentication &lt;br /&gt;
** Unchanged default passwords and easy to guess phrases are still more likely to be breached &lt;br /&gt;
* Local users with write access to logs can block IPs &lt;br /&gt;
** &amp;#039;&amp;#039;&amp;#039;Grant access accordingly&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
Just go through your package manager. For example on CentOS7: &amp;lt;code&amp;gt;yum install fail2ban&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
&lt;br /&gt;
Let&amp;#039;s activate the sshd jail that ships with Fail2ban:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;# service fail2ban start&lt;br /&gt;
Starting fail2ban:                                         [  OK  ]&lt;br /&gt;
# fail2ban-client status&lt;br /&gt;
Status&lt;br /&gt;
|- Number of jail:      0&lt;br /&gt;
`- Jail list:&lt;br /&gt;
# vim /etc/fail2ban/jail.conf&amp;lt;/source&amp;gt;&lt;br /&gt;
Enable the sshd jail:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;[sshd]&lt;br /&gt;
enabled = true&lt;br /&gt;
port = ssh&lt;br /&gt;
logpath = %(sshd_log)s&lt;br /&gt;
backend = %(sshd_backend)s&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;sshd_log&amp;lt;/code&amp;gt; (here &amp;lt;code&amp;gt;/var/log/auth.log&amp;lt;/code&amp;gt;) and &amp;lt;code&amp;gt;sshd_backend&amp;lt;/code&amp;gt; (here &amp;lt;code&amp;gt;auto&amp;lt;/code&amp;gt;) are defined in &amp;lt;code&amp;gt;/etc/fail2ban/paths-common.conf&amp;lt;/code&amp;gt;. The backend (pyinotify, gamin, polling, systemd or auto) specifies the way in which Fail2ban retrieves modification of log files.&lt;br /&gt;
&lt;br /&gt;
After this change, we have to reload the Fail2ban service:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;# fail2ban-client reload&lt;br /&gt;
# fail2ban-client status&lt;br /&gt;
Status&lt;br /&gt;
|- Number of jail:      1&lt;br /&gt;
`- Jail list:   sshd&amp;lt;/source&amp;gt;&lt;br /&gt;
There are a couple of things here that could look different for your distribution (log paths, service handling etc.), but the general approach is similar.&lt;br /&gt;
&lt;br /&gt;
== Unban IPs ==&lt;br /&gt;
&lt;br /&gt;
Looking up what IPs are currently blocked depends on your backend. With iptables you could run &amp;lt;code&amp;gt;iptables -L -n&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;fail2ban-client status&amp;lt;/code&amp;gt; to match ban rules to a jail name.&lt;br /&gt;
&lt;br /&gt;
Next, run&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;fail2ban-client set &amp;amp;lt;JAILNAME&amp;amp;gt; unbanip www.xxx.yyy.zzz&amp;lt;/pre&amp;gt;&lt;br /&gt;
to unban the IP in said jail.&lt;br /&gt;
&lt;br /&gt;
== Tips ==&lt;br /&gt;
&lt;br /&gt;
=== Restrict connection only to local network ===&lt;br /&gt;
&lt;br /&gt;
As always: only expose ports that are meant to be accessed through the network.&lt;br /&gt;
&lt;br /&gt;
You even may want to differentiate between access from within your local network and outside of it (assuming IPs like &amp;lt;code&amp;gt;123.123.XXX.YYY&amp;lt;/code&amp;gt; are local):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;# cat /etc/hosts.allow&lt;br /&gt;
sshd: 123.123.0.0/255.255.0.0&lt;br /&gt;
portmap: 123.123.123.0/255.255.254.0&lt;br /&gt;
rpcbind: 123.123.123.0/255.255.254.0&lt;br /&gt;
# cat /etc/hosts.deny&lt;br /&gt;
sshd: ALL&lt;br /&gt;
portmap: ALL&lt;br /&gt;
rpcbind: ALL&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== Block lists ===&lt;br /&gt;
&lt;br /&gt;
You could use a block list, (e.g. [https://www.blocklist.de/de/index.html blocklist.de]) to block malicious IPs.&lt;br /&gt;
&lt;br /&gt;
ISPs might give the same IP to multiple users at the same time, so using blocklists might lead to false positives.&lt;br /&gt;
&lt;br /&gt;
== More Info ==&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/fail2ban/fail2ban github.com/fail2ban/fail2ban]&lt;br /&gt;
* [https://www.fail2ban.org/ fail2ban.org]&lt;/div&gt;</summary>
		<author><name>Robert-schade-e757@uni-paderborn.de</name></author>
	</entry>
</feed>