顯示文章

這裡允許您檢視這個會員的所有文章。請注意, 您只能看見您有權限閱讀的文章。


文章 - fz150n

頁: [1] 2 3 4
1
有沒有特殊原因要安裝OpenSuSE呢?

如果沒有,想建議您安裝ubuntu 7.04來用喔~

軟體安裝都用選的,而中文化在台灣開發團隊的努力下,也幾乎都做得很徹底了喔!

2
Linux 討論版 / Ubuntu7.04Install
« 於: 2007-05-06 12:24 »
很讚很讚,裝了幾天了,實在覺得很好用。

家裡的電腦我割了一個5G的空間來裝,平常就可以在開機時選擇ubuntu或winxp
然後安裝pptp的套件,撥回公司,再搭配tn5250就可以連到公司的400主機了!

synpatics(希望沒拼錯)也很方便,要裝軟體就用選的,相依性就一併處理掉了。

我相信ubuntu的能見度應該會越來越高才是。

3
其實 mail這個函數先前我常用到,有時候是寫一些偵測指令稿然後,如有異常就寄信給管理員,但是我這次的問題是:因為ISA的限制,使我的SERVER沒有辦法直接把信寄出去,所以我得利用 Smart Host把信透過Notes Domino傳送出去,但這樣的結果卻是亂碼。

請問一下喔~你測試的環境也是透過 Notes 轉寄的嗎?還是本機收了之後直接寄到你的 Notes信箱呢?

4
最近弄了一個簡單的監測網頁,希望異常的時候發信給我,
但是公司內網控管甚嚴,FC4又不能透過ISA連結,所以我只好利用
Sendmail Smart Host的功能把信丟給 Lotus Domino來幫我寄信。

問題來了~首先遇到的TLS問題,搞了很久才成功轉寄出去,
好不容易成功寄出了,結果有試一堆亂碼。

參考咱們大陸同胞寫的一個方法:

