Category: Linux

Rocky Linux 安裝 LEMP – Nginx, MariaDB, PHP

在這篇文章中,我們將介紹如何在 Rocky Linux 上安裝 LEMP – Nginx、MariaDB 和 PHP。LEMP 是一個強大的 Web 伺服器組合,廣泛用於託管和開發網站。 1 – 更新系統 在安裝任何軟體之前,請確保您的 Rocky Linux 系統已經更新至最新版本。在終端機中執行以下指令: $ sudo dnf update 2 – 安裝 Nginx Nginx 是一個開源的高效 …

iptables 禁止 port scan

當維護一個伺服器或網路時,可能會遭遇來自不良攻擊者的 port scan 攻擊。這種攻擊通常會掃描目標網段中所有可用的 port,以尋找可以利用的漏洞和弱點。為了保護您的系統和數據安全,您可以使用 iptables 來禁止 port scan 攻擊。 以下是一些常用的 iptables 規則可以幫助您防止 port scan 攻擊。 1. 只允許特定的 port 被掃描 您可以使用以下指令指定只允許特定的 port 被掃描: iptables -A INPUT -p tcp –dport …

Shell Script 限制執行時間

在撰寫 Shell Script 時,有時會遇到需要限制程式執行時間的情況,例如防止程式無限執行或避免程式佔用過多系統資源等。以下是一些常用方法可以幫助您限制 Shell Script 的執行時間。 1. 使用 timeout 命令 timeout 命令可以限制某個命令或腳本的執行時間,當時間到期時它會向該命令或腳本發送 SIGTERM 信號以終止其執行。例如: timeout 10s ./myscript.sh 這條命令將執行 myscrip.sh 腳本,並限制其執行時間為 10 秒。 2. 使用 ulimit 命令 ulimit 命令可以限制某個使用者對系統資源的使用,包括 …

Ubuntu 22.04 LTS 安裝 iostat

iostat 是檢視 block devices I/O 統計資料的工具,對於監測硬碟工作狀態、檢查效能瓶頸及硬碟工作狀況十分有用。以下是在 Ubuntu 22.04 LTS 安裝 iostat 的方法及使用。 iostat 預設已經放在 Ubuntu 的 base repository 的 stsstat 套件內,執行以下指令安裝: $ sudo apt install sysstat 執行以上指令安裝 iostat 後便可以使用,以下是 …

建立 subdomain 的 MX 及 TXT 紀錄

一個網域下會建立副域名很常見, 只要建立 A record 或 CNAME record 即可。另一個情況是對 subdomain 建立 MX 及 TXT 紀錄, 例如網域是 mydomain.ltd, 分別想建立 @local.mydomain.ltd 及 @member.mydomain.ltd 的電郵。 除非有其他原因, 否則便不用額外建立一個 subdomain 的 zone, 可以在原來網域的 zone 內加入相關 …

Shell Script 建立臨時檔案

在寫 Shell Script 時, 有時需要建立臨時檔案, 很多時會用 temp 或 tmp 這類副檔名實現。但如果這些檔案名稱和其他 process 的臨時檔案名稱相同, 便會錯誤地覆寫其他臨時檔案的內容。 在 Linux 系統可以用 mktemp 工具, 它可以很簡單地建立, 使用及移除不會重覆檔名的臨時檔案。 執行 mktemp 時, 它們預設會出檔案名稱及路徑: $ mktemp /tmp/tmp.94uGx1HYiS 如果沒有指定路徑, 臨時檔案的的位置是 …

Fail2Ban 配合 CloudFlare 封鎖 IP

Fail2Ban 是阻擋暴力攻擊的工具,例如發現指定次數的登入失敗後,會自動把遠端的 IP 地址封鎖,在設定的時間過後才會對封鎖的 IP 開放。Fail2Ban 的用途非常廣泛,除了一般的 SSH 登入及電郵登入外,也可以對一些針對網頁的攻擊進行封鎖。 但如果網頁使用了 CloudFlare 的話,那 Fail2Ban 只會封鎖 CloudFlare 的 IP,而 CloudFlare 的那麼多,很多時即使封鎖了幾個 IP,攻擊者還是可以繼續進行攻擊及掃描漏洞。 要解決這個問題,可以使用 CloudFlare 的 API,在 Fail2Ban 設定把要封鎖的 IP 傳送給 CloudFlare,在 …