# Security

# Brute attack and /var/log/btmp

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-%2A%2A%2Fvar%2Flog%2Fbtmp%60-is-" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="9P2Pase6Odzy1e8P8dqL-A4"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="xtCoQc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="xtCoQc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"xtCoQc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwjHhMumusCWAxVcefUHHXHtAu8Q2O0OegYIAAgCEAA" data-wiz-uids="xtCoQc_2" dir="ltr" jsaction="rcuQ6b:&xtCoQc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="xtCoQc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="xtCoQc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwjHhMumusCWAxVcefUHHXHtAu8Q3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&xtCoQc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="xtCoQc_6"><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIBRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xtCoQc_k">`**`/var/log/btmp` is a system security log that records all failed login attempts to your Linux server.**</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIBhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xtCoQc_s">Every time someone tries to log in via SSH, the terminal, or local console and enters an incorrect password or username, the system logs it here. Because it captures malicious activity, it is a vital tool for checking if your server is under a brute-force attack.</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xtCoQc_y|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xtCoQc_y"></div>---

<div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xtCoQc_10|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xtCoQc_10"></div><div aria-level="3" class="otQkpb" data-animation-nesting="" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sae="" data-sfc-cp="" data-sfc-root="ep" data-wiz-attrbind="aria-level=xtCoQc_11/fLk2Md" jsaction="" jscontroller="a7qCn#ZxCkTb" jsuid="xtCoQc_11" role="heading">Key Characteristics of `/var/log/btmp`</div>- <span aria-owns="action-menu-parent-container" class="iNqyIf" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep">**It is a binary file:** You cannot read it using normal text commands like `cat`, `nano`, or `less`. If you try, your screen will fill with unreadable scrambled code.</span><div aria-hidden="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: -1px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-os-fs="" tabindex="0">  
    </div><div aria-hidden="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: -1px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-os-fs="" tabindex="0">  
    </div>
- <span class="iNqyIf" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep">**Strict Permissions:** Because it logs failed login details (which sometimes accidentally contain real passwords typed into the username field), only the `root` user can read it.</span>

<div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xtCoQc_1o|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xtCoQc_1o"></div>---

<div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xtCoQc_1q|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xtCoQc_1q"></div><div aria-level="3" class="otQkpb" data-animation-nesting="" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sae="" data-sfc-cp="" data-sfc-root="ep" data-wiz-attrbind="aria-level=xtCoQc_1r/fLk2Md" jsaction="" jscontroller="a7qCn#ZxCkTb" jsuid="xtCoQc_1r" role="heading">How to View It Safely</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIChAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xtCoQc_1s">To read this binary file, Linux includes a specific tool called `last` with the `-f` flag. Run this command with `sudo`:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xtCoQc_21|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xtCoQc_21"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAICxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xtCoQc_24,xtCoQc_23" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xtCoQc_22"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo last -f /var/log/btmp

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="9P2Pase6Odzy1e8P8dqL-A4"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="xtCoQc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="xtCoQc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"xtCoQc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwjHhMumusCWAxVcefUHHXHtAu8Q2O0OegYIAAgCEAA" data-wiz-uids="xtCoQc_2" dir="ltr" jsaction="rcuQ6b:&xtCoQc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="xtCoQc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="xtCoQc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwjHhMumusCWAxVcefUHHXHtAu8Q3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&xtCoQc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="xtCoQc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAICxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xtCoQc_24,xtCoQc_23" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xtCoQc_22"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwjHhMumusCWAxVcefUHHXHtAu8Qh9gSegYIAAgLEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="xtCoQc_25"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xtCoQc_26/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=xtCoQc_28/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xtCoQc_26/ggNWmb" id=""></button></div></div></div></div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xtCoQc_29">**What the output looks like:**</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xtCoQc_2g|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xtCoQc_2g"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xtCoQc_2j,xtCoQc_2i" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xtCoQc_2h"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">text</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
root     ssh:notty    192.168.1.50   Thu Aug 27 17:45 - 17:45  (00:00)
admin    ssh:notty    45.142.120.14  Thu Aug 27 17:42 - 17:42  (00:00)
invalid  ssh:notty    185.220.101.5  Thu Aug 27 17:40 - 17:40  (00:00)

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-1" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="9P2Pase6Odzy1e8P8dqL-A4"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="xtCoQc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="xtCoQc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"xtCoQc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwjHhMumusCWAxVcefUHHXHtAu8Q2O0OegYIAAgCEAA" data-wiz-uids="xtCoQc_2" dir="ltr" jsaction="rcuQ6b:&xtCoQc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="xtCoQc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="xtCoQc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwjHhMumusCWAxVcefUHHXHtAu8Q3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&xtCoQc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="xtCoQc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xtCoQc_2j,xtCoQc_2i" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xtCoQc_2h"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwjHhMumusCWAxVcefUHHXHtAu8Qh9gSegYIAAgNEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="xtCoQc_2k"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xtCoQc_2l/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=xtCoQc_2n/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xtCoQc_2l/ggNWmb" id=""></button></div></div></div></div>- <span class="iNqyIf" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep">**Column 1:** The username attempted (e.g., `root`, `admin`, or completely fake usernames like `invalid`).</span>
- <span class="iNqyIf" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep">**Column 3:** The **IP address** of the machine or bot trying to break into your server.</span>

<div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xtCoQc_34|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xtCoQc_34"></div>---

<div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xtCoQc_36|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xtCoQc_36"></div><div aria-level="3" class="otQkpb" data-animation-nesting="" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sae="" data-sfc-cp="" data-sfc-root="ep" data-wiz-attrbind="aria-level=xtCoQc_37/fLk2Md" jsaction="" jscontroller="a7qCn#ZxCkTb" jsuid="xtCoQc_37" role="heading">Common Issues: Why is it growing large?</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIEBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xtCoQc_38">If your server has a public IP address and port 22 (SSH) is open to the internet, automated botnets will target it 24/7 trying thousands of common passwords. This can cause `/var/log/btmp` to swell to hundreds of megabytes or gigabytes very quickly.</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIERAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xtCoQc_3f">To check how many failed login attempts have hit your server, you can count the lines in the parsed file:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xtCoQc_3l|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xtCoQc_3l"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIEhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xtCoQc_3o,xtCoQc_3n" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xtCoQc_3m"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo last -f /var/log/btmp | wc -l

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-2" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="9P2Pase6Odzy1e8P8dqL-A4"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="xtCoQc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="xtCoQc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"xtCoQc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwjHhMumusCWAxVcefUHHXHtAu8Q2O0OegYIAAgCEAA" data-wiz-uids="xtCoQc_2" dir="ltr" jsaction="rcuQ6b:&xtCoQc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="xtCoQc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="xtCoQc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwjHhMumusCWAxVcefUHHXHtAu8Q3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&xtCoQc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="xtCoQc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIEhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xtCoQc_3o,xtCoQc_3n" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xtCoQc_3m"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwjHhMumusCWAxVcefUHHXHtAu8Qh9gSegYIAAgSEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="xtCoQc_3p"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xtCoQc_3q/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=xtCoQc_3s/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xtCoQc_3q/ggNWmb" id=""></button></div></div></div></div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xtCoQc_3t|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xtCoQc_3t"></div>---

</div></div></div></div></div></div></div></div></div><div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-even-with-ssh-moved-" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="ilZyRc R7mRQb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div aria-hidden="false" data-animation-skip="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ved="0CAAQ_sYPahcKEwiYxbj1t8CWAxUAAAAAHQAAAAAQOw"><div class="xEFZqe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px 0px 0px 52px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="tbIZh wQN2Jd Odbbif" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="AdmSkc" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="sUKAcb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"></div></div></div></div><div class="UYpEO" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><div class="dcCF7d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">  
</div></div></div><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="Z_6PauWsGoGlvr0Pj_DK0AY"><div data-container-id="Z_6PauWsGoGlvr0Pj_DK0AY" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true">  
</div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true">  
</div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true">  
</div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true">  
</div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true">  
</div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true">  
</div></div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" eid="Z_6PauWsGoGlvr0Pj_DK0AY">  
</div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="F6RtAc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="F6RtAc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"F6RtAc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQ2O0OegYIAAgCEAA" data-wiz-uids="F6RtAc_2" dir="ltr" jsaction="rcuQ6b:&F6RtAc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="F6RtAc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="F6RtAc_4"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-root="ep" jsaction="" jscontroller="z34MU#CsVNRe" jsname="s7e4Od" jsuid="F6RtAc_5"></div><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&F6RtAc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="F6RtAc_6"><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIBRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="F6RtAc_k"><span data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-subtree="aimfl">Even with SSH moved to a custom port like </span>`2010`, sophisticated automated bots will eventually scan your server, find the open port, and begin brute-forcing it.</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIBhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="F6RtAc_s">You can use a few quick terminal commands to analyze your `/var/log/btmp` file and find out exactly who is attacking you and if **Fail2ban** is doing its job.</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&F6RtAc_10|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="F6RtAc_10"></div>---

