星期日, 12月 04, 2005

[轉貼]將某個資料夾下面所有資料的容量限制在100MB以下

原始出處
http://phorum.vbird.org/viewtopic.php?p=99833#99833

改天來試試看^^
mrmeow 寫到:各位前輩 在沒有建使用者帳號,不是使用quota機制的情況下 有沒有辦法將某個資料夾下面所有資料的容量限制在100MB以下? 謝謝各位~

dd if=/dev/zero of=100M.img bs=1024k count=100
mke2fs 100M.img
mount -t ext2 -o loop 100M.img /path/dir

往後該 /path/dir 就是只有 100M 空間可以使用。

星期五, 11月 25, 2005

使用mmencode 回復編碼

使用mmencode 回復編碼 mime64 及 quote-print 兩種常用格式
先安裝含有mmencode的套件
可使用apt or yum 安裝
xemacs套件
指令在 /usr/lib/xemacs/i386-redhat-linux/mmencode

參考網頁
https://www.redhat.com/archives/fedora-list/2004-March/msg00847.html

實作範例
mime64編碼
#echo "104 速配快報,這樣可不可以呢 ?" | mmencode

quote-print 編碼
#echo "104 速配快報,這樣可不可以呢 ?" | mmencode -q

解回來 mine
#echo "MTA0ILN0sHSn1rP4LLNvvMulaaSjpWmlSKlPID8K" | mmencode -u

解回來 qp
#echo "104 =B3t=B0t=A7=D6=B3=F8,=B3o=BC=CB=A5i=A4..." | mmencode -q -u

參考資料
http://phorum.study-area.org/viewtopic.php?t=17308

星期六, 10月 08, 2005

利用cron job 及lftp 同步資料實作note

建立一個shell script ftpsync.sh 內容如下
#vi ftpsync.sh
#!/bin/bash
#使用lftp同步,根據/root/filesync.lftp 指令內容同步
lftp -f /root/filesync.lftp

建立要同步的檔案 filesync.lftp 內容如下
#vi filesync.lftp
# -u --> user testftp --> 使用者名稱 test 密碼 192.168.0.225 -->遠端主機 ip
open -u testftp,test 192.168.0.225
#切換本地端目錄到/ftpsync 必須先建立此目錄
lcd /ftpsync
#開始mirror 只針對較新的檔案
mirror -n

#chmod u+x /root/ftpsync.sh
排入cron job
#crontab -e
0 2 * * * /root/ftpsync.sh

完成


星期五, 9月 30, 2005

LVM2 on FC3 note

Fedora core 3 使用LVM version 2
在使用snapshot 及 pvmove的部份由於核心在
Device Drivers ---> [*] Multiple devices driver support (RAID and LVM) ----> <*> Device mapper support < > Crypt target support < > Snapshot target (EXPERIMENTAL) < > Mirror target (EXPERIMENTAL)
有關於Snapshot and Mirror的部份為Module
故實做的時後會出現 not detect in kernel
解決方式
find /lib/modules -name*snap*
find /lib/modules -name *mirror*
確定driver 有編譯進模組
modprobe dm-snapshot
modprobe dm-mirror

就可以了

星期日, 9月 25, 2005

MRTG on RedHat 9

這兩天在build osc 覺得網站有點慢所以就參考網路上的文章來裝MRTG
文章出處
http://phorum.vbird.org/viewtopic.php?p=88479&sid=feed284ccd2f560817b7976819eaecf9
由gioyan兄所撰寫的,個人覺的最容易上手

故...照本宣科果然就裝起來了^^
改天再來玩CPU 偵測的部份




以下為原文
*********************************************************************************
原文已貼在版上 在這邊也貼一下
因為我是看了cerami兄的文章 有感而發 深覺擁抱mrtg不必那麼痛苦
而寫的這篇文章 算補充吧

cerami寫得不錯 但某些地方我覺得您把簡單的事寫的太複雜了啦
其實您可以更容易安裝好mrtg的

最好是安裝redhat 9.0 時就勾選mrtg和snmp和GD繪圖函數相關套件 可以省下很多麻煩
本文章是專門針對Redhat 9.0的 (Fedora Core 1應該也行吧)
文章看起來很長 但很多只是我為了要說明清楚
真正的安裝步驟 其實很少 很容易的 不要嚇到啊
在RedHat9.0上我可以保證你一定成功 不成功變成仁

檢查一下
rpm -qa | grep perl
rpm -qa | grep zlib
rpm -qa | grep gd
rpm -qa | grep libpng
rpm -qa | grep net-snmp
rpm -qa | grep mrtg

在裝Redhat9時輕輕勾兩下 以上套件全部OK 舉手之勞,何樂而不為?
(另外我比較囉唆 建議順便把MYSQL也勾起來 WHY?因為最近MYSQL裝不起來的文章
越來越多..很多人要碰MYSQL時才發現當初沒裝,與其浪費時間在安裝MYSQL..不如把心力放在研究MYSQL身上..最妙的是還有人安裝時會去把APACHE取消掉實在是猜不透他啊 ~~ 提外話 這跟MRTG無關啦)

如果沒裝或是有缺 請自行解決

缺GD繪圖函數?..找找看~不會很難找的

當然MRTG還會用到APACHE...這個是REDHAT9.0預設會安裝的套件...如果您連這個都沒有
也請慢慢安裝吧

很多人會覺得MRTG難裝 應該是卡在安裝套件的問題上 花了很多時間
找齊套件後 安裝個半天問題又一堆 所以還是老話一句
安裝REDHAT9.0時 輕輕勾兩下 舉手之勞,何樂而不為?
當然您若比較有研究精神 我給您拍拍手

接下來進入正題
MRTG是利用snmp通訊協定運作的 所以snmp要先搞定

先處理snmp的設定檔
我的做法是直接修改/etc/snmp/snmpd.conf
cerami兄認為這個檔有問題 我倒不這麼覺得
請先找到這兩行
# sec.name source community
com2sec notConfigUser default public
這行"先不用"改 請注意public這個設定值 它跟以後製作mrtg檔時有關

再找到
view systemview included .1.3.6.1.2.1.1
view systemview included .1.3.6.1.2.1.25.1.1

請在中間加上一行 變成以下這樣
view systemview included .1.3.6.1.2.1.1
view systemview included .1.3.6.1.2.1.2
view systemview included .1.3.6.1.2.1.25.1.1
加上這一行後 mrtg就可以監測本機的流量 否則不行
(別問我 網路上看來的)

好了 存檔吧 /etc/snmp/snmpd.conf真的就只要加上這一行 就ok了
/etc/rc.d/init.d/snmpd start
啟動snmp吧 至此snmp部分已經完成 接下來mrtg的部分

產生mrtg設定檔/etc/mrtg/mrtg.cfg
假設本機網卡ip是192.168.88.88
下指令
cfgmaker public@192.168.88.88 > /etc/mrtg/mrtg.cfg
解釋一下上面這一行 public是什麼?
還記得在設定/etc/snmp/snmpd.conf時
我特別請您注意
com2sec notConfigUser default public
這一行中的public嗎? 沒錯 這兩個是有關係的
public是預設值 您可以在/etc/snmp/snmpd.conf中把public改掉
譬如 改成這樣吧
com2sec notConfigUser default mymrtg

好 那您在產生/etc/mrtg/mrtg.cfg時 就要下
cfgmaker mymrtg@192.168.88.88 > /etc/mrtg/mrtg.cfg

如此一來所產生出的mrtg.cfg才能成功與192.168.88.88這台主機上的snmp聯繫

為什麼要這樣做呢? 因為mrtg不只可以藉由snmp分析本機
他也可以分析在遠端 有啟動snmp的任何主機
假設對方主機的ip是66.66.66.66 我們猜測它的snmpd.conf中保留預設值為public 並未修改
那麼下cfgmaker public@66.66.66.66 > /etc/mrtg/mrtg.cfg
就可以製作出可以分析對方主機的mrtg.cfg設定檔
若對方沒有其他防備措施 那您就可以在您自己的本機上利用它的snmp做出mrtg分析圖囉 同理 當您有多台server要分析時 就可以用這一招 而不用在每一台都裝mrtg了

我這邊還是用public 只是教學用 你們可以自己改
> /etc/mrtg/mrtg.cfg 就是把結果輸出到mrtg.cfg 這不用多說

/etc/mrtg/mrtg.cfg設定檔製作好後 再打開修改一下
vi /etc/mrtg/mrtg.cfg
加上以下設定(沒有的話請加上..有的話拿掉註解 並注意是否正確)
Workdir: /var/www/html/mrtg # mrtg網頁目錄
Refresh: 300 # 每300秒網頁重新整理
Interval: 5 # mrtg每5秒抓一次資料
Language: big5
Options[_]: growright #圖表由右邊畫到左邊

注意: RedHat9.0內附的mrtg網頁檔案位置在/var/www/html/mrtg
去檢查看看 應該都有

好了 設定檔大公告成 接下來可用此設定檔產生mrtg網頁

請先做一件事 因mrtg不支援UTF-8編碼
所以修改一下/etc/httpd/conf/httpd.conf
找到AddDefaultCharset iso-8859-1
改成AddDefaultCharset big5
存檔 重啟/etc/rc.d/init.d/httpd restart

下指令
env LANG=C mrtg /etc/mrtg/mrtg.cfg

會出現一些WARNING警告訊息 不管他
連下三次 若沒有錯誤訊息 就成功了

接下來打開瀏覽器 連到http://192.168.88.88/mrtg/192.168.88.88_2.html
就可以看到成果了
至於192.168.88.88_2.html怎麼來的?
打開/etc/mrtg/mrtg.cfg觀察一下 就知道囉

看一下/etc/cron.d/mrtg
您會發現redhat9.0已幫您設定好mrtg自動每5分鐘執行一次呢


進階使用請自行搜尋
很多人都只卡在安裝這一關過不去

網路上很多mrtg教學文章 關鍵部分一筆帶過
有些甚至連snmp都沒提到
照著做恐怕只會加深挫折感而已
**********************************************************************************

星期一, 9月 19, 2005

Centrino無線上網 on Fedora core 4

今天被迫升級FC4.....因為升級Fedora core 3 的xorg套件
notebook的X window昏倒

一氣之下重灌
就決定使用Fedora core 4
但是卻找不到 ipw 2200套件於可愛的apt

後來去拜了google大神
求得此解

需安裝
ipw2200的套件 (ipw2200-1.0.0-24.rhfc4.at.i386.rpm)
以及kernel driver (ipw2200-kmdl-2.6.12-1.1447_FC4-1.0.0-24.rhfc4.at.i686.rpm)
由以下網址取得
http://atrpms.net/dist/fc4/ipw2200/
需有下面的firm-ware
ipw2200-firmware-2.2-5.at.noarch.rpm (需要2.2的版本)
由以下網址取得
http://atrpms.net/dist/common/ipw2200-firmware/

取得後,,,,於終端機下
#rpm -ivh *
安裝剛剛那三個套件
重新開機

Ok.....enjoy it

星期六, 9月 17, 2005

Notebook 重灌notes

今天做了notebook的升級
30GB HD to 80GB HD

1.安裝apt
http://apt.nc.hcc.edu.tw
安裝apt套件並更新

2.更改語系設定
#vi /etc/sysconfig/i18n
修改UTF-8 為Big5

3.更改輸入法設定為xcin
#service iiim stop
#chkconfig iiim off
功能表-系統設定-輸入法-調整為xcin
#vi /etc/chinese/xcin/xcinrc
修改自己喜歡的詞音輸入法

4.安裝jpilot
使用jpilot-0.99-1
yum的版本到0.99-2但是中文會有亂碼故使用0.99-1
記得要chmod 666 /dev/ttyS0

5.修改 hostname
/etc/hosts
/etc/sysconfig/network

6.安裝java環境

7.安裝openoffice 1.1.3 firefly 到/usr/local下

8.安裝acrobat reader for linux

9.設定nb 無線上網
以升級的kernel加上使用apt 安裝
ipw2200-firm的套件就可以上網
跟jack大大購買3com的網卡
參考摩扥學園的文章
將我的3com網卡也安裝上去了
安裝方法為

O/S Fedora core 3
* Linux Kernel 核心
需要搭配 Linux kernel 2.6.5 以上版本,我自己則是升級到 2.6.9。

* 所需相關 package
請安裝以下 package :
使用apt安裝
apt-get install hotplug pcmcia-cs wireless-tools

* Prism54 相關 firmware 下載及安裝
到 http://prism54.org 下載相對應的 firmware
下載網址為
http://prism54.org/~mcgrof/firmware/
小弟是抓1.0.4.3

將1.0.4.3.arm的檔案更名為isl3890
l----->是小寫的L
複製到/lib/firmware

**這點跟在摩扥學園有點不一樣**
剛開始的時候把檔案放在如同摩托學園文章中提到的/usr/lib/hotplug/firmware/isl3890
但是會抓不到......雖然底下也看到其他的驅動是指向/lib/firmware

**啟動網卡並設定essid**
#system-config-network

