網絡技術日誌

關於 PHP, Linux, Open Source 及個人生活記載的網誌。

Entries for February, 2010

Linux: 操作包含特殊字元的檔案

在 Unix 或 Linux 下很多特殊字元也是指令的一部份,例如空格 (” “)、問號 (“?”) 及橫線 (“-”) 等。所以如果檔案名稱包含了一些特殊字元,在操作上便會出現錯誤,例如: # touch -foo.txt touch: invalid option — ‘o’ Try `touch –help’ for more information. # touch –foo.txt touch: unrecognized option ‘–foo.txt’ Try `touch –help’ for more information. 上面輸入了兩行指令,分別用 touch 建立檔案 “-foo.txt” 及 “–foo.txt”,但同樣發生錯誤。要解決這個問題,只要在指令後面加上兩個橫線 “–” 即可,例如: # touch — –foo.txt # touch — -foo.txt 而這個方法同樣可以在其他檔案操作指令使用,例如 [...]

Leave a Comment

使用 PHP GZIP 使網頁提速

GZIP 是一種壓縮技術,是在伺服器上將頁面壓縮,傳到用戶的瀏覽器再解壓。在 PHP 實要 GZIP 壓縮可以這樣做: PLAIN TEXT PHP: <?php if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')){     ob_start("ob_gzhandler"); }else{     ob_start(); } ?>

Leave a Comment

執行 sudo 時電郵通知

sudo 提供了簡單的方法追蹤執行紀錄,其中一項就是當透過 sudo 執行 指令時發送電郵到指定電郵地址,方法如下: 1. 開啟 sudo 的設定檔: visudo 2. 加入下面兩行: mailto "admin@localhost" mail_always on mailto 後面是設定發送電郵通知的地址。 mail_always 預設是 off,開啟後會在每次執行 sudo 後發出電郵通知。

Leave a Comment

Iptables 限制每個 ip 連線數

如果在 Linux 下要限制每個 ip 的連線數,可以透過 iptables 實現。詳細指令語法如下: /sbin/iptables -A INPUT -p tcp --syn --dport 22 -m connlimit --connlimit-above 3 -j REJECT 限制每個 ip 只可以有 3 個 ssh 連線 (預設 ssh 使用 port 22)。 /sbin/iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 20 -j REJECT --reject-with tcp-reset 只接受每個 ip 20 個 http 連線 [...]

Leave a Comment

ProFTPd 登入援慢問題

在安裝 ProFTPd 後,會發覺登入時非常援慢,但只要登入成功後,速度就會變得很暢順。 造成這個問題的原因是 ProFTPd 預設在登入時會做「反查」的動作,解決方法是將 ProFTPd 設定為不做「反查」。方法如下: 1. 開啟 proftpd.conf,一般上檔案位置會是 /etc/proftpd.conf 或 /usr/local/etc/proftpd.conf 2. 加入以下兩行: UseReverseDNS off IdentLookups off 3. 重新啟動 ProFTPd。

Leave a Comment

Linux 系統管理電子書

The Free Technology Academy (FTA) 釋出一本免費電子書 "The GNU/Linux operating system",內容主要圍繞系統管理,例如如何安裝及設定多種不同的伺服器及優化系統等。 官方網站介紹: The GNU/Linux systems have reached an important level of maturity, allowing to integrate them in almost any kind of work environment, from a desktop PC to the sever facilities of a big company. In the module called "The GNU/Linux operating system", the main contents [...]

Leave a Comment

PHP 免費線上電子書 – Practical PHP Programming

Practical PHP Programming 是 PHP 免費線上電子書,比較適合對 PHP 有基礎認識的朋友,以下為電子書目錄: 1. Preface 2. Introducing PHP 3. Simple variables and operators 4. Functions 5. Arrays 6. Objects 7. HTML Forms 8. Files 9. Databases 10. Cookies and Sessions 11. Multimedia 12. XML & XSLT 13. Output Buffering 14. Java and COM 15. Networks 16. Miscellaneous topics 17. Security [...]

Leave a Comment

netstat 檢查不尋常連線

netstat 是一個十分好用的網絡管理工具,而其中一個用途是查看不尋常連線,例如當一個 IP 發送大量連線到伺服器,那麼伺服器很大機會是否遭受 DoS 或 DDoS 攻擊。 以下是一些實用的 netstat 語法,可以檢查主機的連線數量: netstat -na 顯示主機上所有已建立的連線。 netstat -an | grep :80 | sort 顯示所有 port 80 的連線,並把結果排序。 netstat -n -p|grep SYN_REC | wc -l 列出主機上有多少個 SYNC_REC,一般上這個數字應該相當低。 netstat -n -p | grep SYN_REC | sort -u 同樣是列出 SYNC_REC,但不只列出數字,而是將每個 SYNC_REC 的連線列出。 netstat -n -p | grep SYN_REC | awk [...]

Leave a Comment