$subject=mb_convert_encoding($subject,\"big5\",\"utf-8\");
$message=mb_convert_encoding($message,\"big5\",\"utf-8\");

結果是沒用的,改用成mb_send_mail函數,也不能,

請問前輩有人遭遇過這樣的問題嗎?快被亂碼搞瘋了!
以下是我的測試碼:

<?
mb_language('BIG-5');
$datee = date("Y年 n月 d日 H時 i分 s秒");
$content = date("Y年 n月 d日 H時 i分 s秒");
$subject = "XXXXX" . $datee . "異常報告!";
$subject = mb_encode_mimeheader($subject,'BIG-5');
$mail = "tonyyu@test.com";
        $addition = "From: \"FZ150N\"< tonyyu@test.com >\n" .
                        "Subject: " . $subject . "\n" .
                        "Content-Type: text/html; \n" .
                        "MIME-Version: 1.0\n" .
                        "X-MSMail-Priority: high\n";
mail($mail, $subject, $content, $addition);
?>

5
LDAP 討論區 / LDAP管理程式
« 於: 2007-03-24 23:32 »
其實我也是用phpldapadmin,不過好像很多前輩都用JAVA那1版的。

心裡忽然有1個笨想法:

0. 事前的Migration先做好(最好包含inetOrgPerson的1些屬性如mail, givenname)
1. 用PHP寫1個簡單的頁面,就填使用者帳號,中文姓名,密碼這三欄就好了;
2. SUBMIT之後,用fopen搭配MigrationTool自動建立單1的user.ldif;
3. 執行ldapsearch,有的話就ADD,沒有就MODIFY;

這種頁面就不能公開了,還是放在內部使用就好。
(我的注音輸入法實在爛到爆,所就用阿拉伯的1好了 :o

6
Linux 討論版 / Queues in MailWatch and Postfix問題
« 於: 2007-03-24 23:05 »
把 mailq.php裡的幾行MARK掉:
<?
require "./functions.php";
authenticate('A');
html_start("Mail Queue Viewer");

switch($_GET['queue']) {
 case "inq":
  $queue=inq;
  $display='Inbound Mail Queue';
  break;;
 case "outq":
  $queue=outq;
  $display='Outbound Mail Queue';
  break;;
# case default:
#  die("No queue specified\n");
}

db_colorised_table("
SELECT
 id AS id2,
 CONCAT(DATE_FORMAT(cdate, '".DATE_FORMAT."'),' ',ctime) AS datetime,
 hostname,
 from_address,
 to_address,
 subject,
 message,
 size,
 attempts,
 CASE WHEN lastattempt=0 THEN '00:00:00' ELSE SEC_TO_TIME((UNIX_TIMESTAMP() - lastattempt)) END AS lastattempt
FROM
 ".$queue."
WHERE
 ".$GLOBALS['global_filter']."
ORDER BY
 cdate, ctime",$display,true,true);

html_end();
?>

不然改成這樣應該也可以:

case default :
die("No queue specified\n");
break;;

7
Linux 討論版 / 使用sendmail上的問題
« 於: 2007-03-17 10:03 »
1. apply for an account from :   http://www.dyndns.org/
2. download ddclient from : http://rpmfind.net/ according to you OS versiom.
3. set up your adsl line and update /etc/ddclient/ddclient.conf to meed your need.
4. start adsl line and ddclient at boot time.

我沒有在用注音文,可是用中文幾乎都被拒絕說!

8
Linux 討論版 / 刪除三十天前的檔案
« 於: 2007-03-17 09:54 »

(好像限制得有點嚴格,這樣會被判定成注音文說~所以我只好先弄成jpg了)

9
善導寺出到4.4了,穩定性還不錯喔,以你的硬體等級,建議您安裝CentOS 4.4
http://ftp.isu.edu.tw/pub/Linux/CentOS/4.4/isos-dvd/i386/CentOS-4.4-i386-binDVD.iso
看看廠商有沒有提供Driver Disk,有的話,安裝前把它做成軟跌應該就讀得到了。

10
聽前輩這樣說,我就放心多了。

因為最近幫朋友把一個網站遷移到FC3上面,結果速度明顯慢了很多,
朋友就有點質疑說,從Windows轉移到Linux平台反而比較慢喔??

我的想法是:

1. 透過VirtualServer把原本三個網站併到同一台,的確吃重多了;
2. LeoBoard以CGI為基礎,一個Thread就是一個資料夾,效率上感覺
好像沒有phpbb2或Discuz這樣AP-DB為基礎的WebAP好?
3. 使用一般的ADSL來架站,號稱8M/512K,但其實根本不夠用,雖然會員
不到四千人,但是線上人數稍多一些就會有點拖不動了。

所以我會鼓吹我朋友考慮一下4M/1M的方案,謝謝前輩的建議!

11
Linux 討論版 / 使用sendmail的read command ??
« 於: 2007-02-15 21:59 »
這個問題大概太冷門,總算在ExpertExchange有看到類似的回答,
雖然我也不確定知道這些選項代表真正的意義,但或許遇到類似問題的人可以參考一下:

sendmail.cf 有兩個參數可以修改:

1. O MaxDaemonChildren=15

2. O PrivacyOptions=noetrn

FC3預設第一像是被Mark的,所以我自己改成10,
第二項的話有有很多選項,我在最後面把noetrn補進去,變成:
O PrivacyOptions=authwarnings,novrfy,noexpn,restrictqrun,noetrn

12
那麼請問一下,如果不想給人託管,還有沒有比較好的解決方案有什麼呢?
電信局有一個12M/1M的方案可以嗎?

13
Linux 討論版 / 使用sendmail的read command ??
« 於: 2007-02-14 12:04 »
root     29542  0.0  0.3  9544 3700 ?        S    11:19   0:00 sendmail: server [220.165.190.191] cmd read

嗯嗯~  小弟用的是putty,畫面有拉到最大,所以應該沒有截掉才是。

查了GOOGLE只有一個地方是相關的,就是將command的時間設短一點:

Timeout.command=1h

但是我又怕影響到正常的運作,所以還沒更改。

當初這個郵件網域架在一台Windows Server上的 Daemon(版本我忘了),
現在轉來FC3之後,就一直會出現這樣的處理程序,心裡面就也一直毛毛的,
來源IP多半從  *.net.br來的,也不知道他們在搞什麼鬼。

會想查這個問題,是因為當初的LeoBoard論壇也一併移到Linux平台,
搞了很久,總算也把LeoBoard5000轉成LeoBBS,但是效率很差,
真的很慢,人稍微多一點就會停很久,頻寬用的是 8M/512K,
目前最多同時也不超過三十人。

大大有興趣可以點進去看看,不過真的有點慢,不知道是不是LeoBBS CGI在
Linux上面執行效率不佳的關係?

http://web.smart-party.com

14
Linux 討論版 / 使用sendmail的read command ??
« 於: 2007-02-13 19:22 »
各位前輩,
第一次看到這種處理程序,ps aux 裡面一直有這樣的東西出現:

root     18331  0.0  0.3 10092 3688 ?        S    19:17   0:00 sendmail: server [59.89.246.158] cmd read

請問一下這樣正常嗎?我該怎麼禁止呢?謝謝!!

15
Linux 討論版 / Fedora Core6 安裝問題
« 於: 2007-01-06 12:54 »
最近也灌了一台FC6,那是ASUS舊款的915晶片組Server,
開完機也是看不到畫面。

你可以開完機之後,先試著按CTRL+ALT+2看看有沒有文字登入畫面,或從別台電腦以ssh的方式連到主機,然後把Level改成3,然後開機看看。

如果你的安裝過程沒有錯誤的話,應該只是顯示卡的問題而已。

真的要用圖形介面又不顯換顯示卡的話,可以找一下XDMCP相關的文章來看,
直接在你的XP上面以圖形介面控制FEDORA也可以。

16
之前看過類似的討論。

因為寄件者可能會在學習之後被列入垃圾信的行列中,
所以看看你的發信軟體是否有[原信轉寄]的功能,這樣應該就能避免你說的問題。

17
謝謝,感激感激,小弟再仔細查一查~

18
請教各位,

小弟的MailServer最近發現很多不明的mailq,如果用ps查一下的話:
代碼: [選擇]
[root@myhost ~]# ps aux | grep sendmail
root      6845  0.0  0.2  6784 2716 ?        Ss   Nov08   0:00 sendmail: Queue runner@00:15:00 for /var/spool/mqueue
root      3578  0.0  0.3  7688 3560 ?        S    16:10   0:00 sendmail: ./kA8FkM8g007906 uk2mxarray3.uk2.net.: user open
root      3980  0.0  0.3  7236 3332 ?        S    16:40   0:00 sendmail: ./kA8J3N6K008971 msa-mx2.hinet.net.: user open
root      4068  0.0  0.3  7236 3332 ?        S    16:55   0:00 sendmail: ./kA8LWoK2010324 msa-mx5.hinet.net.: user open
root      4358  0.0  0.3  7236 3332 ?        S    17:10   0:00 sendmail: ./kA8KvqWi010133 msa-mx8.hinet.net.: user open
root      4547  0.0  0.3  7236 3352 ?        S    17:25   0:00 sendmail: ./kA8H9LP7008310 msa-mx5.hinet.net.: user open
root      5025  0.0  0.3  7236 3352 ?        S    18:10   0:00 sendmail: ./kA8EYZSo007418 msa-mx8.hinet.net.: user open
root      5221  0.0  0.3  7236 3340 ?        S    18:55   0:00 sendmail: ./kA8IxdLt008944 msa-mx8.hinet.net.: user open
root      5478  0.0  0.3  7932 3584 ?        S    19:40   0:00 sendmail: ./kA97SVnJ014270 msa-mx1.hinet.net.: user open
root      5540  0.0  0.3  7236 3332 ?        S    19:55   0:00 sendmail: ./kA93gaMX012578 msa-mx10.hinet.net.: user open
root      5703  0.0  0.3  7224 3336 ?        S    20:10   0:00 sendmail: ./kA8NbpFT010866 msa-mx1.hinet.net.: user open
root      5708  0.0  0.3  7236 3336 ?        S    20:25   0:00 sendmail: ./kA95DdFr013269 msa-mx6.hinet.net.: user open
root      5730  0.0  0.3  7224 3328 ?        S    20:40   0:00 sendmail: ./kA91Xok6011730 msa-mx8.hinet.net.: user open
root      5900  0.0  0.4  8944 4536 ?        S    21:00   0:00 sendmail: ./kA9CxwJN005898 msa-mx3.hinet.net.: user open
root      6260  0.0  0.3  7236 3300 ?        S    21:10   0:00 sendmail: ./kA95m8Wq013365 msa-mx5.hinet.net.: user open
root      6293  0.0  0.3  7224 3324 ?        S    21:25   0:00 sendmail: ./kA99bhpq004633 msa-mx8.hinet.net.: user open
root      6349  0.0  0.3  7224 3328 ?        S    21:40   0:00 sendmail: ./kA9A3uBN004973 msa-mx2.hinet.net.: user open
root      6633  0.0  0.3  7660 3140 ?        Ss   22:01   0:00 sendmail: accepting connections
smmsp     6641  0.0  0.2  6784 2592 ?        Ss   22:01   0:00 sendmail: Queue runner@01:00:00 for /var/spool/clientmqueue
root      6940  0.0  0.3  7236 3288 ?        S    22:25   0:00 sendmail: ./kA8NS9J4010819 msa-mx6.hinet.net.: user open
root      6995  0.0  0.3  7236 3288 ?        S    22:40   0:00 sendmail: ./kA8K9Ydm010056 msa-mx4.hinet.net.: user open
root      7419  0.0  0.3  7236 3288 ?        S    22:55   0:00 sendmail: ./kA9BEoUl005412 msa-mx1.hinet.net.: user open
root      7442  0.0  0.3  8116 3712 ?        S    23:01   0:00 sendmail: ./kA9BOU0q005443 msa-mx12.hinet.net.: user open
root      7634  0.0  0.3  7236 3296 ?        S    23:10   0:00 sendmail: ./kA9BOreR005456 msa-mx11.hinet.net.: user open
root      7720  0.0  0.3  7236 3340 ?        S    23:25   0:00 sendmail: ./kA982B9N003475 msa-mx9.hinet.net.: user open


請問一下這可能是什麼原因造成的呢?
感激感激~

19
Computer 討論版 / 光纖界面 SCSI硬碟機
« 於: 2006-09-29 15:33 »
引用
36.7G HUS151436VLF200 (光纖界面)  SCSI硬碟機    9,450  
36.7GB,2Gbits/sec Fibre Channel光纖介面,15000rpm,3.3ms,16Mb,單碟29G,液態軸承馬達,Ultrastar 15K147系列,五年保固  


這是名人3C量販看到的,

請問這種硬碟是要搭配特殊的硬碟櫃還有特殊的網卡才能用是嗎??
如果家用PC想用的話,可以用嗎??
SATA有出10000rpm以上的硬碟嗎??

最近用SATA 7200 RPM   250Gb的硬碟在做影片輸出,
才發現原來速度慢得給它有點可憐~~

20
家用PC用繪聲繪影9還是PowerDirector就行了,
高檔一點還有adobe premiere可以選擇,

編輯的時候直接拉AVI來編輯,輸出的時候,先輸出成AVI也OK
然後再用編碼軟體轉成可以燒VCD或DVD格式。

雖然波的時間有點久遠了,不過看到還是回一下~ 呵呵~

21
了然,一直都用Openwebmail收發信件,不然outlook也用HiNet寄信,
不然就用人家現成的mailserver寄信,直到昨天幫朋友安裝FedoraCore5時,
才遇到這個問題。

所以我想,如果剛好有人也遇到相同的問題,希望能夠參考我的心得之後,可以
快速的將sendmail認證設定好。

不想變成OpenRelay,sendmail當然最好還是開啟認證的功能,(就是當你想利
用這台郵件主機寄信時,一定要透過適當的認證方式才能寄信),其實網路上有
很多作法都可以參考,我的心得只針對Fedora系列,其他平台我就沒試過了。

1. 首先要確認有這些sendmail套件:
代碼: [選擇]
sendmail-cf-8.13.5-3
sendmail-devel-8.13.5-3
sendmail-8.13.5-3


2. Cyrus-sasl則要有這些套件:
代碼: [選擇]
cyrus-sasl-devel-2.1.21-10
cyrus-sasl-lib-2.1.21-10
cyrus-sasl-md5-2.1.21-10
cyrus-sasl-2.1.21-10
cyrus-sasl-plain-2.1.21-10
cyrus-sasl-gssapi-2.1.21-10


Cyrus-sasl不一定要全裝,只是我還沒測試過哪些可以不要。

3. 修改/etc/mail/sendmail.mc

代碼: [選擇]
dnl define(`confAUTH_OPTIONS', `A')dnl
define(`confAUTH_OPTIONS', `A p')
TRUST_AUTH_MECH(`EXTERNAL PLAIN DIGEST-MD5 CRAM-MD5 LOGIN')
define(`confAUTH_MECHANISMS', `PLAIN EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')


其他部份我就沒動了,改好之後存檔。

4. 產生新的sendmail.cf
代碼: [選擇]
先備份舊的:  mv /etc/mail/sendmail.cf /etc/mail/sendmail.cf.bak
產生新的:m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

5. 確認saslauthd是否啟動

完成第4個步驟就重新啟動sendmail的話,還不夠,Fedora好像預設不會自動啟動saslauthd,所以你可以先手動啟動saslauthd:

代碼: [選擇]
/etc/rc.d/init.d/saslauthd start

看一下/car/log/message的訊息:
代碼: [選擇]
Aug 12 12:45:46 myfedora saslauthd[29710]: detach_tty      : master pid is: 29710
Aug 12 12:45:46 myfedora saslauthd[29710]: ipc_init        : listening on socket: /var/run/saslauthd/mux


這樣就表示saslauthd6啟動成功了,為了確保下次開機會自動啟動:
代碼: [選擇]
chkconfig --level 234 saslauthd on

6. 重新啟動sendmail

7. 本機測試:
外部也可以啦~假設你連到本機去:
代碼: [選擇]
[root@mail init.d]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
220 myfedora.com.tw ESMTP Sendmail 8.13.5/8.13.5; Sat, 12 Aug 2006 12:49:18 +0800
ehlo localhost
250-myfedora.com.tw Hello localhost.localdomain [127.0.0.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH PLAIN GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN
250-STARTTLS
250-DELIVERBY
250 HELP


該有的認證都有了,是該用outlook寄寄看了:

8. 設定outlook

帳號設定都一樣,把「我的伺服器需要認證」打勾,帳號密碼跟登入的一樣,不然你喜歡重打一次也可以。

接著寄一封信到外面的信箱,像hotmail yahoo之類的。

看一下 /var/log/maillog

引用
Aug 12 12:39:21 myfedora sendmail[29471]: AUTH=server, relay=111-222-333-444.dynamic.hinet.net [111.222.333.444], authid=my.name, mech=LOGIN, bits=0


這樣就不會出現錯誤,而且你的郵件主機也不會被拿來當郵件跳板了。

22
Network 討論版 / 請教SonicWall VPN~
« 於: 2006-07-14 11:12 »
請問一下,

Global VPN Client一般都會搭配自製憑證使用嗎?

就是說,需不需要為自己公司建立一個獨立的憑證供GVC使用?
然後,當公司內部使用者要申請VPN帳號時,Client連同憑證
一起配發給使用者?

還是說,用 local 使用者認證就好了?

那麼~可以整合Windows AD Server嗎?

可不可以麻煩使用過SonicWall的前輩,建議一下「一般的作法」呢?

謝謝!

23
Linux 討論版 / 我的proftp裝不起來
« 於: 2006-06-04 22:19 »
先檢查一下:

rpm -qa | grep proftpd

如果已經存在的話,先移除再裝吧?

rpm -e XXXX.rpm

不然直接改用

rpm -Uvh xxx.rpm

依你的情形,用

rpm -Uvh xxx.rpm --nodeps

應該也ok了。

如果只是不確定你到底裝了沒,或想看看他裝到哪裡去,用:

rpm -ql xxx-xxx

24
Windows 討論版 / XP上網的怪問題
« 於: 2006-06-04 18:22 »
你說ping得到,那最大的可能應該是DNS沒有設定好,

先用ipconfig /all  看一下有沒有設定好dns server

有的話,再用nslookup tw.tahoo.com  來看看是不是可以查詢正常。

代碼: [選擇]
C:\Documents and Settings\fz150n>nslookup tw.yahoo.com
Server:  dns.hinet.net
Address:  168.95.1.1

Non-authoritative answer:
Name:    tw-fo.yahoo-ap1.akadns.net
Address:  202.43.195.52
Aliases:  tw.yahoo.com

25
Windows 討論版 / [分享]上網讀信就中毒
« 於: 2006-06-04 18:09 »
平常我也沒有在用防毒軟體,連防火牆都沒開,所以每次在開信或上網的時候,
都會特別小心,家裏如果有人回來了,我大概就會先把防火牆打開,以免一家烤肉萬家香。

(但是我可愛的老婆,每次一碰我的電腦,就會中毒了,呵呵~我得查察她去哪網站... :o

最近去抓了ClamAV for Windows回來用,看來應該是完全免費的,而且使用也簡單,也沒有看過它跳出框框警告之類的,(真不知道該高興還是緊張),如果覺得電腦怪怪了,通常我都只用ad-aware來掃描,效果還不錯。

不過,我覺得看處理程序也蠻有用的,雖然不一定知道那些怪怪的處理程序是不是病毒,但是可以先看出個端倪,像以前就常常有expl0rer這樣的怪東西。

但是這禮拜遇到了一個偷偷把svchost放到系統登錄裡面,以至於系統啟動的時候,會執行有問題的那隻svchost,查了好久,總算在趨勢找到那隻被歸類為LINAGE的後門程式,並且順利清除。

代碼: [選擇]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]

裡面有一個值應該是這樣:

代碼: [選擇]
"Userinit"="C:\\WINDOWS\\system32\\userinit.exe,"

小弟的心得是,病毒只會越來越聰明,上網或讀信都得小心,平常更新防護也要做好,這樣才能讓自己減低病毒的威脅。[/code]

26
Linux 討論版 / X session的連線問題
« 於: 2006-06-04 17:37 »
XDMCP 應該用的是Port 177,
所以,會不會是你的Port弄錯了,因為我看你貼的是17耶~

我覺得你可以連線過去之前,先準備好tcpdump,看看對方有沒有反應。

27
apxs 是httpd-devel裡的套件之一,要先安裝httpd-devel。

因為不知道你的作業系統是甚麼,所以沒有辦法給你太多建議。

我的是RHEL4 :

代碼: [選擇]
[root@rhel ~]# rpm -qa | grep libtool
libtool-1.5.6-4
libtool-libs-1.5.6-4


代碼: [選擇]
[root@rhel mod_bw]# rpm -ql httpd-devel
...
/usr/sbin/apxs
...

28
前言
   入侵事件時有所聞,對外提供網路服務的主機,大部分都是容易遭受攻擊的,差別在於系統管理員
   是否勤於更新補強,以及是否準備足夠的過濾機制及監控方法來偵測主機。
   
   ~只要接上了Internet,就沒有完全的安全性可言~  By Anonymous
   
   Apache本身的安全性,其實應該算是很成熟的,但被入侵的主機,卻往往都是附屬的應用程式,
   或許對於指令檢查的不完全,或許是程式撰寫的疏忽,而讓系統開了門,變成入侵者的測試天堂。
   
   舉凡XSS(Crxoss Site Scripting or CSS), File Inclusion, SQL Injection,如果稍微注意一下
   資安通報,就會發現這些漏洞不斷被發掘出來,為了被承認,許多甚至還附上證明,這時,一些
   沒創意的或比較懶的入侵者,看到通報之後,或許剛入門,或許技癢,偏偏剛好要入侵的系統的
   管理員出國了,或心情不好,或者忙結婚,等到重新想登入系統的時候,要不就是首頁被換了,
   要不,搞不好還有家歸不得。
   
   是的,有一次因為不小心沒有把客戶主機的root密碼改掉,一個晚上,應該只有幾小時,整個
   系統被搞翻天,還好留了一個已登入的tty,但是終究逃不掉重灌的命運。

   空具RHCE的頭銜,小弟每每面對系統一堆不明的訊息時,卻不知從何做起,跑跑Nessus, Snort,
   AWSTATS,偶而看一下logwatch, 常常看著Bugtraq的說明訊息,卻也只能茫茫然...
   
   於是我定了一堆安全通報,逛一逛駭客網站,看看駭客們的影片傑作,詳讀每一份安全白皮書,
   強迫自己進入資訊安全的知識領域,畢竟有了開始就不會太晚。
   
   我只是newbie,別想太多,也別懷疑我會想要進入別人的系統,因為我根本沒那個能力,
   當一個駭客得要有深厚的TCP/IP為基礎,以及對程式語言的了解,比如perl, C, ASM等等,
   以上提的這些,我通通都沒有,呵呵~
   
   (如果你現在剛好讀著這篇文章,那表示你可能不是西班牙語系的駭客,那應該也不會是羅馬尼亞來的,
   如果你又剛好熟這些程式語言,那請你一定要出來救救大家,開個論壇或辦個教之類的,我一定先報名。)
   
   但是,每天注意這些漏洞,真是一件辛苦的事情,再怎麼補,也還是有被入侵的可能,所以,
   小弟認為應該從健全體質開始做起,重新建制一個更安全的網路服務環境,即使被入侵了,
   入侵者能做的破壞畢竟有限,配合適當的監控及備份回覆措施,系統管理員應該可以多做一些
   其他的事,或學更多更深一點的技術。
   
   講到體質,我想這應該是為什麼現在還有很多人衷情於FreeBSD以及apache 1.X的原因吧?

   CHROOT是一個蠻厲害的技術,詳細內容我也不太了解,就好比loop常常都會用,而且還很愛用,
   但是我也一樣不知道它的詳細技術內容,總之,chroot可以提供系統安全的層次,但決不是杜絕,
   系統安全不會因為把所有重要服務都放到監獄裡就能降到零,風險永遠都存在...
   
   這篇文章只針對Apache Web Server,主要參考的是SecurityFocus一系列的文章而實做出來的,
   我想,專家都這樣建議了,那像我這樣肉腳的管理員也只能唯唯諾諾的照作,
   尤其是被入侵了這麼多次之後,呵呵~
   
   這篇文章希望拋磚引玉,引起大家對資訊安全的重視,別再讓我們辛苦建制的主機,變成入侵者的天堂。
   
   內容如有錯誤,希望前輩及各位網友不吝指教,謝謝!  
   fz150n@hotmail.com
   
測試環境:
   Intel P4 and Celeron
   RedHat Fedora Core 3 and RedHat Enterprise 4
   httpd-2.2.2
   PHP-5.1.4
   MySQL-4.1.20
   ModSecurity-1.9.4   

主要安裝步驟:

   1. mod_security -> 2. httpd -> 3. mysql(binary) -> 4. zlib -> 5. PHP -> 6. chroot -> 7. copy files -> 8. configure -> 9. finish



我們先假設工作的目錄在 /tmp 底下

1. mod_security

   描述:
   這個模組可以有效防止XSS(or CSS)及SQL Injection的攻擊(當然也包含防止盜連),搭配官方或適當的規則,可大幅提昇Apahce的安全性,
   並且也有獨立的稽核及除錯紀錄,方便管理員追蹤。(但是不知道為什麼沒有被Apache基金會包進去?)
   
   因為我們要讓mod_security跟httpd整合編譯,所以先下載到適當位置就好。
      
      
代碼: [選擇]
[ root@fz150n ] wget http://www.modsecurity.org/download/modsecurity-apache_1.9.4.tar.gz
[ root@fz150n ] wget http://www.modsecurity.org/download/modsecurity-rules-current.tar.gz


2. httpd-2.2.2
   描述:
   我們要手動編譯,把有些內定開啟的模組關閉,並同時將mod_security一起編譯進去。
   參考:http://httpd.apache.org/
      
      
代碼: [選擇]
[root@fz150n ] wget http://apache.cdpa.nsysu.edu.tw/httpd/httpd-2.2.2.tar.gz
[root@fz150n ] tar xzvf httpd-2.2.2.tar.gz
[root@fz150n ] mkdir -p httpd-2.2.2/modules/security
[root@fz150n ] tar xzvf modsecurity-apache_1.9.4.tar.gz
[root@fz150n ] cd modsecurity-apache_1.9.4/apache2/
[root@fz150n ] cp mod_security.c Makefile.in config.m4 /tmp/httpd-2.2.2/modules/security/
[root@fz150n ] cd /tmp/httpd-2.2.2
[root@fz150n ] ./buildconf

       (這個指令會跑一陣子,讓apache編譯程式搜尋到你剛剛建立的modules/security,並且建立設定檔)

      
代碼: [選擇]
[root@fz150n ] ./configure
--prefix=/usr/local/apache2 --with-mpm=prefork --disable-charset-lite
--disable-include --disable-env --disable-setenvif --disable-status
--disable-autoindex --disable-asis --disable-cgi --disable-negotiation
--disable-imap --disable-actions --disable-userdir --disable-alias
--enable-so --enable-security --enable-vhost-alias

            (以上請自行參酌開啟或關閉,我是照原作的設定下去跑的,不過我有開so,
            因我只知道用libphp5.so,呵~不知有沒有人可以提供可以完全把so關掉的方法?cgi ???
      
3. mysql-binary

   描述:
   編譯php時需要用的,所以要比PHP早安裝,但請特別注意,MySQL官方也是建議您使用Binary套件,
   也就是你下載之後的MySQL 套件,只要是適合你的系統版本,就可以直接執行,而不需要任何編譯的動作。
   所以一定要找到適合您的系統的套件,一般只要選擇standard的套件,再看看你的glibc是那一版的。
   (一開始的時候用MySQL 5,但是花了我太多時間,卡在一個問題而裝不起來,所以後來才改用4.1.20)

   下載網址:http://dev.mysql.com/downloads/mysql/4.1.html
   (這裡的範例是RedHat Enterprise 4 on Celeron 500  沒辦法,沒機器了~湊合著點)

      
代碼: [選擇]
[root@fz150n ] http://dev.mysql.com/get/Downloads/MySQL-4.1/mysql-max-4.1.20-pc-linux-gnu-i686-icc-glibc23.tar.gz
[root@fz150n ] tar xzvf mysql-standard-4.1.20-pc-linux-gnu-i686-glibc23.tar.gz
[root@fz150n ] mv mysql-standard-4.1.20-pc-linux-gnu-i686-glibc23 /usr/local/mysql/
      
       是的,目前你只需要把它解壓縮,然後搬到/usr/local就好了。
 
4. zlib
   描述:
   我想我的系統一定有zlib,也許是版本太舊了,但是既然PHP5跟我要求,那只好去抓新版的回來裝了:

      
代碼: [選擇]
[root@fz150n ] wget http://www.zlib.net/zlib-1.2.3.tar.gz
[root@fz150n ] tar xzvf zlib-1.2.3.tar.gz
[root@fz150n ] cd zlib-1.2.3
[root@fz150n ] ./configure --prefix=/usr/local
[root@fz150n ] make ; make install

   這個步驟應該不會有問題,如果有的話,請詳讀README或INSTALL,或請將錯誤訊息丟給google處理。

5. php-5.1.4
   描述:
   最後才編譯PHP,說真的我覺得蠻難裝的,有些套件其實我也不確定是否可以不要,萬一以後想用GD的話怎麼辦呢?
   只好想說,先讓基本的功能都先跑起來最重要。

   在這裡編譯完之後,libphp5.so會自己放到httpd的modules目錄底下,並且增加一行LoadModule的設定到httpd.conf,
   但是你需要手動加一行   AddType application/x-httpd-php .php  ,不急,反正還要一下子,等會到第8個步驟再一起設定。

      
代碼: [選擇]
[root@fz150n ] wget ftp://tw.php.net/php/distributions/php-5.1.4.tar.gz
[root@fz150n ] tar xzvf php-5.1.4.tar.gz
[root@fz150n ] cd php-5.1.4
[root@fz150n ] ./configure --prefix=/usr/local
--with-mysql=/usr/local/mysql
--with-apxs2=/usr/local/apache2/bin/apxs
--enable-mbstring --with-zlib-dir=/usr/local

       (從上面的設定看來,我們一定先把 apache 及 mysql 裝起來)

      
代碼: [選擇]
[fz150n@Linux php-5.1.4]# make install
Installing PHP SAPI module:       apache2handler
/usr/local/apache2/build/instdso.sh SH_LIBTOOL='/usr/local/apache2/build/libtool' libphp5.la /usr/local/apache2/modules
/usr/local/apache2/build/libtool --mode=install cp libphp5.la /usr/local/apache2/modules/
cp .libs/libphp5.so /usr/local/apache2/modules/libphp5.so
cp .libs/libphp5.lai /usr/local/apache2/modules/libphp5.la
libtool: install: warning: remember to run `libtool --finish /root/php-5.1.4/libs'
chmod 755 /usr/local/apache2/modules/libphp5.so
[activating module `php5' in /usr/local/apache2/conf/httpd.conf]
Installing PHP CLI binary:        /usr/local/bin/
Installing PHP CLI man page:      /usr/local/man/man1/
Installing build environment:     /usr/local/lib/php/build/
Installing header files:          /usr/local/include/php/
Installing helper programs:       /usr/local/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/man/man1/
  page: phpize.1
  page: php-config.1
Installing PEAR environment:      /usr/local/lib/php/
[PEAR] Archive_Tar    - installed: 1.3.1
[PEAR] Console_Getopt - installed: 1.2
pear/PEAR can optionally use package "pear/XML_RPC" (version >= 1.4.0)
[PEAR] PEAR           - installed: 1.4.9
Wrote PEAR system config file at: /usr/local/etc/pear.conf
You may want to add: /usr/local/lib/php to your php.ini include_path
Installing PDO headers:          /usr/local/include/php/ext/pdo/

      (為了方便往後的設定,建議您將這個畫面的資料拷貝下來。)
      
      依照安裝程式的建議,我們再跑一次(雖然我也不知道這樣是否需要,呵呵):
      [root@fz150n ] ./libtool --finish /root/php-5.1.4/libs
      
       本來我也是想照原文把大部分的模組關掉,但老是編不起來,加上對PHP又沒有很熟,後來只好退而求其次。
       我把我編譯好的模組列出來:

      
代碼: [選擇]
bash-3.00# php -m
[PHP Modules]
ctype
date
dom
hash
iconv
libxml
mbstring
mysql
pcre
PDO
posix
Reflection
session
SimpleXML
SPL
SQLite
standard
tokenizer
xml
xmlreader
xmlwriter
zlib
      
      看起來好像還是太多了,不太符合安全標準,有空再來瘦身一下。


      到這裡為止,我們需要的軟體套件已經具備好了,接下來就準備建立chroot的環境了。

      在開始複製之前,記得一件事情,就是要善用  ldd  (print shared library dependencies)這個工具,
      (當然你也一定要熟悉tail工具的用法,常用的還是 tail -f /xxx/yyy/zzz.log )

      因為我們要從一個完全沒有Library程式庫的環境之下,來讓這些工具跑起來,也只有藉由這樣的工具,
      才讓你可以正確的建置你需要的chroot環境。

29
系統安全討論版 / apache 2 安全實做
« 於: 2006-05-30 20:42 »
終於找到原因了,是suexec在作怪,
只要把suexec摳到對應的目錄也就行了。

如今在FC3上面終於可以將httpd-2.2.2關到監獄了~
 :D

php 5.1.4 試了好久,總算也放進去了:

代碼: [選擇]
./configure --prefix=/usr/local/php5 --with-mysql=/usr/local/mysql/bin --with-apxs2=/usr/local/apache2/bin/apxs --with-zlib-dir=/usr/local

我不確定我需要用的是否都import進去了,可能要等phpBB2放進去之後再試一下。

[root@fz150n ] chroot /chroot /usr/local/apache2/bin/apachectl -k start

這是啟動後的紀錄:

代碼: [選擇]
[Tue May 30 12:35:54 2006] [notice] mod_security/1.9.4 configured
[Tue May 30 12:35:54 2006] [notice] Apache/2.2.2 (Unix) PHP/5.1.4 configured -- resuming normal operations


安裝httpd的時候順便把mod_security也放進去了。

接下來想測試mysql
mysql-standard-5.0.22-linux-i686-glibc23

加油~ :D

30
代碼: [選擇]
# ldd /bin/sh
        linux-gate.so.1 =>  (0x00f9b000)
        libtermcap.so.2 => /lib/tls/i686/libtermcap.so.2 (0x00b38000)
        libdl.so.2 => /lib/tls/i686/libdl.so.2 (0x008cf000)
        libc.so.6 => /lib/tls/i686/libc.so.6 (0x00751000)
        /lib/ld-linux.so.2 (0x008d8000)


用光碟機開機之後,先把硬碟mount起來,
然後把光碟上面的libc.so.6摳到對應的位置試試看。

摳完了,就可以chroot到你原先硬碟的 / 區,
如果還是有錯誤,就把需要的Library補齊,應該也就可以了。

我上次好像是為了安裝openssl,硬是把系統的重要Library移除,
結果幾乎什麼指令都不行。

頁: [1] 2 3 4