Posts Tagged ‘ linux

.htaccess 的權限認證方式

「.htaccess 驗證」讓你不用寫程式,就可以用最簡單的方式做出「網頁登入」的功能,限制哪些用戶進到網頁的某一層目錄。

建立用戶驗證資料

建立用戶驗證檔

建立用戶驗證檔,並新增一組帳號及密碼:

htpasswd -c /path/to/.htusers UserName1

這裡所產生的 .htusers 是一個文字檔,裡面會有用戶名稱及編碼過的密碼。第一次建立檔案時,必須加 -c 參數。同時,請找一個安全的地方放置 .htusers 這個檔案,所謂的「安全」是指至少不要在公開網頁可以被下載到的路徑

繼續增加第二組帳號及密碼到驗證檔時,就不用加 -c 參數:

htpasswd /path/to/.htusers UserName2

建立群組資料檔

如果用戶比較多,你可能會想要用群組的方式來做管理。群組資料檔的目的是要將多個用戶設為一個群組,請新增或編輯 /path/to/.htgroups,依需求增加類似如下的設定:

Group1:UserName1 UserName2

代表 Group1 包含 UserName1UserName2 這兩個用戶。

驗證登入

在欲執行用戶驗證的網頁目錄下,建立一個 .htaccess 檔案,驗證的方式可針對用戶或群組。

針對用戶:

AuthName "Restricted Area"
AuthType Basic
AuthUserFile /path/to/.htusers
require user UserName1

上述的最後一行是只有 UserName1 允許進入,你也可以改成:

require valid-user

表示針對 /path/to/.htusers 裡的所有用戶。

針對群組:

AuthName "Restricted Area"
AuthType Basic
AuthUserFile /path/to/.htusers
AuthGroupFile /path/to/.htgroups
require group Group1

設定好之後,當用戶要存取該目錄,就會跳出叫你登入的對話框:

問題排除

如果在設定 htaccess 認證方式之後,在進入網頁時,仍然沒有跳出驗證的對話框,則請編輯 /etc/httpd/conf/httpd.conf,搜尋相關的「AllowOverride」設定,改成:

AllowOverride All

格式化系統 LOG 分析 *

本文件是參考鳥哥寫的 logfile.sh,我把它改成符合我自己系統的 LOG 分析程式,全面以 Perl 重寫。我自己用了一段時間 (其實也半年了),覺得勉強還可以用,所以公開給大家用看看…
Read more

安裝 ImageMagick 相關模組 *

ImageMagick 是個功能強大的圖片工具,讓你讀取、寫入、操作任何熱門的圖片格式,如 GIF、JPEG、PNG、PDF… 等。使用 ImageMagick 可以即時的建立 GIF 的圖片檔案,讓圖形可以更融入網頁等應用介面。你也可以更改圖片的大小、反轉圖形、增強亮度、減少顏色對比、加入額外特殊的效果。圖片可以儲存不同的格式依你的工作需求。
Read more

Redhat Linux 7.3 快速安裝指引 *

教你快速安裝 Redhat Linux 7.3…

特點及功能如下

  • 使用單純的結構,以提供主流服務,系統將不安裝 X-Window 介面。
  • 具備 ProFtp、Sendmail、Webmail、web 及資料庫 (MySQL) 的服務。
  • 可使用瀏覽器在線上做系統管理 (WebMin)、資料庫維護 (phpMyAdmin) 及流量監控 (Mrtg)。
  • 每天與時間伺服器對時。
  • 每週自動更新系統的套件。

Read more

將郵件伺服器換成 Postfix + pop-before-smtp *

故名思意,pop-before-smtp 就是在 smtp 前,先用 pop3 的帳號登入,以確保伺服器上有你的帳號。以下的步驟,先將 Sendmail 換成 Postfix,再將 smtp 的認証則改用 pop-before-smtp 的方式。

