Tag: Linux
安裝、更新及管理套件是系統管理員的日常維護工作,以下文章會示範在 Ubuntu 下,列出所有已安裝套件,及查詢套件是否有安裝的方法。 apt apt 是指令模式的套件管理工具, 要列出所有已安裝的套件: $ sudo apt list –installed 由於安裝的套件有很多, 最好使用 pipe 將結果輸出到 head 或 less 指令顯示: $ sudo apt list –installed | head 或 $ …
在預設的情況下, HTTP 的 Header 會包含了 Web Server 及 PHP 的版本, 基於安全理由, 可以用以下方法隱藏 Apache, Nginx 及 PHP 的版本資訊。 Apache 開啟 Apache 的 httpd.conf, CentOS 預設位置是 /etc/httpd/conf/httpd.conf: # vi /etc/httpd/conf/httpd.conf 找到 …
系統管理員很多時也有多台伺服器需要管理, 以下會示範如何透過 SSH 在遠端主機執行指令, 並不用輸入密碼。 本機設定 首先在本機用 ssh-keygen 建立 private key 及 public key, 對於 ssh-keygen 的提問, 直接按 Enter 鍵即可: $ ssh-keygen -t rsa Generating public/private rsa key pair. …
在 Linux CLI 下可以用 grep 指令, 將檔案包含有指定字串的行印出, 或者配合 -c 參數直接印出匹配的行數, 例如: $ grep -c string filename.txt 如果在 Shell Script 要檢查檔案是否有指定字串, 當然可以檢查以上指令輸出的數值, 但另一個更方便的方法, 是用 grep 的 -q 參數, 具體寫法是這樣: grep …
什麼是反向代理 Reverse Proxy? 反向代理是在真實伺服器與客戶端間的代理伺服器, 當使用者透過客戶端 (瀏覽器) 訪問網站時, 反向代理伺服器會將請求轉送到背後的真實伺服器, 再將網站的結果傳送給客戶端。真實伺服器可能是本機的其他 Port, 也可能在內部網路, 或者在其他外部網路, 這樣使用者不會知道真實的伺服器在那裡, 可以隱藏真正伺服器的位置, 而且也可以實現 load balancing. 安裝 Nginx 可以用 yum 或 apt-get 安裝: $ sudo yum install nginx …
在 Apache 要設定密碼保護目錄, 可以用 .htaccess 及 .htpasswd 實現, 但在 Nginx 不支援 .htaccess.. 以下是 Nginx 設定密碼保護目錄的方法。 1. 建立使用者名稱及密碼 首先需要建立一個密碼檔, 裡面包含了使用者名稱, 以及加密了的密碼, 如果系統有安裝 Apache, 可以用以下語法建立密碼檔: # htpasswd -c /path/to/file/.htpasswd username 然後跟著指示設定密碼即可。 …
PuTTY 是很多人都用的 Windows SSH 軟體, PuTTY 包括主機 Sessions 的設定儲存在 Registry, 以下是將 Windows 下的 PuTTY 設定備份到 Ubuntu Linux 的 PuTTY 的方法。 首先將 Windows 下的 PuTTY 備份, 開啟 Windows 的指令模式, 只要在 …
用 Linux 發行版的 ISO 映像檔製作成 USB 開機碟後, 往後在安裝系統時會很方便, 尤其對於一些沒有 CD/DVD drive 的 laptop, 以下會以 Ubuntu 18.04 為例, 建立一枝 USB 開機碟, 可以用作安裝及試用 Ubuntu。 有很多 GUI 工具可以製作 USB 開機碟, 以下會紀錄在 CLI …
Apache 配置 PHP 一般會預設用 mod_php 的方法安裝, 安裝 Nginx 便會使用 PHP-FPM。但如果在 Apache 不想使用預設的 prefork 作為 MPM (通常基於效能因素), 想使用 worker 或 event, 便需要使用 PHP-FPM 的方法安裝 PHP。 本文會示範在 CentOS 7 安裝 Apache …
測試主機的回應時間很多時都會用到, 而 cURL 可以自訂輸出的格式, 以取得主機的回應時間。 首先建立儲存 cURL 格式的樣案: $ vi curl-format.txt 加入以下內容: 然後執行以下指令測試主機的回應時間: 然後會輸出類似以下的結果: 上面的 cURL 指令會測試 https://www.google.com/ 的回應時間, 將網址換成要測試的網址即可。