<div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&F6RtAc_12|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="F6RtAc_12"></div><div aria-level="3" class="otQkpb" data-animation-nesting="" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sae="" data-sfc-cp="" data-sfc-root="ep" data-wiz-attrbind="aria-level=F6RtAc_13/fLk2Md" jsaction="" jscontroller="a7qCn#ZxCkTb" jsuid="F6RtAc_13" role="heading">1. Find the Top Attacking IP Addresses</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAICBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="F6RtAc_14">To see a ranked list of the specific IP addresses hitting your server with failed login attempts, parse the `btmp` file using this command:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&F6RtAc_1b|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="F6RtAc_1b"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAICRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="F6RtAc_1e,F6RtAc_1d" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="F6RtAc_1c"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo last -f /var/log/btmp | awk '{print $3}' | sort | uniq -c | sort -nr | head -n 10

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-3" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="Z_6PauWsGoGlvr0Pj_DK0AY"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="F6RtAc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="F6RtAc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"F6RtAc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQ2O0OegYIAAgCEAA" data-wiz-uids="F6RtAc_2" dir="ltr" jsaction="rcuQ6b:&F6RtAc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="F6RtAc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="F6RtAc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&F6RtAc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="F6RtAc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAICRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="F6RtAc_1e,F6RtAc_1d" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="F6RtAc_1c"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQh9gSegYIAAgJEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="F6RtAc_1f"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=F6RtAc_1g/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=F6RtAc_1i/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=F6RtAc_1g/ggNWmb" id=""></button></div></div></div></div>- <span class="iNqyIf" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep">**What this does:** It extracts the IP column, counts the duplicate entries, and displays the top 10 most aggressive IP addresses alongside the exact number of failed attempts they made.</span>

<div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&F6RtAc_1s|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="F6RtAc_1s"></div><div aria-level="3" class="otQkpb" data-animation-nesting="" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sae="" data-sfc-cp="" data-sfc-root="ep" data-wiz-attrbind="aria-level=F6RtAc_1t/fLk2Md" jsaction="" jscontroller="a7qCn#ZxCkTb" jsuid="F6RtAc_1t" role="heading">2. Find the Most Targeted Usernames</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAICxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="F6RtAc_1u">Attackers usually guess common system accounts. Run this to see what usernames they are trying to use to break in:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&F6RtAc_20|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="F6RtAc_20"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="F6RtAc_23,F6RtAc_22" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="F6RtAc_21"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo last -f /var/log/btmp | awk '{print $1}' | sort | uniq -c | sort -nr | head -n 10

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-4" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="Z_6PauWsGoGlvr0Pj_DK0AY"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="F6RtAc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="F6RtAc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"F6RtAc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQ2O0OegYIAAgCEAA" data-wiz-uids="F6RtAc_2" dir="ltr" jsaction="rcuQ6b:&F6RtAc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="F6RtAc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="F6RtAc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&F6RtAc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="F6RtAc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="F6RtAc_23,F6RtAc_22" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="F6RtAc_21"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQh9gSegYIAAgMEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="F6RtAc_24"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=F6RtAc_25/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=F6RtAc_27/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=F6RtAc_25/ggNWmb" id=""></button></div></div></div></div>- <span class="iNqyIf" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep">**What to look for:** You will likely see `root`, `admin`, `user`, or `ubuntu`. If you see actual personal usernames that exist on your system, it means the attack is more targeted.</span>

<div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&F6RtAc_2l|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="F6RtAc_2l"></div><div aria-level="3" class="otQkpb" data-animation-nesting="" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sae="" data-sfc-cp="" data-sfc-root="ep" data-wiz-attrbind="aria-level=F6RtAc_2m/fLk2Md" jsaction="" jscontroller="a7qCn#ZxCkTb" jsuid="F6RtAc_2m" role="heading">3. Verify if Fail2ban is Actually Blocking Them</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="F6RtAc_2n">Moving SSH to port `2010` means you need to ensure Fail2ban is actually listening to that custom port. Otherwise, it will ignore the attacks.</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="F6RtAc_2u">First, check the status of your SSH jail:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&F6RtAc_30|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="F6RtAc_30"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIEBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="F6RtAc_33,F6RtAc_32" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="F6RtAc_31"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo fail2ban-client status sshd

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-5" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="Z_6PauWsGoGlvr0Pj_DK0AY"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="F6RtAc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="F6RtAc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"F6RtAc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQ2O0OegYIAAgCEAA" data-wiz-uids="F6RtAc_2" dir="ltr" jsaction="rcuQ6b:&F6RtAc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="F6RtAc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="F6RtAc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&F6RtAc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="F6RtAc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIEBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="F6RtAc_33,F6RtAc_32" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="F6RtAc_31"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQh9gSegYIAAgQEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="F6RtAc_34"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=F6RtAc_35/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=F6RtAc_37/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=F6RtAc_35/ggNWmb" id=""></button></div></div></div></div>- <span class="iNqyIf" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep">Look at the **"Banned IP list"** at the bottom of the output. If it shows active IP addresses, Fail2ban is successfully protecting your new port.</span>
- <span class="iNqyIf" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep">If the list is completely empty despite having thousands of entries in your `btmp` log, Fail2ban might still be looking for port 22.</span>

<div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&F6RtAc_3k|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="F6RtAc_3k"></div><div aria-level="3" class="otQkpb" data-animation-nesting="" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sae="" data-sfc-cp="" data-sfc-root="ep" data-wiz-attrbind="aria-level=F6RtAc_3l/fLk2Md" jsaction="" jscontroller="a7qCn#ZxCkTb" jsuid="F6RtAc_3l" role="heading">4. Ensure Fail2ban Knows Your Custom Port</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIEhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="F6RtAc_3m">If Fail2ban isn't catching them, open your Fail2ban configuration file (usually `/etc/fail2ban/jail.local`):</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&F6RtAc_3t|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="F6RtAc_3t"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIExAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="F6RtAc_3w,F6RtAc_3v" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="F6RtAc_3u"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">ini</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
[sshd]
enabled = true
port    = 2010
logpath = %(sshd_log)s
backend = %(sshd_backend)s

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-6" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="Z_6PauWsGoGlvr0Pj_DK0AY"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="F6RtAc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="F6RtAc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"F6RtAc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQ2O0OegYIAAgCEAA" data-wiz-uids="F6RtAc_2" dir="ltr" jsaction="rcuQ6b:&F6RtAc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="F6RtAc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="F6RtAc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&F6RtAc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="F6RtAc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIExAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="F6RtAc_3w,F6RtAc_3v" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="F6RtAc_3u"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQh9gSegYIAAgTEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="F6RtAc_3x"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=F6RtAc_3y/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=F6RtAc_40/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=F6RtAc_3y/ggNWmb" id=""></button></div></div></div></div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIFBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="F6RtAc_41">*Ensure `port = 2010` is explicitly set.* If you make changes, restart the service:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&F6RtAc_49|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="F6RtAc_49"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIFRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="F6RtAc_4c,F6RtAc_4b" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="F6RtAc_4a"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo systemctl restart fail2ban

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-7" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="Z_6PauWsGoGlvr0Pj_DK0AY"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="F6RtAc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="F6RtAc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"F6RtAc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQ2O0OegYIAAgCEAA" data-wiz-uids="F6RtAc_2" dir="ltr" jsaction="rcuQ6b:&F6RtAc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="F6RtAc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="F6RtAc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&F6RtAc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="F6RtAc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIFRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="F6RtAc_4c,F6RtAc_4b" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="F6RtAc_4a"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwil_JbdusCWAxWBkq8BHQ-4EmoQh9gSegYIAAgVEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="F6RtAc_4d"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=F6RtAc_4e/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=F6RtAc_4g/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=F6RtAc_4e/ggNWmb" id=""></button></div></div></div></div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&F6RtAc_4h|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="F6RtAc_4h"></div>---