關於AP的掃描可以用
#kwifimanager 來偵測

參考網頁

http://moto.debian.org.tw/viewtopic.php?t=5174&highlight=3Com

10.升級firefox and thruderbird
移除原來的英文版改為中文版

11.安裝VMWare 5.5 Beta
重點在於 C header location
在 /lib/modules/2.6.12-1.1376_FC3/build/include

12.安裝thunderbird及設定e-mail account

星期三, 9月 07, 2005

轉貼:Tux Magazine, 新的免費線上雜誌

發表人 whisky 於 2005/9/4 6:09:33 (1166 人讀取)
推薦網站

網路上已經有不少關於 GNU/Linux 或是 FS/OSS 的線上雜誌。但是一般這類的雜誌針對的對象都是屬於玩家或是 IT 等專業人士。對於 GNU/Linux 的初學者來說,教學網站是不少,但是專門寫給他們看得雜誌卻不可多得。

Tux Magazine 就是一份針對 GNU/Linux 初學者所編寫的線上雜誌。這份雜誌到目前已經出到第六期,而雜誌的出版者跟網路上有名的 Linux Journal 相同。

根據網站上的 Editorial 所說,這份雜誌的目標是每個月提供給 GNU/Linux 的初學者一份可下載的 pdf 格式文件,內容則包含了從家庭使用,工作到遊戲等不同的領域。提供完整並且簡單的教學,硬體和軟體相關的測試報告等等。所有你期待在一本雜誌裡面可看到的資訊,應該都包含了。

而最重要的,就如同在 Editorial 裡面所說的:

引言:


Our style is hands-on, welcoming and non-threatening, speaking in a jargon-free style that everybody can understand.



親切的幫助,和善的語氣,沒有一堆專用術語每天飛...這不就是很多新手進入 GNU/Linux 時最期望的嗎?

唯一的缺點..這是一份英文的雜誌。不過,如果有人願意幫忙翻譯成中文(然後放在 cldp 網站上?),或許他們也會很樂意看到不同語言的版本的出現?

同時,如果你對幫忙寫作有興趣,你也可以在下面的連接找到如何幫 Tux 寫文章。

要下載這份雜誌,你必須先註冊。而到現在為止,註冊還是免費。

http://www.tuxmagazine.com/
http://www.tuxmagazine.com/xstatic/editorial/editorial
https://www.ssc.com/tx/subs/NewDigital.php
http://www.tuxmagazine.com/xstatic/advertising/prodreviews

星期日, 8月 28, 2005

MS class note

2005/8/20

WinXp 不提 名稱解析 ---2276先講完

Module 1:

OSI (Open systems Interconnection)
ISO (International Standards Organization ) 於1978 制定OSI
TCP/IP 於1974年制定
Unix 於1969年

Physical Layer 實體層: 1.媒體定義:接腳.訊號0.1
2.編碼方式:曼徹斯特.微分曼徹斯特

對應設備:Repeator,Hub(1.Active Hub 2.Passive Hub)
Ex:Passive Hub 有線電視分接頭

線材部份
category 1 2M telphone
2 4M tokenring
3 10M
4 16M tokenring
5 100M
6 2.4G

EIA/TIA 568B
白橙 橙 白綠 藍 白藍 綠 白棕 棕
Tx+ Tx- Rx+ Rx-
1 2 3 6

Data-Link Layer 連結層: 1.MAC:定址.框架化. 存取CSMA/CD
2.LLC:錯誤控制.流量控管
對應設備: Switch, Bridge (介紹Switch and Hub 的差異)

定址的部份: Lab:使用ipconfig /all 觀察
Physical Address . . . . . . . . . . . . : 00-00-00-00-00-00
(48bits Physical Address / 6 Bytes Physical Address)

框架化: 以乙太網路介紹
--------------------------------------------------------------
| D MAC | S MAC | 0800 | Data | CRC |
--------------------------------------------------------------

存取:CSMA/CD

<---------. ------->
-----------------------------------------------------------
| | | |
A B C D
CSMA:多重載波
CD: 碰撞偵測

LLC 錯誤控制:利用CRC 檢查正確性
流量控制:利用buffer



Network Layer 網路層: 1.定址: 區域性, 唯一性
2.路由:
對應設備: Router, Layer 3 Switch
------------------
------------------------- | Router |------------------------------
------------------
<---collision------> <---collision------------->
<---broadcast----> <---broadcast----------->

------------------
------------------------- | Switch |------------------------------
------------------
<---collision------> <---collision------------->
<--------------------------broadcast------------------------------->

------------------
------------------------- | Hub |------------------------------
------------------
<-----------------------collision Domain------------------------->
<---------------------broadcast Domain------------------------->


以下的環境要採購那些設備?
------------------
-----IP----------------- | Router |-----------------IP---------
------------------
------------------
-----IPX--------------- | Router |----------------IPX---------
------------------
------------------
-----BNC------------- | Hub |---------------UTP---------
------------------
------------------
-----ethernet------- | Bridge |------Token Ring--------
------------------

Layer 3 Switch
----------------------------------------------------
| 0 0 <-----> 0 0 |
----------------------------------------------------
VLAN1 VLAN2


Transport Layer傳輸層: 1.錯誤控制 2.流量控制

Session Layer 會議層: 1.連線維護
2.資料交換方式: 全雙工, 半雙工, 單工
單工: 收音機
半雙工: 對講機
雙工: 電話

Lab:開啟兩個browser 觀察session

Presentation Layer 表現層: 資料格式 加密/解密 字元碼(ASCII,EBCDIC)

Lab:開啟網頁觀察原始檔

Application Layer 應用層: Server 服務 Client 要求

介紹光碟的內容(OSI多媒體部份)......概述
光碟內
addread ----> RFC文件
multimedia --> 上課用的多媒體及flash練習
flash ----> Flash程式

介紹RFC
http://www.ietf.org/rfc.html

LAB: 輸入書上的1180觀察文件內容(TCP/IP)

介紹TCP/IP Protocol Suite

TCP: connection-oriented reliable communications
http://tw.yahoo.com

Three way and shake
A ------------------> B
<-----------------
------------------>

UDP: connectionless communications
for example: DNS service

Ipv4: 32 bits
Ipv6: 128 bits

ARP: Address Resolution Protocol IP ---> MAC (將IP轉換成MAC address)
RARP: MAC ---> IP (將MAC address轉換成IP)

OSI 7 Layer 只有 Physical Layer 有實體連結,其他都是虛擬連結


ICMP:Internet Control Message Protocol Ex: ping and router 回覆錯誤訊息
Lab: ping www.microsoft.com ---> Request timed out
http://www.microsoft.com ---> Ok
ICMP 不保證網路是否正常或是不正常,單純測試用. 但某些網站會拒絕回應
ICMP request: type 8 code 0
ICMP reply: type 0 code o

Unicast: 目的是一台主機

--->
--------------------------------------------------
| | | |
A B C D

A unicast B
------------------------------------
| D B_MAC | S A_MAC |
------------------------------------

Broadcast: 目的是同一實體網路上的所有主機
--->
--------------------------------------------------
| | | |
A B C D

A broadcast
---------------------------------------------------
| FF:FF:FF:FF:FF:FF | S A_MAC |
---------------------------------------------------
broadcast and unicast 都是傳送一個封包,所以不會遽增網路流量.只是因為 broadcat 封包每台主機都要處理.會影響效能

Multicast: 目的是一群主機

--->
--------------------------------------------------
| | | |
A B C D

A Multicast (for B and C)
IP address range 224~239開頭的ip Multicast

---------------------------------------------------
| 01:00:5E:xx:xx:xx | S A_MAC |
---------------------------------------------------
固定以 01:00:5E開頭
後面xx:xx:xx 取TCP/IP 低23位元的組合
例如:ip為 224.0.1.10
D MAC為 01:00:5E:00:01:0A
00:01:10對應224.0.1.10中的0.1.10使用16位元轉換
0 --> 00 1 --> 01 10 --> 0A
概略介紹
SMTP: Simple Mail Transport Protocol郵件傳送及交換
SNMP: Simple Network Management Protocol


What is ping?

Lab: ping 10.0.1.254 -----> ping 區網應該< 10以下的ms
ping 168.95.1.1 -----> ping 外網應該< 200以下的ms
了解網路品質及狀況

Network Monitor
在2000 & 2003 server上才有server端但是為簡易版
在 Microsoft Systems Management Server (SMS) 為全功能版
XP --> 只有client端 --> 被監控

可以使用 http://www.ethereal.com 上面的工具 ---> 全功能版


Lab: Install Network Monitor

1.Start --> Control Panel --> Add or Remove Programs
2.Add/Remove Windows components
3.Management and Monitoring Tools --> Details
4.Network Monitor Tools --> Select --> Ok --> Next -->select source --> open --> Finish

在教室的環境由於是用image所以必須開啟my computer
1.E:\Document and Setting\Administrator --> Mouse Right click --> Properties
2.Security --> Remove unknown user and add administrator --> 勾選Full control --> OK


在家中練習不需要更改以上!!

Lab: ping 10.0.1.254並用Network Monitor監看
Network Monitor

1.Start --> All Programs --> Administrative Tools --> Network Monitor
2.Select a network --> Local computer --> Local Area Connection --> OK
3.Capture --> Start
4.使用command prompt -->ping 10.0.1.254
5.Capture --> Stop and View
6.觀察
1.ETHERNET: Destination address, Source address
2.IP: Source Address, Destination address
3.ICMP:



How Dotted Decimal Notation Relates to Binary Numbers

27 26 25 24 23 22 21 20
128 64 32 16 8 4 2 1

Ex:
228 --> 1 1 1 0 0 1 0 0
0 --> 0 0 0 0 0 0 0 0
255 --> 1 1 1 1 1 1 1 1


What are the classes of IP Addresses?

class A Network host
w . x . y . z
第一個bit為必須0, 1~126開頭的網段 27-2個網路
Ex: ping apple.com

class B Network host
w . x . y . z
前兩個bits為必須10, 128~191開頭的網段 2(16-2) 個網路

class C Network host
w . x . y . z
前三個bits為必須110, 192~223開頭的網段 2(24-3) 個網路

class D Multicast
前三個bits為必須1110, 224~239開頭的網段

Subnet Mask

1 bits to indicate the network ID
0 bits to indicate the host ID

Example: 10.0.1.200/255.0.0.0

00001010.00000000.00000001.11001000 (IP)
AND 11111111.00000000.00000000.00000000 (Subnet Mask)
------------------------------------------------------------------------------------------------
00001010.00000000.00000000.00000000
10 . 0 . 0 . 0 (網段)

練習Module2 p15

介紹Private IP range

練習Module2 p15

為何要切割子網路?
1.Mix different network technologies
2.Overcome limitations of current technologies
3.Reduce network congestion
4.security

如何切割子網路 CIDR (Classless Inter Domain Routing)

1.依實際需求算出subnet mask (依照網路數量或是主機數量)
網路數量 小於等於 2的n次方
主機數量 小於等於 2的n次方
例如切割3個網路 小於等於2的2次方
192.168.0.0/255.255.255.192
192.168.0.0/11111111.11111111.11111111.11000000
向右邊移動兩個bits
例如需要100台主機 小於等於2的7次方
192.168.0.0/255.255.255.128
192.168.0.0/11111111.11111111.11111111.10000000
向右邊移動一個bits --> 因為host id 要大於100 故至少要27
2.根據subnet mask 展開每一個網路
192.168.0. 00000000~~00111111 192.168.0.0~63
01000000~~01111111 192.168.0.64~127
10000000~~10111111 192.168.0.128~191
11000000~~11111111 192.168.0.192~255
3.host id 全為0 --> Network, host id 全為1 --> Broadcast


CIDR
切割出來的subnet mask and host 都一樣
提一下速算法

2005/8/21

提一下IP浪費的問題及如何解決
使用private network (proxy & nat)

VLSM (variable length subnet masks)

介紹 192.168.0.0/255.255.255.0 及 192.168.0.0/24

假設有切割子網路的需求, 需求主機數量分別為
1.100 hosts 2.60 hosts 3. 20 hosts 4.16 hosts

其切割方式
192.168.0. 00000000
CIDR 00000000 --> 192.168.0.0/25 給100 hosts
10000000 剩下的子網路再切割
CIDR 10000000 --> 192.168.0.128/26 給 60 hosts
11000000 剩下的子網路再切割
CIDR 11000000 --> 192.168.0.192/27 給 20 hosts
11100000 --> 192.168.0.224/27 給 16 hosts
可搭配p51回去練習
What is Supernetting?

參考Module2 P53頁

220.78.168.0 11011100 01001110 10101000 00000000 -->start
220.78.175.0 11011100 01001110 10101111 00000000 -->end
<------------ 21 bits相同------->

將network Id往左邊移三個位址合併其網路
所以此連續的網段可以記為 220.78.168.0/21

Module 2 P.25 提到