安裝 Postfix

  • 先移除 sendmail:
  • apt-get remove sendmail
  • 使用 apt 安裝 postfix:
  • apt-get install postfix
  • 編輯 /etc/postfix/main.cf,搜尋之參數及修改方式如下:
  • myhostname  ->  host.example.com
    mydomain  ->  example.com
    myorigin  ->  $myhostname
    inet_interfaces  ->  all
    mydestination  ->  /etc/postfix/local-host-names
    mynetworks  ->  127.0.0.0/8, hash:/etc/postfix/access
    relay_domains  ->  $mydestination
    alias_maps  ->  hash:/etc/postfix/aliases
  • 設定本機收件時的領域名稱,將領域名稱新增到 /etc/postfix/local-host-names,每個名稱佔一行:
  • example.com
    mail.example.com
    host.example.com
  • 初始化相關資料庫:
  • postmap hash:/etc/postfix/access
    postalias hash:/etc/postfix/aliases
  • 至此已完成 Postfix 的安裝,直接啟動 Postfix 即可:
  • service postfix start

    安裝 pop-before-smtp

    顧名思義,pop-before-smtp 就是在寄信前,必須先用 pop3 檢查郵件,只要 pop3 登入正確,你就可以用同一台伺服器寄信 (30分鐘內)。安裝步驟如下:

  • 安裝 Perl 的 File::Tail、Time::HiRes、Net::Netmask、Date::Parse 模組,建議使用 WebMin 安裝,或執行下列指令:
  • perl -MCPAN -e 'install File::Tail'
    perl -MCPAN -e 'install Time::HiRes'
    perl -MCPAN -e 'install Net::Netmask'
    perl -MCPAN -e 'install Date::Parse'
  • 從本站下載 pop-before-smtp 的安裝檔至 /tmp,並執行安裝:
  • cd /tmp
    wget http://www.vixual.net/download/source/postfix/pop-before-smtp-1.33-1.noarch.rpm
    rpm -ivh pop-before-smtp-1.33-1.noarch.rpm
  • 編輯 /etc/pop-before-smtp-conf.pl,將下列三行前的註解 # 拿掉:
  • #$file_tail{'name'} = '/var/log/maillog';
    #$grace = 30*60;
    #$dbfile = '/etc/postfix/pop-before-smtp';
  • 編輯 /etc/postfix/main.cf,在最後面加上:
  • smtpd_recipient_restrictions = permit_mynetworks,reject_non_fqdn_recipient,check_client_access hash:/etc/postfix/pop-before-smtp,check_relay_domains
  • 啟動 pop-before-smtp,並重新載入 postfix:
  • service pop-before-smtp start
    service postfix reload

    用 postfix 及 vm-pop3d 建立虛擬電子信箱 *

    所謂的「虛擬電子信箱」指的是用戶在伺服器上沒有實體的帳號,但是卻可以透過 POP3 或是 Open Webmail 來使用電子郵件服務。這樣的組態,一方面比較不會有安全性的問題,同時也可以在一部伺服器上支援較多的用戶。

    Read more

    安裝 JSP 環境 - resin *

    resin 可讓 Linux 支援 JSP 的環境,系統必須先安裝 Sun 的 J2SDK 之後,再安裝 resin。而 resin 已是一個可獨立執行的網頁伺服器,相較於另一套 JSP 伺服器 「tomcat「,resin 的穩定度及效能都有比較好,但需注意的是,resin 只有在你用來發展程式的過程時是免費的,其它用途都要付費。

    安裝 Java 環境

    從本站下載 J2SDK 的安裝檔到 [/tmp],並執行安裝:

    cd /tmp
    wget http://www.vixual.net/download/source/jsp/j2sdk-1_4_1_02-fcs-linux-i586.rpm
    rpm -ivh j2sdk-1_4_1_02-fcs-linux-i586.rpm

    安裝 resin

  • 從本站下載 resin 2.1.9 的原始檔到 [/var],並解壓縮:
  • cd /var
    wget http://www.vixual.net/download/source/jsp/resin-2.1.9.tar.gz
    tar -xzvf resin-2.1.9.tar.gz
    mv resin-2.1.9 resin
  • 將 Java 及 resin 的相關路徑加到環境變數,請編輯 /etc/profile,在檔案最下方加入:
  • PATH=$PATH:/usr/java/j2sdk1.4.1_02/bin
    export JAVA_HOME=/usr/java/j2sdk1.4.1_02
    export CLASSPATH=$JAVA_HOME/lib
    export RESIN_HOME=/var/resin
  • 重新載入 /etc/profile:
  • source /etc/profile
  • 啟動 resin:
  • /var/resin/bin/httpd.sh start
  • 安裝成功,連結網址: http://host.domain.tld:8080/
  • 啟動與停止 resin

  • 啟動 resin:
  • /var/resin/bin/httpd.sh start
  • 停止 resin:
  • /var/resin/bin/httpd.sh stop
  • 重新啟動 resin:
  • /var/resin/bin/httpd.sh restart

    變更監聽埠

    resin 預設的監聽埠是 「8080″,如果你想要變更埠號,請編輯 /var/resin/conf/resin.conf,找到 port=』8080′,將它改成你想要的埠號 (應避免與 apache 的 80 埠或其它服務的埠號相衝突),再重新啟動 resin 即可。

    將系統的 ftp 服務換成 ProFTP

    Redhat Linux 7.3 預設的 ftp 服務是採用 wu-ftpd,雖然 wu-ftpd 在效能上,一直有不錯的表現,程式版本更新的速度也不慢,不過,它卻不是一個夠安全的系統。ProFtpd 的發展,一開始便是定位在成為一個安全且容易設定的 ftp 伺服器程式,它的風格及表現,深得許多網管人員的喜愛。如果您想找一個不錯的 ftp 伺服程式來取代 wu-ftpd,試試 ProFtpd 吧…
    Read more

    NTP - 校正 Linux 時間

    NTP 可以讓您與遠端的時間伺服器同步,以校正 Linux 系統的時間。
    Read more

    MRTG 快速安裝法 *

    MRTG 主要是用來偵測主機上的資料流量,將流量繪製成漂亮的統計圖表。另外,我們也可以自行寫一些 SCRIPT,加掛於 MRTG 上,只要你提供給 MRTG 它兩個數值,它就可以做為流量的依據,幫我們產生統計圖表。
    Read more

    return top