</div></div></div></div></div></div></div></div></div><div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-your-terminal-output" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="ilZyRc R7mRQb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div aria-hidden="false" data-animation-skip="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ved="0CAAQ_sYPahcKEwiYxbj1t8CWAxUAAAAAHQAAAAAQQA"><div class="UYpEO" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"></div><div class="dcCF7d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">  
</div></div></div><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="af-Paua2LIWlvr0Pl7KLuQk"><div data-container-id="af-Paua2LIWlvr0Pl7KLuQk" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true">  
</div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true">  
</div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true">  
</div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true">  
</div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true">  
</div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true">  
</div></div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" eid="af-Paua2LIWlvr0Pl7KLuQk">  
</div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="QRmWGc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="QRmWGc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"QRmWGc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ2O0OegYIAAgCEAA" data-wiz-uids="QRmWGc_2" dir="ltr" jsaction="rcuQ6b:&QRmWGc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="QRmWGc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="QRmWGc_4"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="z34MU#CsVNRe" jsname="s7e4Od" jsuid="QRmWGc_5"></div><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&QRmWGc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="QRmWGc_6"><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIBRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="QRmWGc_k"><span data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-subtree="aimfl">Your terminal output provides highly valuable security data.</span></div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIBhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="QRmWGc_r">**Yes, you are definitely being attacked by automated brute-force bots.** The IP address `103.137.184.170` alone has hammered your custom SSH port over **216,000 times**.</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIBxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="QRmWGc_10">The good news is that **Fail2ban is working**. It actively monitors your custom port (as shown by `Journal matches: _SYSTEMD_UNIT=sshd.service`), has banned 427 IPs total, and currently has 7 IPs blocked—including `211.253.8.115`, which is number 10 on your top attackers list.</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAICBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="QRmWGc_19">However, because the attack numbers are so massive (hundreds of thousands of attempts), Fail2ban is letting too many retries through before trigger-banning, or your ban times are too short.</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_1f|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_1f"></div>---