RFC 950 文件提到舊的router設備只支援RFC 950, RFC 950 不允許subneting網路id全為0以及全為1. 故要將兩個子網路刪除,不可以使用!!
但現今的設備都支援RFC 1812的文件, RFC 1812的文件就允許網路id全為0以及全為1的subnet. 故可以使用所有的subnet.

Using IP Routing Tables

What is a Router?

1.啟動路由
2.有兩個以上的網路介面

The default gateway

1.Routes packets to other network.
2.Is used when the interal routing table on the host has no information on the destination subnet.

default gateway 通常為router

internet
| public ip
------------------
| Router |
------------------
.254 | | .254
--------------------- -------------------
| |
.1 A .1 B
192.168.1.0/24 192.168.0.0/24
default gateway default gateway
192.168.1.254 192.168.0.254


Practice: Determining Whether an IP Address is a Local or Remote

Your IP address 176.149.115.8
Subnet mask 255.255.252.0

Destination 176.149.117.201
Subnet mask 255.255.252.0

Is the destination address local or remote?

Ans: remote
256-252=4 115/4 = 28 28*4=112 --> 自己
117/4 = 29 29*4=116 --> remote

What is static and dynamic routing

Windows 2003 只支援 RIP(Routing Information Protocol) and OSPF(Open Shortest Path First) 兩種協定

路由表不是路由器的專屬.支援TCP/IP 的host 也有routing table

route print & netstat -r 兩個指令可以觀察路由表


255.255.255.255/255.255.255.255 limit broadcast 實體廣播
下表摘要列出用於指派連結至不同速度的網路介面之路由的標準。
連結速度
公制
大於 200 MB
10
大於 20 MB 且小於或等於 200 MB
20
大於 4 MB 且小於或等於 20 MB
30
大於 500 KB 且小於或等於 4 MB
40
小於或等於 500 KB
50

Lab: 觀察routing table

Teacher綁兩個ip
| 172.16.200.1
| 10.0.1.200
-----------------------------------------------
| |
A B 10.0.1.x
於B主機上
ping 10.0.1.200 --> OK
ping 172.16.200.1 --> timeout

解決此一問題 --> 新增一筆routing

route add _____________ mask ___________________ ______________
主機 255.255.255.255 gateway
網路 network subnetMask
Default gateway 0.0.0.0

route add 172.16.200.1 mask 255.255.255.255 10.0.1.200 (新增主機路由)

route print

ping 172.16.200.1 --> OK

route delete 172.16.200.1 mask 255.255.255.255 (刪除主機路由)

route print

ping 172.16.200.1 --> timeout

route add 172.16.200.0 mask 255.255.255.0 10.0.1.200 (新增網路路由)

route print

ping 172.16.200.1 --> OK

如果於route 指令後面加上 -p (persistent route) 就可以永遠生效, 沒有加上 -p 為暫時性的生效


Module 3 configuring a client IP address

IP addresses can be:

1.Static 靜態IP
2.Dynamic 動態IP

練習static ip 設定 並使用ipconfig來檢視

使用DHCP設定 IP

Discover
------------------->
Offer
<------------------- ------
Host A Request | |
DHCP --------------------> | | scope
client Ack ------
<-------------------- DHCP Server


View DHCP Assigned Setting on the client

使用ipconfig /all查看

DHCP Enabled yes --> Dhcp client
DHCP Server ip --> Dhcp server ip
Node type --> Dhcp type
Lease Obtained -->何時租用
Lease Expires -->租約到期


Renewing an IP Address

lease time
|----------------|----------------|---------|

1∕ 2 7/8
renew rebind
(use unicast) (use broadcast)
(T1) (T2)
|---------------------------------------------| (成功就將租約延長)

To release and renew an IP address

ipconfig /release
ipconfig /renew


APIPA(Automatic Private IP Addressing)

Windows 98 之後支援APIPA
range from 169.254.0.1 through 169.254.255.254

Lab: APIPA 練習 and Alternate configuration

前置動作:關閉DHCP server

ipconfig /release
ipconfig /renew


取得DHCP client Ip失敗 --> 使用APIPA
ipconfig /all

使用Alternate configuration
1.start --> control panel --> network connections --> localarea connection
2.properties --> TCP/IP --> properties --> Alternate Configuration --> User configured --> ok --> close

ipconfig /all


Disable APIPA on the entire computer (停用APIPA)
1.start --> run --> regedit --> ok
2.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
3.Edit --> New --> DWORDValue
4.Type “IPAutoconfigurationEnabled” --> Enter
5.Reboot



Module 4: Configuring a client for Name Resolution

NetBIOS(Network Basic Input/Output System)
DNS(Domain Name System)



DNS (computer name) Wins
DNS Host name Application NetBIOS Name
Hosts 255個字 15個字 lmhosts
Socket NetBIOS
Transport
TCP UDP


Internet


使用arp -a 看arp cache

arp cache dynamic 2 mins ~ 10 mins
arp cache static (使用arp -s 設定)
example:
arp -s 10.0.1.201 33-33-33-33-33-33
IP MAC
arp -d 10.0.1.201 (刪除 arp cache)

arp -g -N 10.0.1.200 (觀察10.0.1.200網卡上的arp cache)

arp -g 10.0.1.254 (只查看10.0.1.254)

ping 10.0.1.254
arp -a

Lab: 修改computer name ( 修改為Serverxx)

start --> My computer --> right click --> Properties --> computer name --> change -->type “Server6” --> ok --> ok
reboot

NetBIOS Name
第16 byte name
Suffix(Hex) First 15 Characters Networking Service
00 Computer name Workstation service用戶端
00 Domain name Domain Name
03 Computer name Messenger service 信差服務
20 Computer name File Server Service
1C Domain name Domain controllers
1B Domain name Domain master browser

使用nbtstat -n 查看
NetBT(NetBIOS over TCP/IP)
Run on top of the TCP/IP network protocol
Supports discovery, registration and release of NetBIOS names
Uses broadcast of a NetBIOS name server, depending on node type


NetBT Node type

1 2 4
B-node P-node Mix-nod
NetBIOS cache NetBIOS cache NetBIOS cache
| | |
Broadcast Wins Broadcast
| | |
lmhosts lmhosts Wins
|
lmhosts


8
H-node
NetBIOS cache
|
Wins
|
Broadcast
|
lmhosts
---------------------
|
DNS cache
|
localhost name
|
hosts (2003 會將 hosts 寫入DNS cache)
|
DNS

如果下ipconfig /all

Node type ...............Unknown --> H-node

2003 可以填上12筆wins server
9x 只可以填上2筆wins server



Lab:如何修改node type

1.start --> run --> regedit --> ok
2.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters
3.Edit --> New --> DWORDValue
4.Type “Nodetype” --> Enter
5.select “nodetype” --> modify --> 填入適當的值 --> ok
6.Restart network
7.ipconfig /all


nbtstat -c 查看NetBIOS 資訊
nbtstat -R 根據lmhosts 來update cache

Lab: 設定lmhosts

lmhosts 檔案存放於 (沒有副檔名,其目錄下的lmhosts.sam為sample)
系統安裝目錄\System32\drivers\etc
於該目錄下新增一檔案lmhosts (沒有副檔名)


10.0.1.200 london #PRE
ip NetBIOSname 一定要大寫...設為#PRE會放入cache永遠生效

nbtstat -R
nbtstat -c

ping 旁邊的同學ip
nbtstat -c (cache 為10mins)



What is WINS?

-------
| |
| |WINS server
-------
|
----------------------------------------------------------------
|
A
WINS client
開機會註冊名稱關機會release名稱


2003 可以填上12筆wins server
9x & nt 只可以填上2筆wins server


DNS search

DNS cache (windows 2000之後有DNS cache)
|
localhost name
|
hosts (2003 會將 hosts 寫入DNS cache)
|
DNS
----------------------------------------
NetBIOS cache
| ------
Wins |
| |
Broadcast | H-node
| |
lmhosts ------

Using a Hosts File

hosts 存放於
Microsoft Windows NT, 2000,and XP :

系統安裝目錄\System32\drivers\etc\hosts

Microsoft Windows 95 or Windows 98:

系統安裝目錄\hosts

Lab: 編輯hosts

修改系統安裝目錄\System32\drivers\etc\hosts
加入
10.0.1.200 router
ping router --> 成功
ipconfig /displaydns --> 顯示 DNS cache
ipconfig /flushdns --> 清除 DNS cache

http://www.icann.org/registries/listing.html (DNS Top-level domain註冊類別)

The DNS Suffix

www.pchome.com.tw
<----><------------------->
Host DNS Suffix
<---------------------------->
FQDN

nslookup

Lab:

nslookup www.microsoft.com

nslookup

server 168.95.1.1
>www.microsoft.com

hostname

netstat

netstat -a -o (-o process id)

ping 127.0.0.1

ping 自己的ip

ping gateway

ping 168.95.1.1

ping FQDN