<div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_1h|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_1h"></div><div aria-level="3" class="otQkpb" data-animation-nesting="" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sae="" data-sfc-cp="" data-sfc-root="ep" data-wiz-attrbind="aria-level=QRmWGc_1i/fLk2Md" jsaction="" jscontroller="a7qCn#ZxCkTb" jsuid="QRmWGc_1i" role="heading">Recommended Hardening Steps</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_1j|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_1j"></div><div aria-level="4" class="AdPoic" data-animation-nesting="" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 700; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sae="" data-sfc-cp="" data-sfc-root="ep" data-wiz-attrbind="aria-level=QRmWGc_1k/fLk2Md" jsaction="" jscontroller="SF2W9b#clbHl" jsuid="QRmWGc_1k" role="heading">1. Make Fail2ban More Aggressive</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAICxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="QRmWGc_1q">Currently, bots are allowed to try thousands of times because your ban duration might be too short, or they reset after a few failures. Let's make it strict. Open your Fail2ban local configuration file:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_1w|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_1w"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_1z,QRmWGc_1y" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_1x"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo nano /etc/fail2ban/jail.local

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-8" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="af-Paua2LIWlvr0Pl7KLuQk"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="QRmWGc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="QRmWGc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"QRmWGc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ2O0OegYIAAgCEAA" data-wiz-uids="QRmWGc_2" dir="ltr" jsaction="rcuQ6b:&QRmWGc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="QRmWGc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="QRmWGc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&QRmWGc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="QRmWGc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_1z,QRmWGc_1y" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_1x"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQh9gSegYIAAgMEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="QRmWGc_20"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_21/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=QRmWGc_23/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_21/ggNWmb" id=""></button></div></div></div></div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="QRmWGc_24">Find or create your `[sshd]` section and adjust these parameters:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_2b|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_2b"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_2e,QRmWGc_2d" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_2c"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">ini</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
[sshd]
enabled = true
port    = 2010
maxretry = 3          ; Ban them after just 3 failed attempts
findtime = 1d         ; Look for 3 failures within a 24-hour window
bantime  = 1w         ; Ban them for a full week (or use -1 for permanent)

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-9" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="af-Paua2LIWlvr0Pl7KLuQk"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="QRmWGc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="QRmWGc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"QRmWGc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ2O0OegYIAAgCEAA" data-wiz-uids="QRmWGc_2" dir="ltr" jsaction="rcuQ6b:&QRmWGc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="QRmWGc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="QRmWGc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&QRmWGc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="QRmWGc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_2e,QRmWGc_2d" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_2c"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQh9gSegYIAAgOEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="QRmWGc_2f"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_2g/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=QRmWGc_2i/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_2g/ggNWmb" id=""></button></div></div></div></div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="QRmWGc_2j">*Save the file (`Ctrl+O`, `Enter`, `Ctrl+X`) and restart Fail2ban:*</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_2t|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_2t"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIEBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_2w,QRmWGc_2v" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_2u"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo systemctl restart fail2ban

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-10" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="af-Paua2LIWlvr0Pl7KLuQk"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="QRmWGc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="QRmWGc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"QRmWGc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ2O0OegYIAAgCEAA" data-wiz-uids="QRmWGc_2" dir="ltr" jsaction="rcuQ6b:&QRmWGc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="QRmWGc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="QRmWGc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&QRmWGc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="QRmWGc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIEBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_2w,QRmWGc_2v" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_2u"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQh9gSegYIAAgQEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="QRmWGc_2x"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_2y/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=QRmWGc_30/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_2y/ggNWmb" id=""></button></div></div></div></div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_31|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_31"></div><div aria-level="4" class="AdPoic" data-animation-nesting="" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 700; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sae="" data-sfc-cp="" data-sfc-root="ep" data-wiz-attrbind="aria-level=QRmWGc_32/fLk2Md" jsaction="" jscontroller="SF2W9b#clbHl" jsuid="QRmWGc_32" role="heading">2. Manually Ban the #1 Threat Right Now</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIEhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="QRmWGc_38">The IP `103.137.184.170` has broken the threshold completely. You can force Fail2ban to ban it instantly without waiting for the next trigger:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_3f|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_3f"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIExAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_3i,QRmWGc_3h" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_3g"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo fail2ban-client set sshd banip 103.137.184.170

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-11" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="af-Paua2LIWlvr0Pl7KLuQk"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="QRmWGc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="QRmWGc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"QRmWGc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ2O0OegYIAAgCEAA" data-wiz-uids="QRmWGc_2" dir="ltr" jsaction="rcuQ6b:&QRmWGc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="QRmWGc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="QRmWGc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&QRmWGc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="QRmWGc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIExAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_3i,QRmWGc_3h" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_3g"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQh9gSegYIAAgTEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="QRmWGc_3j"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_3k/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=QRmWGc_3m/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_3k/ggNWmb" id=""></button></div></div></div></div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_3n|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_3n"></div><div aria-level="4" class="AdPoic" data-animation-nesting="" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 700; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sae="" data-sfc-cp="" data-sfc-root="ep" data-wiz-attrbind="aria-level=QRmWGc_3o/fLk2Md" jsaction="" jscontroller="SF2W9b#clbHl" jsuid="QRmWGc_3o" role="heading">3. Disable Root Logins Over SSH</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIFRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="QRmWGc_3u">Your log shows **82,029** attempts trying to guess the password for the `root` user. If you haven't already, completely disable logging directly into the `root` account via SSH.</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIFhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="QRmWGc_43">Open your SSH daemon configuration file:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_49|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_49"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIFxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_4c,QRmWGc_4b" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_4a"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo nano /etc/ssh/sshd_config

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-12" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="af-Paua2LIWlvr0Pl7KLuQk"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="QRmWGc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="QRmWGc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"QRmWGc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ2O0OegYIAAgCEAA" data-wiz-uids="QRmWGc_2" dir="ltr" jsaction="rcuQ6b:&QRmWGc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="QRmWGc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="QRmWGc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&QRmWGc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="QRmWGc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIFxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_4c,QRmWGc_4b" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_4a"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQh9gSegYIAAgXEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="QRmWGc_4d"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_4e/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=QRmWGc_4g/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_4e/ggNWmb" id=""></button></div></div></div></div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIGBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="QRmWGc_4h">Find the line `PermitRootLogin` and change it to `no`:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_4p|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_4p"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIGRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_4s,QRmWGc_4r" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_4q"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">text</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
PermitRootLogin no

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-13" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="af-Paua2LIWlvr0Pl7KLuQk"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="QRmWGc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="QRmWGc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"QRmWGc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ2O0OegYIAAgCEAA" data-wiz-uids="QRmWGc_2" dir="ltr" jsaction="rcuQ6b:&QRmWGc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="QRmWGc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="QRmWGc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&QRmWGc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="QRmWGc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIGRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_4s,QRmWGc_4r" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_4q"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQh9gSegYIAAgZEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="QRmWGc_4t"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_4u/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=QRmWGc_4w/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_4u/ggNWmb" id=""></button></div></div></div></div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIGhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="QRmWGc_4x">*Save the file and restart your SSH service to apply:*</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_54|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_54"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIGxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_57,QRmWGc_56" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_55"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo systemctl restart ssh

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-14" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="af-Paua2LIWlvr0Pl7KLuQk"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="QRmWGc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="QRmWGc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"QRmWGc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ2O0OegYIAAgCEAA" data-wiz-uids="QRmWGc_2" dir="ltr" jsaction="rcuQ6b:&QRmWGc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="QRmWGc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="QRmWGc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&QRmWGc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="QRmWGc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIGxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_57,QRmWGc_56" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_55"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQh9gSegYIAAgbEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="QRmWGc_58"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_59/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=QRmWGc_5b/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_59/ggNWmb" id=""></button></div></div></div></div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIHBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="QRmWGc_5c">*(Note: Ensure you have your normal `meson` user password or SSH key working before doing this, so you don't lock yourself out).*</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_5k|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_5k"></div><div aria-level="4" class="AdPoic" data-animation-nesting="" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 700; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sae="" data-sfc-cp="" data-sfc-root="ep" data-wiz-attrbind="aria-level=QRmWGc_5l/fLk2Md" jsaction="" jscontroller="SF2W9b#clbHl" jsuid="QRmWGc_5l" role="heading">4. Clean up `/var/log/btmp`</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIHhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="QRmWGc_5s">Now that you have analyzed the threat, you can safely clear out this binary log file to reclaim disk space, just like you did with the MariaDB log:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_5y|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_5y"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIHxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_61,QRmWGc_60" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_5z"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo truncate -s 0 /var/log/btmp

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-15" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="af-Paua2LIWlvr0Pl7KLuQk"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="QRmWGc_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="QRmWGc_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"QRmWGc_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ2O0OegYIAAgCEAA" data-wiz-uids="QRmWGc_2" dir="ltr" jsaction="rcuQ6b:&QRmWGc_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="QRmWGc_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="QRmWGc_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&QRmWGc_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="QRmWGc_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIHxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="QRmWGc_61,QRmWGc_60" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="QRmWGc_5z"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQh9gSegYIAAgfEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="QRmWGc_62"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_63/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=QRmWGc_65/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=QRmWGc_63/ggNWmb" id=""></button></div></div></div></div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_66|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_66"></div>---

<div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIIRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="QRmWGc_68">To wrap up your server security checklist, let me know:</div>- <span class="iNqyIf" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep">Do you log in using a **password** or an **SSH Cryptographic Key**? (Switching to keys stops brute forces completely).</span>
- <span class="iNqyIf" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep">Would you like help configuring **UFW (the firewall)** to restrict SSH port 2010 access to only your specific home/office IP?</span>

<div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_6r|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_6r"></div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&QRmWGc_6t|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="QRmWGc_6t"></div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" data-wiz-uids="QRmWGc_6v" data-xid="Gd7Hsc" jsaction="aimRenderComplete:&QRmWGc_6u|ZUljYd;rcuQ6b:&QRmWGc_6u|npT2md" jscontroller="a5f0he#UaTW5b" jsuid="QRmWGc_6u"><div class="DBd2Wb" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" jsmodel="Qdu94e"><div class="v4bSkd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 500; margin: 0px 8px 0px 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-processed="true">AI responses may include mistakes. [Learn more](https://support.google.com/websearch?p=aimode)</div><span data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"></span><div class="zkL70c" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px 0px 0px -8px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" jsuid="QRmWGc_6v"><div class="RkJvxe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-inited="2" data-sfc-root="c" data-wiz-uids="QRmWGc_6y" jsaction="" jscontroller="RU9mjc#UAezx" jsuid="QRmWGc_6x"><div class="YHsVn" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwimj6zYu8CWAxWFkq8BHRfZIpcQkK0UegYIAAgkEAI" data-wiz-uids="QRmWGc_70,QRmWGc_71,QRmWGc_72" jsaction="mouseenter:&QRmWGc_6z|ZUljYd;mouseleave:&QRmWGc_6z|aXD3Gb;focusin:&QRmWGc_6z|Mrjwi;focusout:&QRmWGc_6z|CXhG2e;" jscontroller="nqTR2b#MCVA2" jsuid="QRmWGc_6z"><div class="" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-processed="true"><svg data-sae="" fill="currentColor" focusable="false" height="20px" viewbox="0 -1 13 18" width="20px" xmlns="http://www.w3.org/2000/svg"><path d="M1.77734 2.96289C2.10462 2.96289 2.37012 3.22838 2.37012 3.55566C2.37003 3.86235 2.13657 4.11509 1.83789 4.14551L1.7168 4.15137C1.41824 4.18181 1.18479 4.43369 1.18457 4.74023V13.0361C1.18467 14.0181 1.98137 14.8145 2.96289 14.8145H8.88867C9.19535 14.8145 9.44797 14.5818 9.47852 14.2832L9.48438 14.1611C9.51492 13.8625 9.76754 13.6299 10.0742 13.6299C10.4012 13.63 10.6658 13.8947 10.666 14.2217C10.666 15.2035 9.87051 16 8.88867 16H2.96289C1.3263 16 0.000103459 14.6722 0 13.0361V4.74023C0.000234322 3.75868 0.795773 2.96304 1.77734 2.96289ZM12.4443 2.37012C12.4442 1.71576 11.9141 1.18568 11.2598 1.18555H5.33398L5.21289 1.19141C4.65505 1.24796 4.21101 1.69123 4.1543 2.24902L4.14844 2.37012V11.2588C4.14844 11.5656 4.38192 11.8182 4.68066 11.8486L4.74121 11.8516H11.2598C11.9141 11.8514 12.4442 11.3213 12.4443 10.667V2.37012ZM13.6299 10.667C13.6297 11.9759 12.5687 13.037 11.2598 13.0371H4.74121C3.75937 13.0371 2.96289 12.2406 2.96289 11.2588V2.37012C2.96303 1.06111 4.02495 2.48186e-07 5.33398 0H11.2598C12.5687 0.000137107 13.6297 1.0612 13.6299 2.37012V10.667Z"></path></svg></div></div></div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-inited="2" data-sfc-root="c" data-xid="YruvMc" jsaction="rcuQ6b:&QRmWGc_76|npT2md" jscontroller="kSwcXe#M7eMqf" jsuid="QRmWGc_76"><div class="OUQe0e" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="YHsVn" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-ved="0CAAQkK0UahcKEwiYxbj1t8CWAxUAAAAAHQAAAAAQQQ"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="bQ0Yzc" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="1" data-ved="0CAEQp4QQahcKEwiYxbj1t8CWAxUAAAAAHQAAAAAQQQ" decode-data-ved="1" id="bkmrk-"><div class="" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg data-sae="" fill="currentColor" focusable="false" height="20px" viewbox="3 3 18 18" width="20px" xmlns="http://www.w3.org/2000/svg"><path d="M15.9229 20C15.3474 20 14.8569 19.7903 14.4512 19.3708C14.0453 18.9511 13.8424 18.4416 13.8424 17.8423C13.8424 17.7321 13.8721 17.5287 13.9315 17.2321L8.5781 13.9905C8.38163 14.1989 8.15541 14.3627 7.89946 14.4821C7.6435 14.6014 7.36688 14.661 7.06959 14.661C6.49465 14.661 6.00598 14.4517 5.60359 14.0333C5.2012 13.6148 5 13.1053 5 12.5048C5 11.9105 5.2015 11.4015 5.60451 10.9778C6.00751 10.554 6.49685 10.3421 7.07254 10.3421C7.36075 10.3421 7.63118 10.3989 7.88382 10.5125C8.13634 10.6261 8.35685 10.7812 8.54535 10.9778L13.9315 7.76009C13.9028 7.6636 13.8807 7.56667 13.8654 7.4693C13.8501 7.3718 13.8424 7.26585 13.8424 7.15144C13.8424 6.55664 14.0447 6.04937 14.4491 5.62962C14.8537 5.20988 15.3449 5 15.9227 5C16.4962 5 16.9857 5.20988 17.3914 5.62962C17.7971 6.04937 18 6.55766 18 7.15449C18 7.75386 17.7975 8.26335 17.3926 8.68298C16.9876 9.1026 16.4974 9.31241 15.9221 9.31241C15.64 9.31241 15.3747 9.25737 15.1261 9.14728C14.8776 9.03707 14.6582 8.88452 14.4679 8.68965L9.05328 11.8544C9.08602 11.9585 9.11104 12.0651 9.12834 12.1743C9.14575 12.2834 9.15446 12.3906 9.15446 12.496C9.15446 12.6013 9.14937 12.6992 9.13919 12.7898C9.12889 12.8805 9.11147 12.9742 9.08694 13.0711L14.4793 16.2913C14.6701 16.1006 14.8887 15.9512 15.1349 15.8432C15.3811 15.7351 15.6448 15.6811 15.9262 15.6811C16.503 15.6811 16.9928 15.8915 17.3957 16.3123C17.7986 16.733 18 17.2426 18 17.8409C18 18.4393 17.7977 18.9487 17.3931 19.3692C16.9884 19.7897 16.4983 20 15.9229 20ZM15.9218 18.7924C16.1836 18.7924 16.4013 18.7024 16.5748 18.5222C16.7482 18.3422 16.835 18.1165 16.835 17.8449C16.835 17.5762 16.7476 17.3497 16.573 17.1654C16.3983 16.981 16.182 16.8889 15.924 16.8889C15.6599 16.8889 15.4412 16.9816 15.2678 17.1671C15.0944 17.3527 15.0076 17.5779 15.0076 17.8427C15.0076 18.1135 15.0945 18.3396 15.2681 18.5207C15.4419 18.7019 15.6598 18.7924 15.9218 18.7924ZM7.07309 13.4534C7.33027 13.4534 7.54729 13.3633 7.72414 13.1832C7.90099 13.0032 7.98941 12.7774 7.98941 12.5059C7.98941 12.2372 7.90148 12.0107 7.72561 11.8263C7.54986 11.642 7.33205 11.5498 7.07217 11.5498C6.81487 11.5498 6.59938 11.6426 6.42572 11.828C6.25194 12.0135 6.16504 12.2387 6.16504 12.5036C6.16504 12.7703 6.25206 12.9953 6.42609 13.1784C6.60012 13.3617 6.81579 13.4534 7.07309 13.4534ZM15.9218 8.10484C16.1836 8.10484 16.4013 8.01356 16.5748 7.83102C16.7482 7.6486 16.835 7.42297 16.835 7.15411C16.835 6.88538 16.7476 6.66044 16.573 6.47929C16.3983 6.29815 16.182 6.20757 15.924 6.20757C15.6599 6.20757 15.4412 6.29808 15.2678 6.4791C15.0944 6.66012 15.0076 6.88436 15.0076 7.15182C15.0076 7.42271 15.0945 7.6493 15.2681 7.83159C15.4419 8.01375 15.6598 8.10484 15.9218 8.10484Z"></path></svg></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div><div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-using-an-ssh-key-is-" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="ilZyRc R7mRQb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div aria-hidden="false" data-animation-skip="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ved="0CAAQ_sYPahcKEwiYxbj1t8CWAxUAAAAAHQAAAAAQRQ"></div></div><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="TwCQauXjOOXT1e8PxOzOiQU"><div data-container-id="TwCQauXjOOXT1e8PxOzOiQU" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"></div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true">  
</div></div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" eid="TwCQauXjOOXT1e8PxOzOiQU">  
</div><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="xd3wOd_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="xd3wOd_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"xd3wOd_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQ2O0OegYIAAgCEAA" data-wiz-uids="xd3wOd_2" dir="ltr" jsaction="rcuQ6b:&xd3wOd_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="xd3wOd_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="xd3wOd_4"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="z34MU#CsVNRe" jsname="s7e4Od" jsuid="xd3wOd_5"></div><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&xd3wOd_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="xd3wOd_6"><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIBRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xd3wOd_k"><span data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-subtree="aimfl">Using an </span>**SSH key** is the absolute best security choice you could make. Even with 216,000 brute-force password guesses, it is mathematically impossible for those bots to break in because your server completely rejects password authentication for your key-based account.</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIBhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xd3wOd_s">Since you are already using **UFW**, you can easily block these relentless bots at the firewall layer. This is much more efficient because it drops their network traffic completely before it can even touch or slow down your SSH service.</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIBxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xd3wOd_z">Here is how to finalize and lock down your setup based on your configuration:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xd3wOd_15|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xd3wOd_15"></div><div aria-level="3" class="otQkpb" data-animation-nesting="" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sae="" data-sfc-cp="" data-sfc-root="ep" data-wiz-attrbind="aria-level=xd3wOd_16/fLk2Md" jsaction="" jscontroller="a7qCn#ZxCkTb" jsuid="xd3wOd_16" role="heading">1. Close the Root Exploit Completely</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAICBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xd3wOd_17">In Ubuntu, if `#PermitRootLogin prohibit-password` is commented out, the system defaults to allowing root login attempts under certain conditions. Since you are using SSH keys for your user account, you should explicitly deny the root user from ever logging in.</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAICRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xd3wOd_1e">Open your configuration file:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xd3wOd_1k|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xd3wOd_1k"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIChAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xd3wOd_1n,xd3wOd_1m" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xd3wOd_1l"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo nano /etc/ssh/sshd_config

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-16" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="TwCQauXjOOXT1e8PxOzOiQU"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="xd3wOd_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="xd3wOd_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"xd3wOd_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQ2O0OegYIAAgCEAA" data-wiz-uids="xd3wOd_2" dir="ltr" jsaction="rcuQ6b:&xd3wOd_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="xd3wOd_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="xd3wOd_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&xd3wOd_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="xd3wOd_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIChAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xd3wOd_1n,xd3wOd_1m" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xd3wOd_1l"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQh9gSegYIAAgKEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="xd3wOd_1o"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xd3wOd_1p/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=xd3wOd_1r/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xd3wOd_1p/ggNWmb" id=""></button></div></div></div></div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAICxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xd3wOd_1s">Add or modify this exact line (make sure there is no `#` symbol in front of it):</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xd3wOd_1z|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xd3wOd_1z"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xd3wOd_22,xd3wOd_21" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xd3wOd_20"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">text</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
PermitRootLogin no

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-17" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="TwCQauXjOOXT1e8PxOzOiQU"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="xd3wOd_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="xd3wOd_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"xd3wOd_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQ2O0OegYIAAgCEAA" data-wiz-uids="xd3wOd_2" dir="ltr" jsaction="rcuQ6b:&xd3wOd_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="xd3wOd_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="xd3wOd_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&xd3wOd_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="xd3wOd_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xd3wOd_22,xd3wOd_21" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xd3wOd_20"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQh9gSegYIAAgMEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="xd3wOd_23"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xd3wOd_24/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=xd3wOd_26/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xd3wOd_24/ggNWmb" id=""></button></div></div></div></div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xd3wOd_27">Save the file (`Ctrl+O`, `Enter`, `Ctrl+X`) and restart SSH:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xd3wOd_2g|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xd3wOd_2g"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xd3wOd_2j,xd3wOd_2i" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xd3wOd_2h"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo systemctl restart ssh

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-18" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="TwCQauXjOOXT1e8PxOzOiQU"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="xd3wOd_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="xd3wOd_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"xd3wOd_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQ2O0OegYIAAgCEAA" data-wiz-uids="xd3wOd_2" dir="ltr" jsaction="rcuQ6b:&xd3wOd_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="xd3wOd_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="xd3wOd_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&xd3wOd_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="xd3wOd_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xd3wOd_2j,xd3wOd_2i" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xd3wOd_2h"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQh9gSegYIAAgOEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="xd3wOd_2k"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xd3wOd_2l/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=xd3wOd_2n/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xd3wOd_2l/ggNWmb" id=""></button></div></div></div></div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xd3wOd_2o|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xd3wOd_2o"></div><div aria-level="3" class="otQkpb" data-animation-nesting="" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sae="" data-sfc-cp="" data-sfc-root="ep" data-wiz-attrbind="aria-level=xd3wOd_2p/fLk2Md" jsaction="" jscontroller="a7qCn#ZxCkTb" jsuid="xd3wOd_2p" role="heading">2. Block the Worst Attacker in UFW Immediately</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIDxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xd3wOd_2q">Fail2ban works dynamically, but for an IP address as aggressive as `103.137.184.170`, you should block it permanently at the firewall level so it cannot access your Nextcloud instance or any other port:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xd3wOd_2x|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xd3wOd_2x"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIEBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xd3wOd_30,xd3wOd_2z" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xd3wOd_2y"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo ufw insert 1 deny from 103.137.184.170 to any

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-19" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="TwCQauXjOOXT1e8PxOzOiQU"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="xd3wOd_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="xd3wOd_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"xd3wOd_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQ2O0OegYIAAgCEAA" data-wiz-uids="xd3wOd_2" dir="ltr" jsaction="rcuQ6b:&xd3wOd_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="xd3wOd_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="xd3wOd_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&xd3wOd_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="xd3wOd_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIEBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xd3wOd_30,xd3wOd_2z" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xd3wOd_2y"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQh9gSegYIAAgQEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="xd3wOd_31"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xd3wOd_32/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=xd3wOd_34/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xd3wOd_32/ggNWmb" id=""></button></div></div></div></div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIERAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xd3wOd_35">*(Using `insert 1` ensures this rule sits at the very top of your firewall checklist, blocking the packet instantly).*</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xd3wOd_3d|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xd3wOd_3d"></div><div aria-level="3" class="otQkpb" data-animation-nesting="" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sae="" data-sfc-cp="" data-sfc-root="ep" data-wiz-attrbind="aria-level=xd3wOd_3e/fLk2Md" jsaction="" jscontroller="a7qCn#ZxCkTb" jsuid="xd3wOd_3e" role="heading">3. Ultimate Security: Restrict Port 2010 to Your IP Only</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIEhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xd3wOd_3f">If you always connect to your server from the same location (like your home, office, or a static VPN IP), you can tell UFW to block the *entire world* from port 2010 except for you.</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIExAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xd3wOd_3m">First, delete your generic open SSH rule:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xd3wOd_3s|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xd3wOd_3s"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIFBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xd3wOd_3v,xd3wOd_3u" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xd3wOd_3t"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo ufw delete allow 2010/tcp

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-20" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="TwCQauXjOOXT1e8PxOzOiQU"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="xd3wOd_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="xd3wOd_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"xd3wOd_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQ2O0OegYIAAgCEAA" data-wiz-uids="xd3wOd_2" dir="ltr" jsaction="rcuQ6b:&xd3wOd_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="xd3wOd_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="xd3wOd_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&xd3wOd_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="xd3wOd_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIFBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xd3wOd_3v,xd3wOd_3u" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xd3wOd_3t"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQh9gSegYIAAgUEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="xd3wOd_3w"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xd3wOd_3x/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=xd3wOd_3z/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xd3wOd_3x/ggNWmb" id=""></button></div></div></div></div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIFRAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xd3wOd_40">Next, allow **only your specific IP address** to see port 2010:</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xd3wOd_47|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xd3wOd_47"></div><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIFhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xd3wOd_4a,xd3wOd_49" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xd3wOd_48"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="z0e9Qd" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="vVRw1d" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">bash</div></div><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div></div></div></div></div></div></div></div></div></div></div></div>```
sudo ufw allow from YOUR_HOME_IP to any port 2010 proto tcp

```

<div class="tonYlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 24px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-tr-rsts="false" id="bkmrk-use-code-with-cautio-21" jsmodel="CPTaDd LUQCCe pRMv2d URIiOb" jsname="RH7zg"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);"><div class="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-streaming-container="" eid="TwCQauXjOOXT1e8PxOzOiQU"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="CKgc1d" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-scope-id="turn" data-sfc-root="ep" jsaction="" jscontroller="uUCgYd#gXWog" jsmodel="p9hQFe CPTaDd LUQCCe wuVnCd KgpZcc pRMv2d" jsname="CS7uPe" jsuid="xd3wOd_0"><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-root="c" data-subtree="aimc" decode-data-ved="1" jsaction="" jscontroller="v48bt#VKyOOd" jsuid="xd3wOd_3"><div class="Zkbeff" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["esHW8","[{\"s\":3,\"i\":\"xd3wOd_1/OZSNke\"}]"],["dMtGDc","[false]"]]]" data-hveid="CAAIAhAA" data-processed="true" data-sfc-inited="2" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQ2O0OegYIAAgCEAA" data-wiz-uids="xd3wOd_2" dir="ltr" jsaction="rcuQ6b:&xd3wOd_1|npT2md" jscontroller="nfCumd#tcxHxb" jsuid="xd3wOd_1"><div class="pWvJNd" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-root="ep" jsaction="" jscontroller="zp3Dsd#fP0RJ" jsuid="xd3wOd_4"><div class="mZJni Dn7Fzd" data-container-id="main-col" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-ctx-provider="[[["dMtGDc","[false]"]]]" data-processed="true" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQ3KYQegYIAAgCEAE" data-xid="VpUvz" dir="ltr" jsaction="cC6SSe:&xd3wOd_6|mNzCb;" jscontroller="Aoijq#INwBm" jsname="KFl8ub" jsuid="xd3wOd_6"><div class="r1PmQe" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIFhAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" data-wiz-uids="xd3wOd_4a,xd3wOd_49" jsaction="" jscontroller="HP6Sjf#lcO7sb" jsuid="xd3wOd_48"><div data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true"><div class="pHpOfb" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="pCTyYe" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" dir="ltr"></div></div><div class="LIBz9e" data-animation-atomic="" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 1px solid rgb(240, 242, 245);" data-sae=""><div class="P8PNlb" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 12px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);">Use code with caution.</div><div data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-sfc-cp="" data-sfc-root="ep" data-ved="2ahUKEwilx47GvMCWAxXlafUHHUS2M1EQh9gSegYIAAgWEAI" jsaction="" jscontroller="cXTEid#e0nEwf" jsuid="xd3wOd_4b"><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xd3wOd_4c/ggNWmb"><span class="UTNHae" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-sfc-root="c" data-wiz-attrbind="class=xd3wOd_4e/ggNWmb"></span><span aria-hidden="true" class="I36Cje" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);"><svg aria-hidden="true" fill="currentColor" height="18px" viewbox="0 -960 960 960" width="18px"><path d="M360-240q-33 0-56.5-23.5T280-320v-480q0-33 23.5-56.5T360-880h360q33 0 56.5 23.5T800-800v480q0 33-23.5 56.5T720-240H360Zm0-80h360v-480H360v480ZM200-80q-33 0-56.5-23.5T120-160v-560h80v560h440v80H200Zm160-240v-480 480Z"></path></svg></span></button><div class="ypuoue" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);">  
</div><button aria-describedby="" aria-label="Copy code text to clipboard." class="FTsWP RmjGdc IsqrXb" data-complete="true" data-copy-service-computed-style="font-family: Arial; font-size: 13.3333px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(86, 89, 94);" data-is-tooltip-wrapper="undefined" data-sfc-cp="" data-sfc-root="c" data-tooltip-classes="undefined" data-tooltip-id="undefined" data-wiz-attrbind="disabled=xd3wOd_4c/ggNWmb" id=""></button></div></div></div></div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIFxAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xd3wOd_4f">*(Replace `YOUR_HOME_IP` with your actual public IP address, which you can find by searching "what is my IP" on your computer).*</div><div class="n6owBd awi2gc" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-hveid="CAAIGBAA" data-processed="true" data-sfc-cp="" data-sfc-root="ep" jsaction="" jscontroller="TDBkbc#Ml18Xb" jsuid="xd3wOd_4n">Once you run this, the 216,000 automated bot attempts will instantly drop to zero because their network packets will be silently ignored by UFW.</div><div class="yhAwj" data-complete="true" data-copy-service-computed-style="font-family: "Google Sans", Arial, sans-serif, "Noto Color Emoji"; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(10, 10, 10);" data-processed="true" data-sfc-cp="" data-sfc-inited="2" data-sfc-root="ep" jsaction="rcuQ6b:&xd3wOd_4t|npT2md" jscontroller="UTzWVc#U8DOt" jsuid="xd3wOd_4t"></div>---

</div></div></div></div></div></div></div></div></div>

# Security against Brute attack

This volume of failed logins is **normal background noise** for any server with port 22 open to the internet — automated bots scan all IPv4 addresses and start hammering common usernames within minutes of your server going online. Your fail2ban and UFW are doing exactly what they're supposed to: stopping them from actually getting in.

That said, you can eliminate most of this traffic entirely. If you only have SSH keys enabled, the thousands of password guesses are harmless and simply never succeed.

## Is this normal?

<div class="group/final-text flex flex-col min-w-0 gap-4" data-workflow-final-text="" id="bkmrk-1564-failed-logins-%2F"><div class="break-words min-w-0 flex-1"><div><div class="prose dark:prose-invert inline leading-relaxed break-words min-w-0 [word-break:break-word] [&_>*:first-child]:mt-0 [&_>*:last-child]:mb-0" data-renderer="lm">- **1564 failed logins / 192 bans / 7329 firewall blocks** is a typical-to-calm level for a public server. Many freshly-unprotected boxes see tens of thousands of attempts daily.
- The important test: do any of the failed logins *succeed*? If they don't (key-based auth only), this is nuisance traffic, not a breach.
- One thing worth checking: if most failures come from a **single IP**, fail2ban may be misconfigured or its filter may not match your auth log format — otherwise it should be banning that IP. Verify with `sudo fail2ban-client status sshd`.

</div></div></div></div>## What you can do to cut it down

The single most effective change is to make password login impossible, so the brute-force attempts can never succeed:

<div class="group/final-text flex flex-col min-w-0 gap-4" data-workflow-final-text="" id="bkmrk-bash-%23-%2Fetc%2Fssh%2Fsshd"><div class="break-words min-w-0 flex-1"><div><div class="prose dark:prose-invert inline leading-relaxed break-words min-w-0 [word-break:break-word] [&_>*:first-child]:mt-0 [&_>*:last-child]:mb-0" data-renderer="lm"><div class="w-full md:max-w-[90vw]"><figure class="relative flex w-full flex-col overflow-hidden rounded-lg bg-subtle font-mono font-medium text-primary selection:bg-super-soft selection:text-super-primary [&_.token.deleted]:!text-negative-primary [&_.token.inserted]:!text-positive-primary text-sm"><figcaption class="flex min-h-8 items-center justify-between gap-2 border-b border-subtlest bg-soft px-2 py-1 text-xs text-secondary">bash <div class="ml-auto flex items-center gap-2">  
</div></figcaption>`<span class="token token"># /etc/ssh/sshd_config.d/01-hardening.conf</span>PasswordAuthentication noKbdInteractiveAuthentication noPermitRootLogin noPubkeyAuthentication <span class="token token">yes</span>MaxAuthTries <span class="token token">3</span>LoginGraceTime <span class="token token">20</span>`</figure></div>- **Use SSH keys only** — this alone eliminates the overwhelming majority of brute-force risk.
- **Disable root login** (`PermitRootLogin no`) so attackers can't target root directly.
- **Rate-limit at the firewall**: `sudo ufw limit OpenSSH` (allows ~6 connections per 30s per IP, dropping brute-force spikes at the kernel level).
- **Use a non-standard port** (e.g., 2222) — reduces scanner traffic dramatically, though it's security-by-obscurity.
- **Restrict access** to known admin IPs or a VPN (Tailscale/WireGuard) if your IP is static — then port 22 isn't exposed at all.

</div></div></div></div>## Before you change anything

<div class="group/final-text flex flex-col min-w-0 gap-4" data-workflow-final-text="" id="bkmrk-confirm-key-based-lo"><div class="break-words min-w-0 flex-1"><div><div class="prose dark:prose-invert inline leading-relaxed break-words min-w-0 [word-break:break-word] [&_>*:first-child]:mt-0 [&_>*:last-child]:mb-0" data-renderer="lm">- Confirm key-based login **already works** from a fresh session before disabling passwords, or you'll lock yourself out.
- Keep one SSH session open, back up the config (`cp`, then `sshd -t` to validate syntax), then `sudo systemctl reload ssh` — not restart, so existing sessions survive.
- Check that your cloud provider has a web/serial console as a break-glass fallback.

</div></div></div></div>**Bottom line:** there's nothing special or alarming in your numbers — it's the standard pre-scan traffic every internet-exposed server receives. If you want to reduce it (and the log noise), the fixes are key-only auth + disable root + firewall rate limiting. Once that's in place, the 1564 failures are wasted effort against a door that's already locked.

Want me to check whether any of the failed logins actually succeeded on a real account, or walk through a specific hardening step?

<div id="bkmrk-used-ssh-keys-only-a"><div class="contents" dir="auto" lang="en"><div class="group group/user-bubble flex items-start justify-end gap-2"><div class="flex flex-col items-end gap-1 max-w-[600px]"><div class="inline-flex flex-col items-end relative"><div class="min-w-[48px] select-none p-3 bg-subtle rounded-2xl flex items-center justify-center"><span class="min-w-0 font-sans text-base text-primary font-normal select-text break-words selection:bg-super-selection selection:text-primary dark:selection:text-super-primary"><span class="flex min-w-0 max-w-full flex-col items-start"><span class="block min-w-0 max-w-full max-h-[144px] overflow-hidden"><span class="block max-w-full whitespace-pre-line break-words [word-break:break-word]">Used ssh keys only and disabled root login and I am using custom port 2010 for ssh. Is there anything if I changed ssh port for fail2ban ?</span></span></span></span></div></div></div></div></div></div><div class="contents" id="bkmrk-"><div class="flex flex-col min-w-0 text-secondary relative"><div class="flex items-center gap-2 relative group/tool-wrapper z-10"><div class="_sharedDuration_orhia_1 min-w-0 flex-1">  
</div><button aria-expanded="false" class="reset interactable min-w-0 flex items-center gap-2 w-fit max-w-full group/tool-button cursor-pointer" type="button"><svg class="inline-flex fill-current shrink-0 text-secondary  group-hover/tool-wrapper:text-primary" height="14" role="img" stroke-width="1.75" width="14"></svg></button></div><div class="relative">  
</div></div></div>Yes — you should update fail2ban so its **ban action** targets your port 2010. The good news: fail2ban detects attacks by parsing your auth log, not by watching ports, so it still *sees* the failed logins on any port. The problem is only the ban itself — if fail2ban's action still blocks port 22 (or the `OpenSSH` app profile that points to 22), the banned IPs aren't actually being blocked from connecting to 2010.

## What to change

On Ubuntu with UFW, the cleanest way is a dedicated UFW application profile for port 2010, then point the sshd jail at it.

**1. Add an app profile** for your port in `/etc/ufw/applications.d/openssh-server`:

<div class="group/final-text flex flex-col min-w-0 gap-4" data-workflow-final-text="" id="bkmrk-text-%5Bopenssh-2010%5D-"><div class="contents" dir="auto" lang="en"><div class="break-words min-w-0 flex-1"><div><div class="prose dark:prose-invert inline leading-relaxed break-words min-w-0 [word-break:break-word] [&_>*:first-child]:mt-0 [&_>*:last-child]:mb-0" data-renderer="lm"><div class="w-full md:max-w-[90vw]"><figure class="relative flex w-full flex-col overflow-hidden rounded-lg bg-subtle font-mono font-medium text-primary selection:bg-super-soft selection:text-super-primary [&_.token.deleted]:!text-negative-primary [&_.token.inserted]:!text-positive-primary text-sm"><figcaption class="flex min-h-8 items-center justify-between gap-2 border-b border-subtlest bg-soft px-2 py-1 text-xs text-secondary">text <div class="ml-auto flex items-center gap-2">  
</div></figcaption>`[OpenSSH-2010]title=Secure shell server (custom)description=OpenSSH on custom portports=2010/tcp`</figure></div></div></div></div></div></div>**2. Point the sshd jail at it** in `/etc/fail2ban/jail.local`:

<div class="group/final-text flex flex-col min-w-0 gap-4" data-workflow-final-text="" id="bkmrk-text-%5Bsshd%5D-enabled-"><div class="contents" dir="auto" lang="en"><div class="break-words min-w-0 flex-1"><div><div class="prose dark:prose-invert inline leading-relaxed break-words min-w-0 [word-break:break-word] [&_>*:first-child]:mt-0 [&_>*:last-child]:mb-0" data-renderer="lm"><div class="w-full md:max-w-[90vw]"><figure class="relative flex w-full flex-col overflow-hidden rounded-lg bg-subtle font-mono font-medium text-primary selection:bg-super-soft selection:text-super-primary [&_.token.deleted]:!text-negative-primary [&_.token.inserted]:!text-positive-primary text-sm"><figcaption class="flex min-h-8 items-center justify-between gap-2 border-b border-subtlest bg-soft px-2 py-1 text-xs text-secondary">text <div class="ml-auto flex items-center gap-2">  
</div></figcaption>`[sshd]enabled = trueport = 2010action = ufw[application="OpenSSH-2010", blocktype=reject]logpath = %(sshd_log)sbackend = %(sshd_backend)s`</figure></div></div></div></div></div></div>**3. Reload** and verify:

<div class="group/final-text flex flex-col min-w-0 gap-4" data-workflow-final-text="" id="bkmrk-bash-sudo-ufw-allow-"><div class="contents" dir="auto" lang="en"><div class="break-words min-w-0 flex-1"><div><div class="prose dark:prose-invert inline leading-relaxed break-words min-w-0 [word-break:break-word] [&_>*:first-child]:mt-0 [&_>*:last-child]:mb-0" data-renderer="lm"><div class="w-full md:max-w-[90vw]"><figure class="relative flex w-full flex-col overflow-hidden rounded-lg bg-subtle font-mono font-medium text-primary selection:bg-super-soft selection:text-super-primary [&_.token.deleted]:!text-negative-primary [&_.token.inserted]:!text-positive-primary text-sm"><figcaption class="flex min-h-8 items-center justify-between gap-2 border-b border-subtlest bg-soft px-2 py-1 text-xs text-secondary">bash <div class="ml-auto flex items-center gap-2">  
</div></figcaption>`<span class="token token">sudo</span> ufw allow <span class="token token">2010</span>/tcp comment <span class="token token">'ssh'</span><span class="token token">sudo</span> fail2ban-client reload<span class="token token">sudo</span> fail2ban-client status sshd`</figure></div></div></div></div></div></div>The `port = 2010` line tells fail2ban the port to report/ban, and the `action = ufw[application="OpenSSH-2010"]` makes UFW insert a `deny from <ip> to any app OpenSSH-2010` rule that actually drops traffic to 2010.

## Important caveat

There's a known failure mode: if you leave fail2ban's default `iptables`/`ufw` action pointing at 22 or forget to update it, `fail2ban-client status sshd` will show bans, but `ufw status` will have no matching deny rules and the IPs keep reaching 2010 — exactly the "fails to block ssh on custom port" problem.

Two checks to confirm it's working after changing the port:

<div class="group/final-text flex flex-col min-w-0 gap-4" data-workflow-final-text="" id="bkmrk-sudo-fail2ban-client"><div class="contents" dir="auto" lang="en"><div class="break-words min-w-0 flex-1"><div><div class="prose dark:prose-invert inline leading-relaxed break-words min-w-0 [word-break:break-word] [&_>*:first-child]:mt-0 [&_>*:last-child]:mb-0" data-renderer="lm">- `sudo fail2ban-client status sshd` — shows the banned IP count.
- `sudo ufw status numbered` — verify a matching `DENY ... to 2010/tcp` (or `to ... app OpenSSH-2010`) rule exists for recently banned IPs.

</div></div></div></div></div>If you'd rather not maintain a custom profile, the alternative is the simpler stock line `action = ufw` with `banaction = ufw` under `[DEFAULT]` — but that still binds to the `port = 2010` you set, so make sure that's updated.

One extra tip since you moved to 2010: add a second jail watching for activity on port 22 too — legacy scanners may still probe it, and banning them at 22 keeps noise out of your UFW logs.

<div id="bkmrk-%5Bopenssh-2010%5D-title"><div class="contents" dir="auto" lang="en"><div class="group group/user-bubble flex items-start justify-end gap-2"><div class="flex flex-col items-end gap-1 max-w-[600px]"><div class="inline-flex flex-col items-end relative"><div class="min-w-[48px] select-none p-3 bg-subtle rounded-2xl flex items-center justify-center"><span class="min-w-0 font-sans text-base text-primary font-normal select-text break-words selection:bg-super-selection selection:text-primary dark:selection:text-super-primary"><span class="max-w-full mb-1 border-subtlest ring-subtlest divide-subtlest inline-flex items-center"><span class="min-w-0 border-l-2 border-subtle pl-3 font-sans text-sm text-secondary  selection:bg-super-selection selection:text-primary dark:selection:text-super-primary line-clamp-1">\[OpenSSH-2010\] title=Secure shell server (custom) description=OpenSSH on custom port ports=2010/tcp</span></span><span class="flex min-w-0 max-w-full flex-col items-start"><span class="block min-w-0 max-w-full max-h-[144px] overflow-hidden"><span class="block max-w-full whitespace-pre-line break-words [word-break:break-word]">Just append this?</span></span></span></span></div></div></div></div></div></div>Yes — just append that block to the end of `/etc/ufw/applications.d/openssh-server`. Adding a second `[OpenSSH-2010]` section alongside the existing `[OpenSSH]` (port 22) profile is fine; UFW supports multiple profiles in one file and each is referenced by its own bracketed name.

<div class="group/final-text flex flex-col min-w-0 gap-4" data-workflow-final-text="" id="bkmrk-bash-sudo-nano-%2Fetc%2F"><div><div class="contents" dir="auto" lang="en"><div class="break-words min-w-0 flex-1"><div><div class="prose dark:prose-invert inline leading-relaxed break-words min-w-0 [word-break:break-word] [&_>*:first-child]:mt-0 [&_>*:last-child]:mb-0" data-renderer="lm"><div class="w-full md:max-w-[90vw]"><figure class="relative flex w-full flex-col overflow-hidden rounded-lg bg-subtle font-mono font-medium text-primary selection:bg-super-soft selection:text-super-primary [&_.token.deleted]:!text-negative-primary [&_.token.inserted]:!text-positive-primary text-sm"><figcaption class="flex min-h-8 items-center justify-between gap-2 border-b border-subtlest bg-soft px-2 py-1 text-xs text-secondary">bash <div class="ml-auto flex items-center gap-2">  
</div></figcaption>`<span class="token token">sudo</span> <span class="token token">nano</span> /etc/ufw/applications.d/openssh-server`</figure></div></div></div></div></div></div></div>Append at the bottom:

<div class="group/final-text flex flex-col min-w-0 gap-4" data-workflow-final-text="" id="bkmrk-text-%5Bopenssh-2010%5D--1"><div><div class="contents" dir="auto" lang="en"><div class="break-words min-w-0 flex-1"><div><div class="prose dark:prose-invert inline leading-relaxed break-words min-w-0 [word-break:break-word] [&_>*:first-child]:mt-0 [&_>*:last-child]:mb-0" data-renderer="lm"><div class="w-full md:max-w-[90vw]"><figure class="relative flex w-full flex-col overflow-hidden rounded-lg bg-subtle font-mono font-medium text-primary selection:bg-super-soft selection:text-super-primary [&_.token.deleted]:!text-negative-primary [&_.token.inserted]:!text-positive-primary text-sm"><figcaption class="flex min-h-8 items-center justify-between gap-2 border-b border-subtlest bg-soft px-2 py-1 text-xs text-secondary">text <div class="ml-auto flex items-center gap-2">  
</div></figcaption>`[OpenSSH-2010]title=Secure shell server (custom)description=OpenSSH on custom portports=2010/tcp`</figure></div></div></div></div></div></div></div>Two quick notes:

<div class="group/final-text flex flex-col min-w-0 gap-4" data-workflow-final-text="" id="bkmrk-don%27t-add-a-second%C2%A0%5B"><div><div class="contents" dir="auto" lang="en"><div class="break-words min-w-0 flex-1"><div><div class="prose dark:prose-invert inline leading-relaxed break-words min-w-0 [word-break:break-word] [&_>*:first-child]:mt-0 [&_>*:last-child]:mb-0" data-renderer="lm">- Don't add a second `[OpenSSH]` with the same name, or UFW will complain about a duplicate app — a uniquely-named block is the correct approach.
- After saving, re-read the profile list and confirm it appears:

<div class="w-full md:max-w-[90vw]"><figure class="relative flex w-full flex-col overflow-hidden rounded-lg bg-subtle font-mono font-medium text-primary selection:bg-super-soft selection:text-super-primary [&_.token.deleted]:!text-negative-primary [&_.token.inserted]:!text-positive-primary text-sm"><figcaption class="flex min-h-8 items-center justify-between gap-2 border-b border-subtlest bg-soft px-2 py-1 text-xs text-secondary">bash <div class="ml-auto flex items-center gap-2">  
</div></figcaption>`<span class="token token">sudo</span> ufw app list<span class="token token"># You should now see both:</span><span class="token token">#   OpenSSH</span><span class="token token">#   OpenSSH-2010</span>`</figure></div></div></div></div></div></div></div>Then you can use it in boththe firewall rule and the fail2ban action:

<div class="group/final-text flex flex-col min-w-0 gap-4" data-workflow-final-text="" id="bkmrk-bash-sudo-ufw-allow--1"><div><div class="contents" dir="auto" lang="en"><div class="break-words min-w-0 flex-1"><div><div class="prose dark:prose-invert inline leading-relaxed break-words min-w-0 [word-break:break-word] [&_>*:first-child]:mt-0 [&_>*:last-child]:mb-0" data-renderer="lm"><div class="w-full md:max-w-[90vw]"><figure class="relative flex w-full flex-col overflow-hidden rounded-lg bg-subtle font-mono font-medium text-primary selection:bg-super-soft selection:text-super-primary [&_.token.deleted]:!text-negative-primary [&_.token.inserted]:!text-positive-primary text-sm"><figcaption class="flex min-h-8 items-center justify-between gap-2 border-b border-subtlest bg-soft px-2 py-1 text-xs text-secondary">bash <div class="ml-auto flex items-center gap-2">  
</div></figcaption>`<span class="token token">sudo</span> ufw allow <span class="token token">'OpenSSH-2010'</span> comment <span class="token token">'ssh'</span><span class="token token">sudo</span> fail2ban-client reload`</figure></div></div></div></div></div></div></div>If `ufw app list` doesn't show the new profile after saving, just re-run `sudo ufw app update OpenSSH-2010` (or reload UFW) to refresh its parsed application definitions.