ping -i 3 168.95.1.1 ( -i 3 #TTL 為3)

tracert -d 168.95.1.1 ( -d 不做名稱解析)

pathping 168.95.1.1

星期六, 8月 13, 2005

LINUX SERVER HACKS 心得

歐萊禮LINUX SERVER HACKS 讀書小雜記
Chapter 1 伺服器基礎
Hack #10
#export TMOUT=600
當bash 閒置600秒也就是十分鐘就將閒置的使用者踢出去

Hack #15
#alias ducks='du -cks * |sort -rn|head -11'
找出目前目錄下前十名磁碟使用量的檔案

Hack #16
/proc 的樂趣
#cd /proc
#cat version
顯示目前啟動的核心
#ls -hl kcore
觀察所安裝的RAM
#cat partitions
觀察開機期間找到的硬碟分割區與裝置

#cd 1
#ls -hl
觀察個別行程的結構
其中cwd 指向該行程目潛得工作目錄
exe 指向啟動該行程的binary
root 指向該行程的根目錄
cmdline 與 environ 分別記載啟動該行程的完整命令列及完整環境.不過這兩個檔案個別項目都是以NULL字元 ('\0') 相隔的.所以必須先用tr將檔案內容的輸出格式加以美化.才適合閱讀.
#cat environ | tr '\0' '\n'

星期六, 7月 30, 2005

轉貼 使用 yum 升級你的系統 (redhat9 升級到 CentOS 3.3) from SA

原文出處
http://phorum.study-area.org/viewtopic.php?t=28648
找個時間來Lab一下

由於 RedHat 9 已經沒有更新了, Fedora 雖然有個遺產計畫在更新, 但是好像沒什麼動靜, 上頭的異動速度又不快. 所以機房內的幾台安裝 RedHat 9 的主機, 也很久沒有更新了.

所以想利用今天開始的過年假期, 把這幾台機器升級到別的版本上頭.

我們選擇的是使用 CentOS 3, 因為這是一套與 RHEL 3 相容的版本, 而 RHEL 3 是基於 RedHat 9 發展的. 這樣子我們升級的異動會比較少一點.

升級主要參考 http://www.owlriver.com/tips/centos-31-ex-rhl-9/ 這一篇文章.

1. 到 http://linux.duke.edu/projects/yum/download.ptml 抓 yum 2.0.7 回來安裝.

2. 把 CentOS 3.3 的光碟中的 RPMS 目錄複製到主機中. 如 /centos/os/RPMS 下頭. 共有三片光碟.

3. 如果可能, 也把 CentOS 網站上頭的 updates 下頭的 rpm 也抓一份回來, 放到 /centos/updates/RPMS 下頭.

4. 建立兩個目錄 /centos/os/headers 與 /centos/updates/headers, 然後在 /centos/os 與 /centos/updates 下頭執行這個指令:
代碼:
cd /centos/os
yum-arch .
cd /centos/updates
yum-arch .

以便於建立 yum 的資料庫.

5. 匯入 CentOS 的 PGP Key.
代碼:
rpm --import http://mirror.caosity.org/centos-3/RPM-GPG-KEY-CentOS-3

上頭那個檔案在光碟內也有, 也可以直接匯入光碟內的 key.

6. 使用 rpm -e 指令, 移除非必要的 -devel 套件. (非必要)

7. 建立 /etc/yum-upgrade.conf 如下:
代碼:
#
[main]
cachedir=/var/cache/yum
debuglevel=2
logfile=/var/log/yum.log
pkgpolicy=newest
distroverpkg=redhat-release
installonlypkgs=kernel kernel-smp kernel-hugemem kernel-enterprise kernel-debug kernel-unsupported kernel-smp-unsupported kernel-hugemem-unsupported
tolerant=1
exactarch=1

[upgrade]
name=Centos upgrade
baseurl=file://localhost/centos/os/

[update]
name=CentOS-$releasever - Updates
baseurl=file://localhost/centos/updates/

如果沒有事先抓下這些 rpm, 也可以設成
代碼:
#
[main]
cachedir=/var/cache/yum
debuglevel=2
logfile=/var/log/yum.log
pkgpolicy=newest
distroverpkg=redhat-release
installonlypkgs=kernel kernel-smp kernel-hugemem kernel-enterprise kernel-debug kernel-unsupported kernel-smp-unsupported kernel-hugemem-unsupported
tolerant=1
exactarch=1

[upgrade]
name=Centos upgrade
baseurl=http://mirror.centos.org/centos/3.3/os/$basearch/

[update]
name=CentOS-$releasever - Updates
baseurl=http://mirror.centos.org/centos/3.3/updates/$basearch/

這樣子 yum 會在更新時上網抓檔案. 因為我們要更新好幾台, 所以先抓回來, 以免每次更新都再抓一次.
update 的部份也可以不設, 等升級到 CentOS 3.3 後, 再使用 yum update 去更新也可以.

8. 先更新 kernel 與 rpm.
代碼:
rpm -vv --rebuilddb
yum -y -t -c /etc/yum-upgrade.conf upgrade rpm kernel
rpm -vv --rebuilddb
yum -y -t -c /etc/yum-upgrade.conf upgrade rpm kernel

原本的文件說這兒要重開機, 不過似乎不用, 可以直接往下做.

9. 再更新整個系統
代碼:
yum -y -t -c /etc/yum-upgrade.conf upgrade

等 yum 跑完後, 你的 RedHat 9 就變成 CentOS 3.3 了, 再重開機使用新的 kernel.

如果檔案都抓回來, 在 local 的主機或網路上頭時, 整個更新的動作應該可以在 30 分到 1 小時之內完成.

我們的主機上頭有 mysql, postgresql, httpd, php, openldap-server, 整個更新完成後, 系統運作都很正常.

更新後, 跑了一天, 目前看起來只有一個問題, 就是有些機器在 su 到 root 的時候, 會發生 segment fault 的錯誤 (裝的東西都類似, 但有些機器會, 有些不會).

如果你有發生類似的情形, 可以在使用 su 指令前, 先 export LD_ASSUME_KERNEL=2.4.4 再執行, 就不會有問題了.
如果 2.4.4 不行.... 自己換個版本再試試.

同樣的升級方式, 應該適用於同樣是使用 rpm 格式的 linux 版本. 也就是不管是 redhat 8 -> 9, 9 -> fc1 .... 都應該可以適用.



這個星期週末, 順便把公司內的主機由 CentOS 3.4 換到 4.0 上頭了. 也是使用 yum 來處理.

之前在 CentOS 4 剛出來時, 找了一台機器試過, 會有些衝突 (kernel 與 udev), 前幾天在 CentOS 的討論區看到似乎有人成功轉換. 所以... 也跟著試看看.

結果... 發現... 那篇文章似乎有點問題, 連 yum 都先升級... 結果 yum 就不能用了...

我參考該說明, 修正一下, 步驟約如下 (x86-64 檔名有些不同):

1. rpm --import RPM-GPG-KEY-centos4
2. rpm -Uvh --force centos-release-4-0.1.i386.rpm
3. rpm -Uvh --force centos-yumconf-4-2.noarch.rpm
4. 安裝新的 kernel
rpm -ivh --force --nodeps kernel-2.6.9-5.0.3.EL.i686.rpm
5. 安裝 udev
rpm -ivh --force --nodeps udev-039-10.8.EL4.i386.rpm
6. rpm --rebuilddb
7. 設定好 yum-upgrade.conf, 然後執行
yum -c /etc/yum-upgrade.conf upgrade
8. 如果沒問題, 再安裝一次 kernel
rpm -ivh --force --nodeps kernel-2.6.9-5.0.3.EL.i686.rpm
9. rpm --rebuilddb
10. yum update 看看有沒有其他的要更新.
11. 更改 /boot/grub/menu.lst 指定用新的 kernel 開機
12. 重開機看看. (可能會移除一些舊的 driver, 加上一些新的 driver)

大致上是這樣處理.

其中可能有問題的是在 upgrade 那一個步驟, 可能會說有那些軟體是有衝突的. 就想辦法一個個先安裝或先移除, 等升級後再安裝.
我們碰到的有:

MySQL, 這個由 3.x 升到 4.1.x. 如果有裝 mysql-server, 會有問題.
我們的處理方式是先強迫安裝
rpm -Uvh --force --nodeps mysql-4.1.7-4.RHEL4.1.i386.rpm mysql-server-4.1.7-4.RHEL4.1.i386.rpm mysqlclient10-3.23.58-4.RHEL4.1.i386.rpm
然後在 yum-upgrade.conf 的 [main] 中加上
exclude=mysql-server mysql
後就可以避開這個問題. 至於原本的 mysql 資料庫, 原則上檔案可以相容, 並不用 dump 出來再 restore. 不過.... 如果你怕有問題... 就自己 dump 吧.

PostgreSQL, 這個由 7.3.x 升到 7.4.x 似乎不能直接使用原本的檔案. 所以我們只好先用 pg_dumpall 把資料複製下來, 等升級後再放回去. 因為要做這個動作, 所以就順便到 postgresql 網站抓了 8.0.1 的版本回來, 直接升到 8.0.1 上頭去.
在 upgrade 先備份
pg_dumpall > dbxxx.out
備份後執行 upgrade, 等 upgrade 後
移除 postgresql
rpm -e postgresql-libs postgresql perl-DBD-Pg php-pgsql
安裝 8.0.1 版本
rpm -ivh postgresql-8.0.1-2PGDG.i686.rpm postgresql-server-8.0.1-2PGDG.i686.rpm postgresql-libs-8.0.1-2PGDG.i686.rpm postgresql-contrib-8.0.1-2PGDG.i686.rpm postgresql-pl-8.0.1-2PGDG.i686.rpm postgresql-python-8.0.1-2PGDG.i686.rpm
把資料庫放回去
psql -f dbxxx.out template1

postfix, 在 upgrade 過程不會有問題, 但是 upgrade 後, aliases, aliases.db 會被改名, 要改回來才能啟動.

subversion, 先強迫升級
rpm -Uvh --force --nodeps subversion-1.1.1-2.1.i386.rpm subversion-perl-1.1.1-2.1.i386.rpm subversion-devel-1.1.1-2.1.i386.rpm

openldap, 升到 2.2.x 版, 由於新版的設定比較嚴格, 原本的 schema 可能要修改才會符合. 且 ACL 的語法不太一樣, 也要重設.


除此之外, 並沒有發現有其它的問題.

星期三, 7月 13, 2005

C's note

soft: Dev C++

凡介於/* */ 之間的文字會視為註解 //為開頭的也是註解
所有的C語言程式都是以main為開頭….Tourbo C會執行
左大括號{
和右大括號 }
之間的指令

舉個例子以下為hello.c的內容


/* 使用 #include file 將某個檔案包含在目前程式內*/
#include
#include
/*以下為程式的開始 */
main()
{

/* 請注意要以分號(;) 為結束一個指令字元 */
/*使用printf 列出字串 如果要換行使用 \n */
/*使用backslash 取消控制字元的使用 例如使用\" 來顯示雙引號 用\\ 來顯示\ */
printf("\"Hello world with double quote test \"\n ");
printf("Hello world\n");
printf("C:\\C\\Hello.c\n");

/* 使用system指令去執行 命令提示字元的指令pause ->可以暫停 */
system("pause");

/* 變數的使用是有限制的---使用大寫或是小寫字母或是底線(_) 為開頭*/
/* 變數的名稱則可為 1.大寫字母 2.小寫字母 3.底線 4.阿拉伯數字 */
/* 變數的宣告皆以分號(;) 作為結束 */
/* 如果變數於程式的起始位置就宣告了那則為整體(global)變數,對程式的任何部分中使用 */
/* 如果變數在函數程式內宣告.....則為區域變數(local variable) 只在宣告的函數中使用 */
/* 如果變數在函數參數位置宣告----則為用來接收呼叫程式所傳遞的值 */


int i;

// i的值為當時記憶體目前殘留的資料
printf("i=%d\n",i);
// 重新定義 i=0 所以列印出來會是零
i=0;
printf("i=%d\n",i);

// sizeof( ) 計算資料所佔的記憶體空間
printf("sizeof(i)=%d , sizeof(int)=%d\n",sizeof(i),sizeof(int));


// short int 值的範圍 -32768 ~ 32767 , 給超過範圍的值會變成其他的值
short si;
si=32767;
printf("si=%d\n",si);
si=32768;
printf("si=%d\n",si);
si=32769;
printf("si=%d\n",si);
si=32770;
printf("si=%d\n",si);
si=-32768;
printf("si=%d\n",si);
si=-32769;
printf("si=%d\n",si);
si=-32770;
printf("si=%d\n",si);


}

星期五, 7月 01, 2005

研討會結束 對postfix 的初體驗

實驗平台 Fedora core 3
Package: postfix-2.1.5-5

檢查是否有安裝rpm
#rpm -qa grep postfix
備份設定檔
#cp /etc/postfix/main.cf /etc/postfix/main.cf.bak
修改postfix的設定檔
#vi /etc/postfix/main.cf
將原來只在localhost listen 標記起來並對所有界面服務
#inet_interfaces = localhost
inet_interfaces = all

設定信任的內網
mynetworks = 192.168.0.0/24, 127.0.0.0/8
#service postfix restart
#netstat -tupln grep :25
此時postfix就在 port 25 listen
可以使用下列指令觀看postfix設定
#postconf
以下指令為觀看預設值
#postconf -d

Client傳送信件給Server的程序為
HELO / EHLO 網域名稱
MAIL FROM: 寄件者e-mail
RCPT TO: 收件者e-mail
DATA 信件內容然後以 . 為結束
QUIT 寄信完離開

針對 Client進行設限.....
請注意參數的部分由於要接續前面設定
....故要用以空白為首來開始撰寫代表續接
#vi /etc/postfix/main.cf
#針對client的ip/domain設限
smtpd_client_restrictions =
#允許內網不必檢查
permit_mynetworks,
#反解失敗就拒絕
reject_unknown_client,
#根據access清單拒絕client
#請先建立/etc/postfix/access檔案
#內容為 dynamic.hinet.net REJECT
#拒絕動態ip的client
#使用 #postmap hash:/etc/postfix/access 來建立DB
check_client_access hash:/etc/postfix/access,
#使用正規表示式拒絕名稱中有dynamic的主機連線
# 請先建立 /etc/postfix/access_re
#內容為 /dynamic/ REJECT
check_client_access regexp:/etc/postfix/access_re
reject_rbl_client cbl.abuseat.org,
#使用DNS Block List 黑名單機制
#如果 #host 57.41.61.66.cbl.abuseat.org --> 會出現 127.0.0.2
#代表 66.61.41.57 (host的時候要倒過來寫)這個 ip是廣告信server黑名單中的ip
#如果是正常的ip那會出現not found
#故利用此機制block spam mail server
reject_rbl_client sbl.spamhaus.org,
reject_rbl_client relays.ordb.org,
reject_rbl_client list.dsbl.org,
permit
#要求寄信前要提出helo的要求-------預設為no
smtpd_helo_required = yes
smtpd_helo_restrictions =
permit_mynetworks,
#拒絕不正確/未知的helo domain
reject_invalid_hostname,
reject_non_fqdn_hostname,
reject_unknown_hostname,
#拒絕外界但是宣稱是自己domain的helo
#請先建立 /etc/postfix/fake_helo
#內容 example.com REJECT
#利用#postmap hash:/etc/postfix/fake_helo 建立DB
check_helo_access hash:/etc/postfix/fake_helo
permit
#馬上拒絕不delay
smtpd_delay_reject = no
#根據Mail from來限制
smtpd_sender_restrictions =
permit_mynetworks,
#拒收來自於外界卻宣稱發自內部的信件
#建立 /etc/postfix/fake_from
#內容 example.com REJECT --> example.com 為自己公司的domain
#使用 #postmap hash:/etc/postfix/fake_from
check_sender_access hash:/etc/postfix/fake_from,
#拒絕不正確和未知的domain
reject_non_fqdn_sender,
reject_unknown_sender_domain,
permit
#只允許內網Relay
smtpd_recipient_restrictions =
permit_mynetworks,
reject_unauth_destination

#service postfix reload

Enjoy it ^^

P.S: 在Redhat 9.0中的postfix為postfix-1.1.12-1 有些許功能不支援

星期二, 6月 28, 2005

Fedora Legacy Project

有鑑於Fedora已經出到 core 4
但是還是有些主機使用就版本的RedHat 9.0 or older
觀看網路上有些apt都開始慢慢沒有維護9.0
故上台南教網中心還有Fedora Legacy Project的官網去
download 套件希望讓使用RedHat9.0的user可以繼續升級套件

台南教網中心
http://sys.tnc.edu.tw/up.php

Fedora Legacy Project
http://fedoralegacy.org/#main

目前使用yum更新RedHat 9.0中^^

星期日, 6月 12, 2005

好用的tar ball 管理軟體checkinstall

當安裝source code如tall balls 的軟體時
好處是彈性很大缺點是管理不易
故使用一個小軟體check install來管理tall balls的軟體
他會把tall ball 包裝成rpm or slackwave or debin package
並安裝.使用上粉方便
官方網站
http://asic-linux.com.mx/~izto/checkinstall/

使用方法
當./configure
make之後
下checkinsatll他就會幫我們make install
並詢問要包裝成何種package
相當的方便喔

星期四, 6月 09, 2005

awk and quota

於課堂上有討論到quota policy的問題
就寫了一個shell script來套用

[root@nb ~]# cat quota.sh
#!/bin/bash
awk -F: '$3 > 499' /etc/passwd|cut -d: -f1 > /tmp/test
echo "Please Input your quota policy user"
read b
for i in $( cat /tmp/test )
do
echo "set quota for user"
edquota -p $b $i
echo finish
done

星期五, 6月 03, 2005

VMware on Fedora core 3

VMware on Fedora core 3
安裝環境Fedora core 3 and VMware workstation 5
安裝Guest O/S RedHat 9.0
注意事項
1.網卡的部份使用NAT
2.如果是使用DHCP根據user Guide
#vi /etc/sysconfig/network-scripts/ifcfg-eth 加入
check_link_down () {
return 1;
}
3.Edit -->preference-->Hot Keys 改為Ctrl+Shift+Fn

星期四, 5月 26, 2005

Fedora core 3 無線上網

今天拿到NoteBook就看了些文章
關於無線上網
以升級的kernel
加上使用apt 安裝
ipw2200-firm的套件應該就可以上網
找個時間Lab一下

安裝Fedora core 3 kernel source

方法kernel-2.6.9為例
1. rpm -ivh kernel-2.6.9-1.667.src.rpm
2. cd /usr/src/redhat/SPEC
3. rpmbuild -bp --target i586 kernel-2.6.spec
4. cd /usr/src/redhat/BUILD/kernel-2.6.9/linux-2.6.9
5. cp configs/kernel-2.6.9-i586.config .config
6. make oldconfig
7. make menuconfig
8. make bzImage

星期五, 5月 20, 2005

使用AWStats分析Web和Mail的紀錄檔心得

使用AWStats分析Web和Mail的紀錄檔
Lab環境 Fedora core 3

1.檢查是否有安裝Perl
#which perl
2.安裝AWStats
官方網站 http://awstats.sourceforge.net/#DOWNLOAD 下載RPM檔安裝
#rpm -ivh awstats-6.4-1.noarch.rpm
3.設定AWStats
#cd /usr/local/awstats/tools/
#./awstats_configure.pl
1.此時會要求輸入Apache設定檔位置 /etc/httpd/conf/httpd.conf
2.詢問是否要建立新設定檔----回答y
3.詢問網站位置--------輸入網站的位置
4.修改細部設定
#cd /etc/awstats/
#vi awstats.您的網站.conf
LogFile="/var/log/httpd/access_log"-----原來是mylog.log不正確
AllowAccessFromWebToFollowingIPAddresses="192.168.1.3-192.168.1.254"
設定允許看報表的ip範圍..建議加入conf中..因為實測時候發現粉耗費CPU
5.建立報表輸出資料夾(在之前的conf檔案有提到但是系統預設不存在)
#mkdir /var/lib/awstats
6.執行AWStats產生報表
#/usr/local/awstats/tools/awstats_updateall.pl now
7.排入crond 設定每日3點定時更新
#crontab -e
0 3 * * * /usr/local/awstats/tools/awstats_updateall.pl now
8.驗收成果
http://您的網站/awstats/awstats.pl
就可以看到Web報表

接下來來製作Mail分析報表
9.#cd /etc/awstats
#cp awstats.model.conf awstats.mail.conf (複製預設檔來做)
#vi awstats.mail.conf

列出修改的部份
< LogFile="/var/log/maillog"
< LogType=M
< #LogFormat=1
< LogFormat="%time2 %email %email_r %host %host_r %method %url %code %bytesd"
< sitedomain="您的網站"
< AllowAccessFromWebToFollowingIPAddresses="192.168.1.3-192.168.1.254"
< LevelForBrowsersDetection=0 # 0 disables Browsers detection.
< LevelForOSDetection=0 # 0 disables OS detection.
< LevelForRefererAnalyze=0 # 0 disables Origin detection.
< LevelForRobotsDetection=0 # 0 disables Robots detection.
< LevelForSearchEnginesDetection=0 # 0 disables Search engines detection.
< LevelForFileTypesDetection=0 # 0 disables File types detection.
< ShowMonthStats=HB
< ShowDaysOfMonthStats=HB
< ShowDaysOfWeekStats=HB
< ShowHoursStats=HB
< ShowDomainsStats=0
< ShowHostsStats=HBL
< ShowRobotsStats=0
< ShowEMailSenders=HBML
< ShowEMailReceivers=HBML
< ShowSessionsStats=0
< ShowPagesStats=0
< ShowFileTypesStats=0
< ShowOSStats=0
< ShowBrowsersStats=0
< ShowOriginStats=0
< ShowKeyphrasesStats=0
< ShowKeywordsStats=0
< ShowMiscStats=0
< ShowHTTPErrorsStats=0
< ShowSMTPErrorsStats=1

10.執行AWStats產生報表
#/usr/local/awstats/tools/awstats_updateall.pl now
11.驗收成果
http://您的網站/awstats/awstats.pl?config=mail
就可以看到Mail報表

使用Webalizer分析報表心得

在RedHat系列中大多都內建Webalizer這套分析軟體
使用rpm -qa | grep web查詢是否安裝

安裝後預設在/var/www/usage目錄
可以建立一個link連結usage達到用網頁監控的目的
#cd /var/www/html
#ln -s /var/www/usage status
就可以瀏覽http://yoursite/status來觀看

但可以先調整語系Fedora core 3 預設適用UTF-8
可改為Big5 修改/etc/httpd/conf/httpd.conf
#Max edit at 20th May 2005
#LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW
LanguagePriority zh-TW en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv zh-CN

#Max edit at 20th May 2005
#AddDefaultCharset UTF-8
AddDefaultCharset Big5

重新啟動httpd
#service httpd restart

LINUX LPI 資格檢定讀書心得Part 2

1.7 使用正規表示式搜尋文字檔

globbing(使用萬用字符wildcard的行為)
操作可以同時列出或找出具有共同元素的檔案.但是若想將glob的概念延伸到任何一般的文字形式上就得靠正規表示式(regular expressions)的協助才行.

指令 grep
語法
grep [options] regex [files]

常用選項
-c 計算相符的列數
-h 顯示相符的每一列.但指定多檔時.不前置檔名
-i 忽略大小寫
-n 前置其列號
-v 顯示不相符的每一列

正規表示式內可以內含
中介字符(metacharacter)與字面字符(literal)
而且grep 可以只使用literal作為正規表示式

指令sed
語法
sed [options] 'command1' [files]
sed [options] -e 'command1' [-e 'command2'] [files]
sed [options] -f script [files]

正規表示式定義自數串文字或樣式(pattern). 而樣式是由中介字符(metacharacter)與字面字符(literal)所組成.所以當建構正規表示式時便可以使用中介字符(metacharacter)與字面字符(literal)對所要處理的輸入文字表達三個基本的意念:

1.位置定位符(Postition anchor)
用來指定一或多個字符位於整列文字的何處
2.字符集(Character set)
字符集可用來比對文字
3.數量修飾符(Quantity modifier)
代表與字符集的文字比對應該重複出現.讓正規表示式用有不定長度的文字比對能力

正規表示式的使用範例

定位符(anchor)

^ 比對一列之首
$ 比對一列之尾

範例1
顯示 file1檔中以 Linux 開頭的每一列文字

$grep '^Linux' file1

範例2
顯示file1檔中以 x 字符結尾的每一列文字

$grep 'x$' file1

群組與範圍

[abc] 符合a,b,或c的任一字符
[a-z] 符合範圍a到z的任一字符
[^abc] 非符合a,b,或c的任一字符
[^a-z] 非符合範圍a到z的任一字符
\ 比對單字
. 相符於newline以外的任一字符
\ 關閉其後所接字符的特殊意義

範例1
顯示 file1檔中包含 Linux 、 linux 的每一列文字
$grep '[Ll]inux' file1

範例2
顯示file1 包含連續三位數字的每一列
$grep '[0-9][0-9][0-9]' file1

範例3
顯示file1檔中任何非以一位數字起頭的每一列
$grep '^[^0-9]' file1

範例4
顯示file1檔中包含單字Linux或是linux (但不包含LinuxOS 或是 TurboLinux)的每一列
$grep '\<[Ll]inux\>' file1

範例5
顯示file1檔中包含五個或更多字符(newline字符不算在內)的每一列
$grep '.....' file1

範例6
顯示file1檔中包含一個句點(原是中介字符.但是使用倒斜線避開它的特殊意義)的每一列
$grep '\.' file1

修飾符

* 用來表示它之前的單一字符可能重現零次或多次
? 用來表示它之前的正規表示式可能重現零次或一次.屬延伸功能需使用-E才有作用
+ 用來表示它之前的正規表示式可能重現一次或多次.屬延伸功能需使用-E才有作用
\{n,m\} 用來表示它之前的單一字符可能重現的次數範圍
| 交替比對.可比對| 之前或是之後的正規表示式.屬延伸功能需使用-E才有作用

範例1
顯示file1檔中包含ab abc abcc 或是abccc等等的每一列
$grep 'abc*' file1

範例2
顯示file1檔中包含ab abc abcc 或是abccc(但是不包含ab)等等的每一列
$grep 'abcc*' file1

範例3
顯示file1檔中包含連續兩位或多位數字的每一列
$grep '[0-9][0-9][0-9]*' file1

範例4
顯示file1檔中包含file,file1,或是file2字樣的每一列
$grep -E 'file[12]?' file1

範例5
顯示file1檔中至少包含一位數字的每一列
$grep -E '[0-9]+' file1

範例6
顯示flie1檔中只包含111,1111,或是11111的每一列
$grep '^1\{3,5\}$' file1

範例7
顯示file1檔中包含3位4位或是5位數字的每一列
$grep '\<[0-9]\{3,5\}\>' file1

範例8
顯示file1檔中包含Happy,happy,Sad,sad,Angry,angry的每一列
$grep -E '[Hh]appy|[Ss]ad|[Aa]ngry' file1

星期五, 5月 13, 2005

資訊安全理論與實務讀後心得

密碼技術可以達到下列四項功能
1.隱密性
2.可認証性
3.完整性
4.不可否認性

兩大密碼系統
1.對稱式金鑰 Symmetric Key
著名的演算法有DES RC4 RC5 IDEA SAFER FEAL Skipjack Rijndael(AES)

DES演算法(Data Encryption Standard)
1970年代由IBM提出.長度為56位元有時會輸入64個位元.則第8.16.24.32.40.48.56.64八個位元是同位檢查碼.在加解密時並沒有真正使用
2.非對稱式金鑰 Asymmetric key

星期二, 5月 03, 2005

linux心得--常用linux字元

- Single-dash 單破折號
$0 Command name
' ' Full quote (no expansion)
" " Partial quote (allows variable and command expansion)
$$ Process id
$* All arguments as a simple word
$n nth argument (n from 0 to 9)
$var Use avalue for variable
& Run process in background
() Execute in subshell
* wildcard (represents everything)
. Single Period (The current directory)
.. Double Period (Parent Directory)
; Separate commands on same line
? Single character wildcard
[] Match any characters enclosed
\ Quote the following character.Also used to break a command line to multiple lines
` ` back ticks (Substitute output of enclosed command)
| Pipe (Takes the stdout and it becomes the stdin for the command after the pipe)
< Redirect input
<< Uses a delimiter with text to pass as input a command
> Redirect output
>> Used to append data to another file

LPI LINUX 資格檢定讀書心得

Chapter 1
*大體來說,Unix系統的架構從內而外依序是
硬體Hardware--系統核心Kernel--系統呼叫System call--命令解譯器command interpreter(又稱為shell)
*命令列command line是指使用者在shell操作模式中.於提示符號之後所鍵入的一列完整命令.
其中包含: 命令.選項.以及引數串列
*bash (Bourne-Again Shell) 為linux系統上預設的shell
*Shell 變數簡介
PS1 ( Prompt String1 ) 第一個提示字串
可以用echo的指令來顯示PS1或其他shell變數的內容但是必須要變數名稱之前附加$符號

#echo $PS1
[\u@\h \W]\$

在此範例中
每個前置倒斜線的字符對bash而言都有其特殊的意義
\u會被代換成使用者名稱
\h會被代換成系統主機名稱
\W會被代換成現行工作目錄的最底層

PATH --存放命令以及執行程式的目錄清單
要讓bash可以順利找到並執行你在提示符號之後所鍵入的命令.該命令必須
#是一個bash內建的命令
#是一個可執行的程式.其所在目錄已列在PATH的變數中
#有明確的定義(完整路徑名稱)

*在linux系統上.使用者對shell所下達的命令.通常組成自四個部分
#一個有效的命令
#命令選項
#引數
#受理機制(即按下Enter鍵)

*若想要在單一的命令列上同時加入一筆以上的命令應該依序執行順序鍵入每筆命令並以分號(;)將他們隔開.
#ls ; ps

*命令歷程(history)
當bash以互動的模式執行時.可讓使用者存取自己先前所鍵入的命令.使用者所鍵入的每筆命令.都會先存放到歷程清單(history list). 再交由Shell 進行解譯.
history list 是由shell 變數 HISTSIZE所控制
一般於/etc/profile 中定義 預設為1000列
在bash session 結束之後會存放在 ~/.bash_history
並可以用history檢視命令的歷程
*請注意.如果同時啟動多個shell.那只有最後一個結束執行的shell才會將其所經歷過的命令寫入~/.bash_history

星期二, 4月 26, 2005

論語溫習

子曰:「學而時習之,不亦說乎?有朋自遠方來,不亦說乎?人不知而不慍,不亦君子乎?」

星期日, 4月 17, 2005

系統升級RH9 to FC3

今天做了desktop的升級
Redhat 9.0 to Fedora core 3
1.更改語系設定
#vi /etc/sysconfig/i18n
修改UTF-8 為Big5
2.更改輸入法設定為xcin
#service iiim stop
#chkconfig iiim off
功能表-系統設定-輸入法-調整為xcin
#vi /etc/chinese/xcin/xcinrc
修改自己喜歡的詞音輸入法
3.安裝apt
http://apt.nc.hcc.edu.tw
安裝apt套件並更新
4.安裝jpilot
使用jpilot-0.99-1
yum的版本到0.99-2但是中文會有亂碼故使用0.99-1
記得要chmod 666 /dev/ttyS0
5.升級firefox and thruderbird
移除原來的英文版改為中文版
6.安裝java環境
7.安裝openoffice 1.1.3 firefly 到/usr/local下
8.安裝thunderbird及設定e-mail account
9.升級flash player 到7.0版用tar ball的方式 /usr/local/firefox-installer
10.設定scanner for linux
11.安裝acrobat reader for linux

星期五, 4月 15, 2005

Sendmail+MailScanner4.40+Clamav0.83

今天心血來潮
又做了一次Sendmail+MailScanner4.40+Clamav0.83
O/S: Redhat 9.0
Mail server: Sendmail
使用套件: clamav-0.83
clamav-db-0.83
MailScanner-4.40


1.取得MailScanner

http://www.sng.ecs.soton.ac.uk/mailscanner/

點選Download 選取您的版本並儲存

2.解壓縮檔案 小弟抓的是4.40版

#tar zxvf MailScanner-4.40.11-1.rpm.tar.gz

3.安裝MailScanner
#cd MailScanner-4.40.11-1/
#./install.sh

完成MailScanner 的安裝

4.取得防毒軟體 Clam AntiVirus
由rpmfind.org 下載 clamav套件
關鍵字 clamav and clamav-db

下載: http://dag.wieers.com/packages/clamav/

5.安裝clamav套件

#rpm -ivh clamav-db-0.83-1.0.rh9.rf.i386.rpm
#rpm -ivh clamav-0.83-1.0.rh9.rf.i386.rpm
#rpm -ivh clamav-devel-0.83-1.0.rh9.rf.i386.rpm
#rpm -ivh clamav-milter-0.83-1.0.rh9.rf.i386.rpm
#rpm -ivh clamd-0.83-1.0.rh9.rf.i386.rpm

6.修改Mail Scanner 設定讓Mail Scanner 和 Clam Anti Virus結合

#cd /etc/MailScanner
#vi MailScanner.conf

找尋 Virus Scanner = none
改成 Virus Scanner = clamav
修改一下MailScanner的設定檔
%org-name% = yoursite -->個人或公司的簡稱
%org-long-name% = Your Organisation Name Here --> 公司或個人全名
%web-site% = www.your-organisation.com --> 公司或個人網址
Notify Senders = no --> 不通知原寄信人....如果他是廣告商怎辦^^還通知他勒
Virus Subject Text = {病毒信?} --> 收到病毒信加上{病毒信?}的字串原來是英文改中文
Spam Subject Text = {廣告信?} --> 收到廣告信加上{廣告信?}的字串原來是英文改中文
Archive Mail = /var/spool/MailScanner/archive -->備份寄出/入信件於指定目錄...請注意隱私權的問題還有必須手動建立目錄 #mkdir /var/spool/MailScanner/archive

儲存後離開 (:wq)

7.讓MailScanner 接手Sendmail的工作啟動防毒機制

#service sendmail stop
#chkconfig sendmail off
#chkconfig --level 2345 MailScanner on
#service MailScanner start


8.啟動clamd 讓clamav 定時更新
#service clamd start

星期日, 4月 10, 2005

舊的筆記移轉

把之前的舊筆記移過來

讓FC3可以收信

FEDORA3 將IMAP,POP3包裝成一個,套件dovecot-0.99.11-1.FC3.4
或是你要使用cyrus-imapd 就必須安裝這些套件
cyrus-imapd-utils-2.2.10-3.fc3
cyrus-imapd-2.2.10-3.fc3
cyrus-imapd-devel-2.2.10-3.fc3
cyrus-imapd-nntp-2.2.10-3.fc3
cyrus-imapd-murder-2.2.10-3.fc3

1.(在mail server部份要勾選 cyrus-imapd的套件)

2.修改 /etc/dovecot.conf

將protocols = imap imaps 改成
protocols = imap imaps pop3 pop3s

3. 重新啟動 dovecot

Service dovecot restart

4. 安裝完成

*************************************************
Practice some shell scripts
if else fi practice
#vi shell.sh

#!/bin/sh
#
#my shell 2
#
ans=0
echo "choice your language"
echo "1.Chinese"
echo "2.English"
echo -n "Please make your choice [1 or 2]"
read ans

if test $ans -eq 1;then
echo "your language is Chinese"

else ###nested if i.e if within if####
if test $ans -eq 2;then
echo "your language is English"
else
echo "wrong choice"
fi
fi
*************************************************
設定scanner for linux
軟體----xsane
硬體:acer szw 3300U

原本的情形是看得到掃描器於hwbrowser
但是無法使用xsane
參考網站
http://snapscan.sourceforge.net/
決定性的網頁......
告訴我要從windows的驅動程式中把bin拷貝到linux
並且要修改/etc/sane.d/snapscan.conf
把其中的路徑指向拷貝過來的BIN

# Change to the fully qualified filename of your firmware file, if
# firmware upload is needed by the scanner
firmware /home/max/U176V042.BIN
#U176V042.BIN 就是從windos driver 拷貝過來的bin

就可以正常使用了

其他網頁
http://phorum.study-area.org/viewtopic.php?t=11299
*************************************************
轉貼自酷學園
http://phorum.study-area.org/viewtopic.php?t=20200
於文中有些在實作上有小小的修正



如何於RED HAT 9.0 的NAT下使用MSN6.1的語音及網路攝影機通訊(使用UPnP)
前言:
花了一晚的時間找了一些資料實驗(大部份是原始程式網站的討論區)實驗成功,不用每次拔網路線了
1.作業環境:
linux red hat 9.0(使用iptables做nat)
我的eth0 為對外NIC eth1 為對內NIC

rpm -q e2fsprogs 如果沒有請安裝
win xp pro(directx 9.0b,msn6.1)
固定ip

2.準備檔案:
下載
libupnp-1.2.1a.tar.gz
http://prdownloads.sourceforge.net/upnp/libupnp-1.2.1a.tar.gz?download
至/tmp或你要的目錄中

linux-igd
在這裡使用cvs的方式取得最新版,請在shell的提示後執行
cd /tmp
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/linux-igd login
會出現PASSWORD,請直接按ENTER
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/linux-igd co linux-igd

3.開始安裝:
在/tmp下執行
tar zxvf libupnp-1.2.1a.tar.gz
cd libupnp-1.2.1a
cd upnp 這裡和文中的不一樣請注意
make
make install

在這裡不知為何,有些東西無法正確複製至/usr/include/upnp及/usr/lib中
請再至libupnp-1.2.1a中的ixml及threadutil做個make
再請以手動複製

cp libupnp-1.2.1a/ixml/inc/* /usr/include/upnp/
cp libupnp-1.2.1a/ixml/bin/* /usr/lib
cp libupnp-1.2.1a/threadutil/inc/* /usr/include/upnp/
cp libupnp-1.2.1a/threadutil/bin/* /usr/lib
上面這一段是參考英文版修改的


應該可以執行下一步了
cd /tmp/linux-igd
make
make install
看看還有沒有錯誤,如果有錯,找一下.h和.so是否沒有複製至適當位置

4.執行
請先至/etc
vi upnpd.conf

# The full path and name of the iptables executable
#
#iptables_location = /usr/sbin/iptables -->這是原來的設定,如果用tarball的話應該是這裡沒錯
iptables_location = /sbin/iptables -->我是用rpm安裝的,所以在sbin裡

存檔
其它設定我是用內定的
log檔
vi syslog.conf
在最後加入
#upnpd log
*.=debug /var/log/upnpdebug

存檔
執行
route add -net 239.0.0.0 netmask 255.0.0.0 eth1
這裡也配合環境修改過
現在執行upnpd eth1 eth0
如果是用ppp0的請自己改

執行後,在xp的網路連線裡會出現一個網際網路閘道群組,裡面有個網際網路連線,在此不貼圖了

在xp上執行msn,找個人試試語音及視訊會議吧。
**************************************************
bandwidthd 安裝心得
實驗環境
O/S: Redhat 9.0

心得:實務上安裝的時候需再安裝
gd-devel-1.8.4-11.i386.rpm
libpng-devel-1.2.2-16.i386.rpm
兩個函式庫檔案 在cdrom disk 2
才可以順利make install



以下轉貼臥龍小三大大的文章:
臥龍小三專欄 : 追蹤並圖型顯示 TCP/IP 網路使用狀況:bandwidthd
發表者 ols3 於 2004-01-15 11:36:12 (8398 人氣)

OLS3 推薦軟體:bandwidthd

'bandwidthd' 可以用來追蹤並以圖型化、網頁化的方式,顯示你的 TCP/IP 網段中的使用狀況。

bandwidthd 圖型化是以網段中各自獨立的 IP 為對象,它可以不同的色彩來顯示 HTTP, TCP, UDP, ICMP, VPN 以及 P2P 協定的交通流量。

和 MRTG 不同的是,'bandwidthd' 追蹤的是各別的 IP 用量,而不像 MRTG 是顯示某一網路介面的總量,對於網管人員而言,bandwidthd 可說是一項好用的利器。

* bandwidthd 採用 GPL 授權,原始網址如下:

http://bandwidthd.sourceforge.net/

下載位址:

http://sourceforge.net/project/showfiles.php?group_id=89685&release_id=184856

或由敝中心下載:

ftp://ftp.tnc.edu.tw/pub/bandwidthd

* 安裝

bandwidthd 的安裝方法可說十分簡單,

首先您要檢查一下基本的配備是否充足:

須先安裝有以下函式庫:

libpcap ( http://www.tcpdump.org/ )
libpng ( http://www.libpng.org/ )
libgd ( http://www.boutell.com/gd/ )

系統須有支援 System V IPC (大部份 Unix/Linux 都有)

接著,便可來安裝 bandwidthd 啦!

ncftp ftp.tnc.edu.tw

cd pub/bandwidthd

get bandwidthd-1.2.0.tgz

quit

以 root 身份執行以下動作

tar xvzf bandwidthd-1.2.0.tgz

cd bandwidthd-1.2.0

make install

至此即已安裝完成,它會將 bandwidthd 安裝 至 /usr/local/bandwidthd 下

* 設定

bandwidthd 的設定可說超級簡單,請編輯:

/usr/local/bandwidthd/etc/bandwidthd.conf

把其中 subnet 的設定設好即可,以 203.68.102.0/26 四分之一網段為例:

subnet 203.68.102.0 255.255.255.192

存檔之後,便可準備執行。

* 執行

cd /usr/local/bandwidthd
./bandwidthd

* 顯示:

在您的 web 主目錄下即行

ln -s /usr/local/bandwidthd/htdocs bandwidthd

接著您便可用 http://您的主機/bandwidthd
看到網路中各主機的頻寬使用情況啦!

* 統計結果圖例:

http://bandwidthd.sourceforge.net/demo/

* 結語:

這個工具真是太棒了! 小而美,方便實用不傷神,值得小型網路管理者試試!

OLS3 下次再為您報導更好的軟體喲!
**************************************************
磁碟限額 quota 實作
1.針對Filesystem {Partition}
2.對象: User or Group
3.限制內容: 1.使用空間
2.建立檔案數量

實驗環境
O/S: Redhat 9.0

Target: 限制max 在/home Filesystem 可使用空間在4MB ~ 5MB 之間 可建立 60~100檔案

1.#vi /etc/fstab
LABEL=/home /home ext3 defaults,usrquota 0 0

2.讓new option生效
#mount -o remount /home

3.初始化quota DB
#quotacheck -c /home

4.#quotaon /home

5.編寫限制max的quota
#edquota max
Filesystem block soft hard inode soft hard
/dev/hda# 76 4096 5120 10 60 100

6.測試
#su - max
$quota
$dd if=/dev/zero of=big bs=1M count=6
此時應該是不行的



edquota -p user1 user2 user3

edquota -t

repquota /dev/hd#

§使用warnquota 以郵件的方式通知超過soft limit 的 user
1.#vi /etc/warnquota.conf
加入自訂內容

2.#touch /etc/quotatab
#vi /etc/quotatab
/dev/hda3:您的家目錄

3.#warnquota

4.#crontab -e
* 0 * * * /usr/sbin/warnquota

大功告成
*************************************************
Sendmail 的防毒機制
可以使用 Mailsacnner + Clam Antivirus 來做具防毒功能的伺服器

建置環境
O/S: Redhat 9.0
Mail server: Sendmail
使用套件: clamav-0.65-1.1.i386.rpm
clamav-db-0.65-1.1.i386.rpm
MailScanner-4.30.3-2.rpm.tar.gz


1.取得MailScanner

http://www.sng.ecs.soton.ac.uk/mailscanner/

點選Download 選取您的版本並儲存

2.解壓縮檔案 小弟抓的是4.30.3-2版

#tar zxvf MailScanner-4.30.3-2.rpm.tar.gz

3.安裝MailScanner
#cd MailScanner-4.30.3-2
#./Update-MakeMaker.sh
#./install.sh

完成MailScanner 的安裝

4.取得防毒軟體 Clam AntiVirus
由rpmfind.org 下載 clamav套件
關鍵字 clamav and clamav-db

下載: http://rpmfind.net/

5.安裝clamav套件

#rpm -ivh clamav-db-0.65-1.1.i386.rpm
#rpm -ivh clamav-0.65-1.1.i386.rpm

6.修改Mail Scanner 設定讓Mail Scanner 和 Clam Anti Virus結合

#vi /etc/MailScanner
#vi MailScanner.conf

找尋 Virus Scanner = none
改成 Virus Scanner = clamav
儲存後離開 (:wq)

7.讓MailScanner 接手Sendmail的工作啟動防毒機制

#service sendmail stop
#chkconfig sendmail off
#chkconfig --level 2345 MailScanner on
#service MailScanner start

8.建立一個clam uptedate的log以查詢升級狀況
#touch /var/log/clam-update.log
#chmod 600 /var/log/clam-update.log
#chown clamav /var/log/clam-update.log

9.測試升級clamav 並寫入到log

#freshclam -d -c 6 -l /var/log/clam-update.log

10.將自動升級clam寫入crontab中
#crontab -e
0 * * * * /usr/bin/freshclam --quiet -l /var/log/clam-update.log

大功告成啦

這裡有
0.70版的rpm喔
http://dag.wieers.com/packages/clamav
**************************************************
plugin 網頁

http://mplayerplug-in.sourceforge.net/

如果要在mozilla中觀看mplayer的影片
必須加裝
1.mplayerplug-in 的套件
2.mplayer 的套件

mplayerplug-in 的取得處
http://mplayerplug-in.sourceforge.net/download.html

mplayer 的取得處
http://freshrpms.net

先安裝mplayer 在安裝完 mplayerplun-in 以後您的mozilla 就可看
mediaplayer的影片啦

^_^

**************************************************
主機的備分問題一直是粉多人的煩惱之一
在這裡使用 rsync 這個套件 來作兩台電腦的資料備份

環境說明

server (需要備份的主機.目前運作中的機器) :
O/S:Redhat 9.0
ip : 192.168.0.2
user : root
欲備份目錄 : /test (實驗用.預設沒有此目錄請自行建立)

client (遠端存放備份的機器.不提供服務只備份資料) :
O/S:Redhat 9.0
ip : 192.168.0.253
user : root
存放資料目錄 : /test (實驗用.預設沒有此目錄請自行建立)

分兩個部分來做

server 部分:

1.首先檢查有沒有rsync 套件 (Redhat 預設都會裝)
#rpm -q rsync
rsync-2.5.5-4

2.開啟rsync的服務並檢查狀態
#chkconfig rsync on
#chkconfig rsync --list
rsync 開啟

client 部分:
為了使用SSH加密傳輸且不需要輸入密碼

1.#cd /root/.ssh (進入到/root/.ssh/ 目錄下)
2.#ssh-keygen -d (產生ssh的公鑰和私鑰)
Generating public/private dsa key pair.
Enter file in which to save the key (/root/.ssh/id_dsa): (產生到何處.按Enter 就可以了)
Enter passphrase (empty for no passphrase): (要不要設定passwd.避免問我們按Enter 就可以了)
Enter same passphrase again: (再按一次Enter)
Your identification has been saved in /root/.ssh/id_dsa.
Your public key has been saved in /root/.ssh/id_dsa.pub.

此時目錄下會產生公鑰id_dsa.pub和私鑰id_dsa
現在要把id_dsa.pub丟到192.168.0.2 並且更名為 authorized_keys

3.#scp id_dsa.pub 192.168.0.2:/root/.ssh/authorized_keys
root@192.168.0.2's password:
id_dsa.pub 100% |*****************************| 613 00:00

試試看 ssh 到server 應該就不用輸入密碼了
4.#ssh 192.168.0.2
#exit (記得離開)
5.#cd /usr/local/bin (要寫一個shell script 在 /usr/local/bin下 故先到此目錄下)
#vi sync
rsync -avlR --delete -e ssh 192.168.0.2:/test /
(把192.168.0.2下面的 /test 目錄 備份到本機上的 / , 因為備份會產生test這個資料夾.所以本機上設定為/)
(讓/test => /test 而不是 /test => /test/test)
參數意義如下﹕

-a, --archive
It is a quick way of saying you want recursion and want to preserve almost everything.
-v, --verbose
This option increases the amount of information you are given during the transfer.
-l, --links
When symlinks are encountered, recreate the symlink on the destination.
-R, --relative
Use relative paths. 保留相對路徑...才不會讓子目錄跟 parent 擠在同一層...
--delete
是指如果Server端刪除了一文件,那客戶端也相應把這一文件刪除,保持真正的一致。
-e ssh
建立起加密的連接。
6.#chmod 700 sync 只讓root 可以使用
7.#./sync (執行sync這個script.........此時你就會發現兩台電腦的/test是同步的呢^_^)


參考文件
小弟的心得是參考以下的文件來製作

http://www.adj.idv.tw/server/linux_rsync.php
http://www.fanqiang.com/a6/b7/20010908/1305001258_b.html
http://phorum.study-area.org/viewtopic.php?t=15553&highlight=rsync
http://linux.tnc.edu.tw/techdoc/rsync
**************************************************
Macromedia Flash Player 6 for x86 Linux
此套件能解決 MOZILIA 原本在觀看FLASH無法觀看的狀況

測試環境
O/S : 9.0

所需套件
flash-plugin-6.0.81-1.i386.rpm

下載頁面
http://ruslug.rutgers.edu/macromedia/site_ru.html

下載回來之後
於終端機輸入指令 此時必須為root身分
#rpm -Uvh 套件名稱

這樣就大功告成啦^_^
以後瀏覽器就可以正常的觀看FLASH
**************************************************
REALPLAYER FOR LINUX
是可以解決LINUX使用者在網路上收聽 .rm格式還有撥放 .mp3的有利工具
測試環境
O/S : Redhat 9.0

所需套件
RealPlayer9-9.0.7.151-4.i386.rpm

下載頁面
http://rpm.pbone.net/index.php3/stat/4/idpl/713146/com/RealPlayer9-9.0.7.151-4.i386.rpm.html

openmotif21-2.1.30-8.i386.rpm

下載頁面 (這個rpm 套件在光碟的第2片也有.建議用光碟的比較快)
http://www.itp.tu-graz.ac.at/Comp/RPM/rh-9/openmotif21-2.1.30-8.i386.html

下載回來之後
於終端機輸入指令 此時必須為root身分
#rpm -Uvh 套件名稱

這樣就大功告成啦^_^
點選小红帽-音效和視訊-realplayer

就可以用realplayer 聽音樂了
**************************************************
GAIM 的安裝和使用
GAIM 是整合目前常見的即時通訊軟體.....如MSN, YAHOO MESSENGER,ICQ...等
REDHAT 9.0 內含GAIM 0.59版但是目前已經不敷使用必須升級至0.74版以上才可以
YAHOO MESSENGER 目前的加密問題還未解決. 故只用在MSN AND ICQ....
測試環境
O/S : Redhat 9.0

所需套件
gaim-0.76-0rh9.i386.rpm
gaim-devel-0.76-0rh9.i386.rpm

下載頁面
http://gaim.sourceforge.net/downloads.php



請選取適合自己的版本的RPM 或是 TARBALL
另外還必須安裝
gtkspell這個套件
gtkspell-2.0.4-fr3.i386.rpm
gtkspell-devel-2.0.4-fr3.i386.rpm

下載頁面
http://shrike.freshrpms.net/

下載回來之後
於終端機輸入指令 此時必須為root身分
#rpm -Uvh 套件名稱

這樣就大功告成啦^_^
點選小红帽-網際網路-gaim
設定個人的帳號和密碼

就可以享受用open source 上網聊天的快樂
**************************************************
研討會心得-----CA認證的製作1. cd /usr/share/ssl/misc
2. ./CA -newca
3.設定private key 密碼
填寫CA的資訊

CA的憑證會在
/usr/share/ssl/misc/demoCA/cacert.pem

CA的private Key
/usr/share/ssl/misc/demoCA/private/cakey.pem
此時CA已經建立完成

再來建立user
1. cd /usr/share/ssl/misc

2. ./CA -newreq

3.設定private key 密碼 填寫申請者資訊

4.此時會產生一個檔案 newreq.pem

5. head -18 newreq.pem > private.key

6. vi newreq.pem 去除newreq.pem 內 private key 的部分
也就是前18行

再來要請CA作簽署的動作
1. cd /usr/share/ssl/misc

2. ./CA -sign (請注意檔名必須為newreq.pem 且在/usr/share/ssl/misc 下)

3.輸入 CA private 的密碼 及user private key的密碼
按y 檢是申請人資訊
按y同意簽署
此時會產生 newcert.pem 的憑證檔
也就是簽署完畢

要讓user 使用

必須轉成.p12 ---------for windows user

在此之前
先mkdir username 在/usr/share/ssl/misc 下
方便管理
mv newcert.pem newreq.pem private.key userfolder/

cd /usr/share/ssl/misc/user

openssl pkcs12 -export -in newcert.pem -out username.p12 -inkey private.key

用上述的指令把.pem 轉成 .p12

openssl x509 -in newcert.pem -outform der -out username.der

用上述的指令把.pem 轉成 der -------------給LDAP用

接下來複製CA的憑證更改為副檔名 .crt

cp /usr/share/ssl/misc/demoCA/cacert.pem cacert.crt

這樣windows 的 user就可以匯入使用

在windows Client的部分

下載或是由磁片把 username.12 還有 cacert.crt
複製到機器上
於檔案上按兩下左鍵進行安裝
此時在開始-控制台-網際網路選項-內容-憑證內
應該會看到已經安裝好憑證
個人的標籤會有個人的憑證
信任的根目錄會有CA的憑證

開啟outlook express
工具-帳號-選取帳號-內容-安全性
在憑證簽章 還有加密選項設定 都要按
選擇-選取憑證-確定
確定

這樣就大功告成了

以後傳送郵件就有簽章及加密的功能

**************************************************
RRAS 遠端存取及路由
(ROUTER AND REMOTE ACCESS SERVICE)
架設環境

Linux(NAT & DHCP) 61.X.X.X
| 192.168.1
|
2000 (NAT & DHCP) 192.168.1.
| 192.168.58.
|
98 DHCP CLINET 192.168.58.X

2000:
對外:192.168.1.
對內:192.168.58.X

98:
DHCP 指定

方式一
控制台-系統管理工具
方式二
開始-執行-rrasmgmt.msc

執行中-----綠色向上箭頭

1.啟動服務(執行-啟用)
2.路由型態(服務方式)於機器上按右鍵-設定和啟動路由及遠端存取
3. 出現精靈-下一步-選取INTERNET連線伺服器-下一步-設定含有網路位址轉譯(NAT)路由通訊協定的路由器-下一步-選取對外網卡(使用選取的 INTERNET連線)-下一步-選取對內網卡(選取可以存取INTERNET的網路路由介面)-下一步-啟用基本的名稱及位址服務-下一步-觀看位址指 派範圍-下一步-完成

操作影片
http://www.atos.org.tw/images/Test
**************************************************
NFS 網路檔案分享
NETWORK FILE SYSTEM
使用RPC協定
REMOTE PROCEDURE CALL 遠端程序呼叫
需要
rpc.nfsd 管理Client能否登入主機的權限
rpc.mountd 管理NFS的檔案系統
必須先啟動portmap
必須有nfs-utils

設定檔:
/etc/exports 主要設定檔
指令:
/usr/sbin/exportfs 分享目錄資料
/usr/sbin/showmount 查看分享目錄
/var/lib/nfs/xtab NFS紀錄檔

啟動服務

/etc/rc.d/init.d/portmap start
/etc/rc.d/init.d/nfs start

掛載遠端主機
mount -t nfs 主機名稱:目錄 mountpoint

防火牆設定

iptables -A INPUT -p TCP --dport 111 -j ACCEPT
iptables -A INPUT -p UDP --dport 111 -j ACCEPT
*************************************************
架設環境
REDHAT 9.0

取得並安裝套件 OPENWEBMAIL2.30

http://openwebmail.org/openwebmail/download/redhat/rpm/release/openwebmail-2.30-1.i386.rpm

http://openwebmail.org/openwebmail/download/redhat/rpm/packages/rh9/perl-CGI-2.81-88.i386.rpm

http://openwebmail.org/openwebmail/download/redhat/rpm/packages/rh9/perl-Compress-Zlib-1.21-RH9.i386.rpm

http://openwebmail.org/openwebmail/download/redhat/rpm/packages/rh9/perl-Text-Iconv-1.2-RH80.i386.rpm

http://openwebmail.org/openwebmail/download/redhat/rpm/packages/rh9/perl-suidperl-5.8.0-88.i386.rpm

http://openwebmail.org/openwebmail/download/redhat/rpm/packages/rh9/optional/perl-CGI-SpeedyCGI-2.21-RH9.i386.rpm

#/var/www/cgi-bin/openwebmail/openwebmail-tool.pl --init
按Enter (不用理會她的警告)
#cp /var/www/cgi-bin/openwebmail/etc/dbm.conf.default /var/www/cgi-bin/openwebmail/etc/dbm.conf
#vi /var/www/cgi-bin/openwebmail/etc/dbm.conf
dbm_ext .db
dbmopen_ext .db
dbmopen_haslock yes
#/var/www/cgi-bin/openwebmail/openwebmail-tool.pl --init

完成
登入到
http://yourdomain/cgi-bin/openwebmail/openwebmail.pl


大功告成
**************************************************

星期四, 4月 07, 2005

Linux VPN 心得筆記

為何要使用VPN (Virtual Private Network)?
可以在兩個或是兩個以上的網路
可建立通道tunnel來將封包加密以維護安全
可建立認證機制

那種情形不需要用到VPN
1.E-mail 加密
2.Wed 加密
3.遠端控制

因為都有其protocol 不用特別用VPN

VPN 的架構分兩大類
1. Site to Site
2. Clent to Site

VPN 兩端的private ip 儘可能的不要同一個網段


常用的VPN技術
***CIPE (Crypto IP Encapsulation)***
可適用於Site to Site & Client to Site
*簡單設定
*使用UDP--速度快
*可使用帳號/密碼 及key 驗證
*有win 2000 的Beta client
*Linux only not Open standard


CIPE 在redhat linux kernel中預設有支援且開啟
故只要設定User space 就可以了不用編譯核心
CIPE扮演一張網卡
設定檔 /etc/sysconfig/network-scripts/ifcfg-cipcb0
/etc/cipe/options.cipcb0 (user space設定檔)

Lab 架構
OS: redhat linux 9.0
PC1: 192.168.0.252
PC2: 192.168.0.249
Lab: Site to Site VPN

(PC1)#rpm -q cipe
(PC1)#cp /usr/share/doc/cipe-1.4.5/samples/redhat-ifcfg-cipcb0 /etc/sysconfig/network-scripts/ifcfg-cipcb0
(PC1)#vi /etc/sysconfig/network-scripts/ifcfg-cipcb0 #修改以下部份
USERCTL=no
MYPORT=6060
PEER=192.168.0.249:6060
PTPADDR=10.0.2.1
IPADDR=10.0.1.1
(PC1)#echo "key `dd if=/dev/random bs=1024 count=1 | md5sum | cut -c1-32`" > /etc/cipe/options.cipcb0
(PC1)#chmod 400 /etc/cipe/options.cipcb0
(PC1)#vi /etc/sysconfig/static-routes
any net 10.0.2.0 netmask 255.255.255.0 gw 10.0.2.1
(PC1)#service network restart
(PC2)#cp /usr/share/doc/cipe-1.4.5/samples/redhat-ifcfg-cipcb0 /etc/sysconfig/network-scripts/ifcfg-cipcb0
(PC2)#vi /etc/sysconfig/network-scripts/ifcfg-cipcb0 #修改以下部份
USERCTL=no
MYPORT=6060
PEER=192.168.0.252:6060
PTPADDR=10.0.1.1
IPADDR=10.0.2.1
(PC2)#scp 192.168.0.252:/etc/cipe/options.cipcb0 /etc/cipe
(PC2)#chmod 400 /etc/cipe/options.cipcb0
(PC2)#vi /etc/sysconfig/static-routes
any net 10.0.1.0 netmask 255.255.255.0 gw 10.0.1.1
(PC2)#service network restart

測試PC1 and PC2 互ping 對方並用tcpdump or ethereal 觀察只會看到UDP封包

星期四, 3月 24, 2005

Chroot for vsftpd

如果使用Vsftpd
又不想使用者離開家目錄
可以於/etc/vsftpd/vsftpd.conf
設定以下設定
那只有在chroot_list檔案內的user可以離開家目錄

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list

星期六, 3月 19, 2005

SLI MegaRAID note

Driver 製作:

1.格式化軟碟:
#mkfs.vfat /dev/fd0
# mount /mnt/floppy/
# touch /mnt/floppy/test
# ls /mnt/floppy/
test

確定可以寫入

# umount /mnt/floppy/


下載driver from http://www.lsilogic.com/
# unzip dr_2.10.9.0-rhel9-kernels.zip #解壓縮
# gunzip megaraid2-v2.10.9.0-rhl90-kernels.img.gz #解壓縮
# dd if=megaraid2-v2.10.9.0-rhl90-kernels.img of=/dev/fd0 #將img 以dd的方式 複製到floppy

讀入了 2880+0 個區段
輸出了 2880+0 個區段

# mount /mnt/floppy/
# ls /mnt/floppy/
disk-info modinfo modules.cgz modules.dep pcitable rhdd-6.1

應該會看到以上的檔案

2.SLI MegaRAID 安裝於Redhat Linux 9.0

放入開機光碟
於boot: 後輸入 linux dd --> Enter
插入SLI driver 於floppy
選Yes --> 選fd0 <系統會詢問Driver位置> --> OK --> Yes <要求將磁片放入floppy>
如果問有沒有其他Driver就選NO
接下來按照一般linux安裝流程即可

星期二, 3月 08, 2005

CCNA認證教戰手冊心得--chap 1

OSI 問題 (欲看答案.請用滑鼠反白Ans:後面的部分)
1.哪個層級會選擇與判斷是否能夠連上通訊對象.以及建立連線所需的資源.協調通訊對象的運用.並且對控制資料完整性與錯誤復原程序形成共識?
Ans:應用層
2.哪一層負責將資料連結層的資料封包轉換為電子訊號?
Ans:實體層
3.

星期六, 3月 05, 2005

MCSE 2003 online note

Module 1
1-1 Windows XP installation
XP hardware
CPU 233 up
VGA (optional)
Drivers
64MB以上 記憶體 建議128MB
H.D 2.0GB以上
滑鼠及週邊設備
Network

http://microsoft.com/hcl

NTFS filesystem
.File-and-folder-level security
.File compression
.Disk quotas
.File encryption

WorkGroup or Domain
Work Group:
每台電腦都是對等---帳號儲存在SAM (Security Account Manager)
每台電腦都要存----安全性是分開的
資源分散
Domain:
有DC Active Directory 資料庫
可以在任何一個電腦上存取帳號
資源集中

總結:
.Verify that hardware meet minimum requirements
.Verify that hardware is supported (HCL)
.Determine disk partitioning strategy
.Select file system for Windows XP Professional partition
.Determine whether to install in a workgroup or domain

1-2 installing Windows XP from CD

regional setting ---時區設定
network id -- 網域名稱

1-3 Installing Windows XP Profession Over a Network
.Prepare client computer
.Enable network connectivity
.Connect to distribution server
.Run the Setup program
.Install Windows XP Professional

1-4 Upgrading to Windows XP Professional
.Indentifying Upgrade Paths
至少要Windows 98,Windows Me, Windows NT 4.0 Workstation SP5, Windows 2000 Professional
.Preparing Your System
.Upgrading Computer Running Windows 98
.Installing Windows XP Professional in a Dual-Boot configuration
要注意檔案格式--要都認得file system

1-5 Transferring User Settings and Files by Using the USMT
預設會轉移個人設定Setting.資料夾folder.還有檔案型態File Type

命令列的轉移工具
Windows XP CD片內
\VALUEADD\MSFT\USMT\LOADSTATE 和 SCANSTATE
LOADSTATE ---負責轉移
SCANSTATE ---負責掃描
注意事項
轉移過程中
目的地電腦不可以有相同要轉移的帳號
.Changing the Files or Settings Transferred by Modifying the .inf Files
\VALUEADD\MSFT\USMT\USMTDEF --Setup Information

製作USMT磁片
開始Start-所有程式All Programs-附屬應用程式Accessories-系統工具System Tools-Files and Setting Transfer Wizard---New computer----I want to create a Wizard Disk inthe followwing driver---到舊電腦上---執行FASTWiz---Old computer---選取存取媒體--選取要轉換的類性-Finish---回到Windows XP---選取當初儲存位址---Finish--Yes--會登出驗證有沒有轉移成功
1-6 Activating Windows XP Professional

駭客現形讀書心得-chap 1

入侵的第一個步驟----腳印拓取footprinting
針對目標蒐集資訊的技巧.

目標:擷取網際網路(Internet).企業網路(intranet).遠端存取(remote access).企業外部網路(extranet)有關的資訊.

其確認項目有:
網域名稱(Domain Name)
網路區塊(Network blocks)
主機IP位址及執行之TCP/UDP服務
系統架構
存取控制機制及表列
入侵偵測系統
系統列舉(使用者與群組名稱.系統標誌.路由表.SNMP資訊)
類比/數位電話號碼
遠端系統種類
身分認證機制

Step 1-2-1:決定你的行動範圍

攻擊手法:開啟資源搜尋

從網頁下手.
包含組織座落的地址.
相關公司或機構.
電話號碼.
聯絡人姓名或電子郵件信箱.
所採取的相關安全策略.
或是由HTML的原始碼註解中找到資訊.

多重搜尋引擎
http://www.dogpile.com
http://www.altavista.com/

兩種範例用法:
link:example.com 查詢所有提供連結到攻擊目標的網站
host:example.com and mudge 特定網站中的特定目標

WebFerretPRO 提供一次同步搜尋多部引擎的能力
http://ferretsoft.com

EDGAR搜尋
http://www.sec.gov/cgi-bin/srch-edgar

對策:
開放性資料庫的安全
可以參考網站安全手冊RFC2196
http://www.ietf.org/rfc/rfc2196.txt

Step 1-2-2 網路列舉
查詢InterNIC
Unix: 使用whois指令
#whois example.com

網頁方式:
http://www.networksolutions.com/en_US/whois/index.jhtml
台灣地區:http://www.twnic.net.tw/

在執行whois指令的時候 @選項可以讓你指定其他的資料庫
例如
#whois "tellurian." @whois.crsnic.net
|
|
# whois tellurian.net@whois.bulkregister.com

查詢多重資料庫就可以使用whois.crsnic.net 但如果要判斷該目標所有使用ARIN是非常方便的
whois "Tellurian Net*"@whois.arin.net

也可以使用特定的網路區塊查詢---可以查出net range or net block
# whois 216.182.0.0@whois.arin.net

依照聯絡資訊查詢----例如email: @example.com
http://www.arin.net

對策:
確認資料庫內的資料是否正確.以免管理聯絡人離職之後還可以更改InterNIC登錄的資料.

Step 1-2-3 DNS 查詢

攻擊手法: 區域轉送(zone transfer)
#host -l example.com
#host -l -v -t any example.com

對策:
http://www.linux-mag.com/2001-11/bind9_01.html
最好別使用HINFO 紀錄

Step 1-2-4 網路勘查
#traceroute example
#traceroute -p53 example
VisualRoute 是追蹤工具的凱迪拉克
http://www.visualroute.com/

對策:
可以使用"網路入侵系統"NIDS
snort (http://www.snort.org)
來偵測這類的活動

星期二, 2月 22, 2005

網概 note

Share level security --> Win98
User level security --> NT-based
WinNT 4.0
Windows 2000
Windows XP
Windows server 2003
\\Computer\share --> Universal Naming Conventions

區域網路的特色
1.在限定的範圍
2.速度快
3.擁有成本低

廣域網路的特色
1.連接兩個以上的區域網路
2.速度慢
3.擁有成本高昂

網路拓撲
基本型:
匯流排拓撲 (Bus topology)
星狀拓撲 (Star topology)
環型拓撲 (Ring topology)

混用型:
星狀匯流排拓撲 (Star-Bus topology)
星狀環型拓撲 (Star-Ring topology)
網狀拓撲 (Mesh topology)