UCT-8
伺服器
time.stdtime.gov.tw
2011年1月31日 星期一
2011年1月28日 星期五
BRAZILFW 綁定mac
在web管理頁面裡的 Simplified Firewall Configuration 設置中,
選擇 Deny access to all internal users 。阻止一切內網用戶上網。
然後選擇「 編輯配置文件 」,加入如下格式的命令
allow_ip_mac 192.168.157.1 00:10:D7:0B:xx:xx
allow_ip_mac 192.168.157.2 00:E0:4C:A0:xx:xx
保存以後重啟路由器
-------------------------------------------
ctrl+c
edit /etc/rc.d/rc.firewall
用管理頁面的『編輯任意文件』可以很方便地修改這個文件。保存配置以後就永遠生效了。
加入函數:
allow_ip_mac() {
[ $DEBUG = 1 ] && logger $FWDRULE
COMMAND="iptables -A user-filter -i $IF_LOCAL -s $1 --match mac --mac-source $2 -j ACCEPT"
$COMMAND
[ $DEBUG = 1 ] && logger "$COMMAND"
}
保存以後就可以用了allow_ip_mac命令了
選擇 Deny access to all internal users 。阻止一切內網用戶上網。
然後選擇「 編輯配置文件 」,加入如下格式的命令
allow_ip_mac 192.168.157.1 00:10:D7:0B:xx:xx
allow_ip_mac 192.168.157.2 00:E0:4C:A0:xx:xx
保存以後重啟路由器
-------------------------------------------
ctrl+c
edit /etc/rc.d/rc.firewall
用管理頁面的『編輯任意文件』可以很方便地修改這個文件。保存配置以後就永遠生效了。
加入函數:
allow_ip_mac() {
[ $DEBUG = 1 ] && logger $FWDRULE
COMMAND="iptables -A user-filter -i $IF_LOCAL -s $1 --match mac --mac-source $2 -j ACCEPT"
$COMMAND
[ $DEBUG = 1 ] && logger "$COMMAND"
}
保存以後就可以用了allow_ip_mac命令了
幾款router小軟體
網友 柚子 的看法
-----------------------
Untangle:基本上是完整的Linux,因此系統等級不夠的不用考慮。
smoothwall:系統等級不夠的不用考慮。
m0n0wall:執行速度快,但開機速度很慢,且對硬體穩定度要求較高。(FreeBSD的緣故?)
pfsense:執行速度快,但開機速度很慢,且對硬體穩定度要求較高。(FreeBSD的緣故?)
ipcop:還不錯用,但是轉發速度較BrazilFW慢。
routeros:有專屬的Winbox可供使用,因此設定非常方便且快速,但要錢。
minifw:預設選項幾乎是固定的,對於個人(SOHO)來說不適用(由BrazilFW改來的)。
BrazilFW:目前使用,除了設定是使用一般的網頁UI,沒有routeros的Winbox快速,其他沒啥缺點了(目前最新的3.0中的WebAdmin 僅有基本項目,無法於WebAdmin中設定BrazilFW)。
推薦:
1.BrazilFW
2.ipcop
3.pfsense
4.routeros(3.0以上)
-----------------------
Untangle:基本上是完整的Linux,因此系統等級不夠的不用考慮。
smoothwall:系統等級不夠的不用考慮。
m0n0wall:執行速度快,但開機速度很慢,且對硬體穩定度要求較高。(FreeBSD的緣故?)
pfsense:執行速度快,但開機速度很慢,且對硬體穩定度要求較高。(FreeBSD的緣故?)
ipcop:還不錯用,但是轉發速度較BrazilFW慢。
routeros:有專屬的Winbox可供使用,因此設定非常方便且快速,但要錢。
minifw:預設選項幾乎是固定的,對於個人(SOHO)來說不適用(由BrazilFW改來的)。
BrazilFW:目前使用,除了設定是使用一般的網頁UI,沒有routeros的Winbox快速,其他沒啥缺點了(目前最新的3.0中的WebAdmin 僅有基本項目,無法於WebAdmin中設定BrazilFW)。
推薦:
1.BrazilFW
2.ipcop
3.pfsense
4.routeros(3.0以上)
BrazilFW更新L7定義檔
BrazilFW更新L7定義檔
首先以Pitty連線BrazilFW
Ctrl+C 跳至Command命令下
目錄是在虛擬磁碟上所以把/boot掛上來
直接下"mt"
就可以將/boot掛到 /mnt底下
mt
cd ..
cd mnt
mkdir l7
wget http://downloads.sourceforge.net/project/l7-filter/Protocol%20definitions/2009-05-28/l7-protocols-2009-05-28.tar.gz
tar -zxvf l7-protocols-2009-05-28.tar.gz
cd l7-protocols-2009-05-28
cd protocols
移除舊的定義檔
rm /etc/l7-protocols/*.pat
檢查/etc/l7-protocols 資料夾,輸入已下指令後裡面因該是空空的
cd /
cd /etc/l7-protocols/
ls
cp /mnt/l7-protocols-2009-05-28/protocols/*.pat /etc/l7-protocols/
cd /etc/l7-protocols
ls 檢查有無檔案
backup
reboot
首先以Pitty連線BrazilFW
Ctrl+C 跳至Command命令下
目錄是在虛擬磁碟上所以把/boot掛上來
直接下"mt"
就可以將/boot掛到 /mnt底下
mt
cd ..
cd mnt
mkdir l7
wget http://downloads.sourceforge.net/project/l7-filter/Protocol%20definitions/2009-05-28/l7-protocols-2009-05-28.tar.gz
tar -zxvf l7-protocols-2009-05-28.tar.gz
cd l7-protocols-2009-05-28
cd protocols
移除舊的定義檔
rm /etc/l7-protocols/*.pat
檢查/etc/l7-protocols 資料夾,輸入已下指令後裡面因該是空空的
cd /
cd /etc/l7-protocols/
ls
cp /mnt/l7-protocols-2009-05-28/protocols/*.pat /etc/l7-protocols/
cd /etc/l7-protocols
ls 檢查有無檔案
backup
reboot
CF轉IDE
4G的cf卡+cf轉IDE接頭,安裝BrazilFW,結果出現:
error waite for DMA。
每次都要等很久才能進入到出現root的那個界面。
編輯syslinux.cfg,在append的那行的後面
加上ide=nodma
保存,備份,然後重啟
error waite for DMA。
每次都要等很久才能進入到出現root的那個界面。
編輯syslinux.cfg,在append的那行的後面
加上ide=nodma
保存,備份,然後重啟
iptables
iptables -L 查看目前的規則
設定簡易的防火牆會用到filter這個table
設定NAT會用到nat這個table
下iptables指令,沒有特別指定table時,會使用filter這個table。
特別要注意的是,iptable的rule具有優先順序。
一旦遇到符合的規則,將不會再往下比對。
以下是相當簡單的範例,存成檔案並設定成可執行。之後就不用一次一次打了。
將該檔案的完整路徑放到 /etc/rc.local 這個檔案中,使得開機之後可以自動執行。
作用是讓內部網路通行。除了部份允許的封包之外,阻擋外部進來的封包。
#!/bin/sh
##### iptables.rule #####
EIF="eth0" # 對外的網路介面
IIF="eth1" # 對內的網路介面
INNET="172.16.0.0/24" # 內部子網域
# forwarding
# 讓內部網路的封包可以轉送到外部
echo "1" > /proc/sys/net/ipv4/ip_forward
# flush all rules
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
# 定義 policy
# Policy指的是當進來的封包不屬於rule中的任何一條時,所預設的動作。
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
# localhost
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
# 讓主機主動建立的連線可以進來
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# 設定主機上提供的服務可讓外部網路存取
iptables -A INPUT -i $EIF -p tcp --dport 22 -j ACCEPT # ssh
iptables -A INPUT -i $EIF -p udp --dport 22 -j ACCEPT
iptables -A INPUT -i $EIF -p tcp --dport 80 -j ACCEPT # http
# ... 其餘省略
# NAT
iptables -t nat -A POSTROUTING -o $EIF -s $INNET -j MASQUERADE
參考資料:
netfilter - iptables
鳥哥的Linux私房菜 - Linux 防火牆與NAT主機
設定簡易的防火牆會用到filter這個table
設定NAT會用到nat這個table
下iptables指令,沒有特別指定table時,會使用filter這個table。
特別要注意的是,iptable的rule具有優先順序。
一旦遇到符合的規則,將不會再往下比對。
以下是相當簡單的範例,存成檔案並設定成可執行。之後就不用一次一次打了。
將該檔案的完整路徑放到 /etc/rc.local 這個檔案中,使得開機之後可以自動執行。
作用是讓內部網路通行。除了部份允許的封包之外,阻擋外部進來的封包。
#!/bin/sh
##### iptables.rule #####
EIF="eth0" # 對外的網路介面
IIF="eth1" # 對內的網路介面
INNET="172.16.0.0/24" # 內部子網域
# forwarding
# 讓內部網路的封包可以轉送到外部
echo "1" > /proc/sys/net/ipv4/ip_forward
# flush all rules
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
# 定義 policy
# Policy指的是當進來的封包不屬於rule中的任何一條時,所預設的動作。
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
# localhost
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
# 讓主機主動建立的連線可以進來
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# 設定主機上提供的服務可讓外部網路存取
iptables -A INPUT -i $EIF -p tcp --dport 22 -j ACCEPT # ssh
iptables -A INPUT -i $EIF -p udp --dport 22 -j ACCEPT
iptables -A INPUT -i $EIF -p tcp --dport 80 -j ACCEPT # http
# ... 其餘省略
# NAT
iptables -t nat -A POSTROUTING -o $EIF -s $INNET -j MASQUERADE
參考資料:
netfilter - iptables
鳥哥的Linux私房菜 - Linux 防火牆與NAT主機
Dhcp
apt-get install dhcp3-server
編輯 /etc/default/dhcp3-server
INTERFACES="eth1" #要發DHCP的網路卡介面,用空白分隔
編輯 /etc/dhcp3/dhcpd.conf
option domain-name "ljhuang"; # 設定 domain-name
option domain-name-servers 168.95.1.1; # 設定DNS
option routers 172.16.0.254; # DHCP client的預設 gateway
option broadcast-address 172.16.0.255;
default-lease-time 3600;
max-lease-time 72000;
# 基本設定,給予224-239這些ip給clients
subnet 172.16.0.0 netmask 255.255.255.0 {
range dynamic-bootp 172.16.0.224 172.16.0.239;
}
# 固定特定 MAC address為某ip。因為我沒有使用所以只列出大概
#host pc01 {
# hardware ethernet <網卡MAC address>;
# fixed-address;
#}
啟動或關閉等作用的script:
/etc/init.d/dhcp3-server start|stop|restart|status
編輯 /etc/default/dhcp3-server
INTERFACES="eth1" #要發DHCP的網路卡介面,用空白分隔
編輯 /etc/dhcp3/dhcpd.conf
option domain-name "ljhuang"; # 設定 domain-name
option domain-name-servers 168.95.1.1; # 設定DNS
option routers 172.16.0.254; # DHCP client的預設 gateway
option broadcast-address 172.16.0.255;
default-lease-time 3600;
max-lease-time 72000;
# 基本設定,給予224-239這些ip給clients
subnet 172.16.0.0 netmask 255.255.255.0 {
range dynamic-bootp 172.16.0.224 172.16.0.239;
}
# 固定特定 MAC address為某ip。因為我沒有使用所以只列出大概
#host pc01 {
# hardware ethernet <網卡MAC address>;
# fixed-address
#}
啟動或關閉等作用的script:
/etc/init.d/dhcp3-server start|stop|restart|status
2011年1月27日 星期四
brazilfw3
http://www.brazilfw.com.br/forum/
root root
install
DHCP Server (Scope)要設定好
否則每一台client端電腦都要設DNS
Dns 設定 168.95.1.1 和 192.168.1.1(或192.168.0.1)
3.x版
1.硬體需求
To run BFW 3.0 is recommended at least a Pentium 233 MHz with 128 MB of RAM, 600 MB HD, but we recommend at least a "Pentium III 500 MHZ" with 256 MB of RAM.
2.往後版本更新
After being installed, when a new version is released, you just have to download the new .iso image, copy the files brazilfw.gz & version.inf in the /mnt folder and reboot the server. Upon completing this procedure, your server should be updated.
OR
Update
Starting with version 3.0.197 ==> update ==> For webadmin
3.passwd更改密碼
4.預設port 8181
22.....................SSH access
53.....................DNS access
3128..................Squid access
8080..................Dansguardian access
8181..................Webadmin access
-------------------
完整介紹 澎湖人 自由軟體
http://b2d.phc.edu.tw/modules/tad_book3/page.php?tbdsn=2
root root
install
內部網卡
edit /etc/brazilfw/logical/local
外部網卡
edit /etc/brazilfw/logical/internet
撥接pppoe connection:
LINK_ALIAS="internet"
LINK_CONNECTION="internet"
LINK_TYPE="pppoe"
LINK_USERNAME="xxxxxxxxxx@xxxxxxx.com.br"
LINK_PASSWORD="xxxxxxxxxxx"
# LINK_WEIGHT is the weight for LoadBalance
LINK_WEIGHT="1"
edit /etc/brazilfw/logical/internet
LINK_USERNAME="Place your DSL user"
LINK_PASSWORD="Place your DSL password"
Save and exit.
設定後
Ifconfig eth0 up
Ifconfig eth1 up
Backup
/etc/rc.d/rc.inet
找一台電腦 設定ip (注意dns要指向blizilFW3這台192.168.0.1)
網路登入
DHCP Server (Scope)要設定好
否則每一台client端電腦都要設DNS
Dns 設定 168.95.1.1 和 192.168.1.1(或192.168.0.1)
3.x版
1.硬體需求
To run BFW 3.0 is recommended at least a Pentium 233 MHz with 128 MB of RAM, 600 MB HD, but we recommend at least a "Pentium III 500 MHZ" with 256 MB of RAM.
2.往後版本更新
After being installed, when a new version is released, you just have to download the new .iso image, copy the files brazilfw.gz & version.inf in the /mnt folder and reboot the server. Upon completing this procedure, your server should be updated.
OR
Update
Starting with version 3.0.197 ==> update ==> For webadmin
3.passwd更改密碼
4.預設port 8181
-------------------
完整介紹 澎湖人 自由軟體
http://b2d.phc.edu.tw/modules/tad_book3/page.php?tbdsn=2
2011年1月26日 星期三
Nat server2
要使用 ubuntu 當 ip 分享器,要設定4個東西, 1.防火牆. 2.設固定IP. 3.撥號連線. 4.dhcp 5.NAT
以下內容,紅字部份皆為指令或是您需要修改的內容,藍字部份則為設定檔內容。
要連上 Internet 之前要先設好防火牆
gedit ~/backup/iptables.sh
===================================
#!/bin/sh
#我的防火牆設定
iptables -P INPUT DROP
#iptables -A INPUT -i ! lo -s 127.0.0.1/8 -j DROP
#封包若不是從 lo 這張網卡進入,但來源是 127.0.0.1/8 的ip,則丟棄此封包
#iptables -A OUPUT -i ! lo -d 127.0.0.1/8 -j DROP
#封包若不是輸出至 lo 這張網卡,但目地是 127.0.0.1/8 的ip,則丟棄此封包
#以上2行是避免入侵者假造 127.0.0.1/8 網段的封包以嘗試突破防火牆
iptables -A INPUT -i lo -j ACCEPT
# 127.0.0.1 本地端回應全接受
iptables -A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
#針對 eth0 這張網卡,設定我主動發出去的回應都予放行
iptables -A INPUT -i ppp0 -m state --state RELATED,ESTABLISHED -j ACCEPT
#針對 ppp0 (撥號連線)這張網卡,設定我主動發出去的回應都予放行
iptables -A INPUT -i eth0 -s 192.168.0.0/24 -j ACCEPT
# 192.168.0.1~255 這個網段全放行
#iptables -A INPUT -i ppp0 -p tcp --dport 80:84 -j ACCEPT
#↑此為設定80prot到84port開放
#iptables -A INPUT -i ppp0 -p tcp --dport 22 -j ACCEPT
#↑此為設定 ssh port 打洞
iptables -A INPUT -i ppp0 -p tcp --dport 5500 -j ACCEPT
# 5500 for vnc
#iptables -A INPUT -i ppp0 -p tcp --dport 38 -j ACCEPT
#iptables -A INPUT -i ppp0 -p tcp --dport 3100:3300 -j ACCEPT
# ↑此為設定ftp:38 和被動式連線的port位範圍
#here is for NAT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
echo "1" > /proc/sys/net/ipv4/ip_forward
#將ip_forward的值由0改為1,表示啟動封包轉送的功能,讓你的 Linux 具有 router 的能力
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ppp0 -j MASQUERADE
#來自192.168.0.0/24 這網段的封包全轉到 ppp0 這張網卡去
# ↓隱形掃瞄攻擊防範
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
iptables -A FORWARD -p tcp --tcp-flags ALL NONE -j DROP
iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
iptables -A FORWARD -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
iptables -A INPUT -p tcp --tcp-flags FIN,RST FIN,RST -j DROP
iptables -A FORWARD -p tcp --tcp-flags FIN,RST FIN,RST -j DROP
iptables -A INPUT -p tcp --tcp-flags ACK,FIN FIN -j DROP
iptables -A FORWARD -p tcp --tcp-flags ACK,FIN FIN -j DROP
iptables -A INPUT -p tcp --tcp-flags ACK,URG URG -j DROP
iptables -A FORWARD -p tcp --tcp-flags ACK,URG URG -j DROP
#↓設定開機自動撥號連線pon dsl-provider
===================================
chmod 755 ~/backup/iptables.sh
設定開機啟動防火牆,請下指令
sudo ln -s /home/user/backup/iptables.sh /etc/init.d/iptables.sh
註意: user 請改成你自己的帳號名
sudo update-rc.d iptables.sh defaults 50
============================
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.0.1
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
=============================
接著會跳出中文的設定畫面,大約按兩三個 enter 之後,它就會問你撥號連線的帳密
輸入完帳密之後,其它的問題,都是按enter即可,但要慢慢的按enter,但有個問題要註意
因為有一個問題是問你要不要設開機自動連線,註意:請不要設開機自動連線
因為讓它開機自動連線會有些問題, DNS 會無法正常解晰
我們已經有在 iptables.sh 那兒設開機自動連線了,所以這兒就不需要了.
設完之後,重開機之後做以下檢查:
ifconfig
看固定IP有沒有設成功
sudo iptables -L -n
看防火牆有沒有設成功,成功的話是會看到一堆 0.0.0.0/0 的數字
ping yahoo.com
看能不能正常連上網路
待以上都正常之後,我們才接著往下走
sudo apt-get install dhcp3-server
sudo cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.bak
sudo gedit /etc/dhcp3/dhcpd.conf
找到以下的內容,將其清掉後,
========= ubuntu 的 /etc/dhcp3/dhcpd.conf =================
option domain-name "example.org";
option domain-name-servers ns1.example.org, ns2.example.org;
default-lease-time 600;
max-lease-time 7200;
=============清掉以上內容========================
直接貼上以下藍字的內容。有問題可自己恢復dhcpd.conf.bak 檔
==============dhcpd.conf內容======================
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.3 192.168.0.100;
option routers 192.168.0.1;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
option domain-name-servers 168.95.1.1, 139.175.10.20;
option domain-name "vic";
default-lease-time 604800;
max-lease-time 259200;
}
# 第一行 定義了此網段和遮罩範圍
# 第二行 range 為此網段IP發配的範圍
# 第三行 option routers 應為NAT主機的IP
# 第四行 遮罩重複設了,故少此行應也沒關係
# 第五行 broadcast-address 應設為同網段的最後一個IP
# 第六行 可設定多部 DNS 主機,不過必須要以逗號『 , 』分隔開才行。
# 第七行 域名,沒有的話就隨便設也沒關係
# 第八行 default-lease-time 604800; 單位為秒,此為7天
# 第九行 max-lease-time 259200;最大租用期限,此為30天
# 以上是 DNS 的 IP 設定,這個設定值會修改用戶端的 /etc/resolv.conf 檔案內容!
#底下開始是靜態IP的設定,s1可隨便填,第二行為MAC位址,第三行為固定IP
#host s1 {
# hardware ethernet xx:xx:01:41:xx:xx;
# fixed-address 192.168.0.100;
# }
==============dhcpd.conf內容======================
啟動、停止指令
sudo /etc/init.d/dhcp3-server restart
※設定dhcp 所監聽的網卡
若你不只一張網卡,則你需要設定由哪一張網卡來分配IP
sudo gedit /etc/dhcp3/dhcpd.conf
INTERFACES=" "
在兩個"中間填入你網卡代號
經以上設定,別台電腦就可以透過你這台電腦取得IP了,但它們還不能上網,還有一個步驟
gedit ~/backup/iptables.sh
==================================================================
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
echo "1" > /proc/sys/net/ipv4/ip_forward
#將ip_forward的值由0改為1,表示啟動封包轉送的功能,讓你的 Linux 具有 router 的能力
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ppp0 -j MASQUERADE
#來自192.168.0.0/24 這網段的封包全轉到 ppp0 這張網卡去
==================================================================
需註意或更改的地方只有紅字的部份,若你的網段不是 192.168.0.0
或你的對外連網的網卡不是 ppp0 這張網卡,請調整參數
這樣設好之後,重開機,試試別台電腦能不能從你這台電腦取得IP並上網.
經查是 DNS server 解析的問題, /etc/resolv.conf 此檔的內容並未正確的設定 DNS server,造成所有域名解析失敗。
解法也很簡單,只要在此檔填入正確的 DNS server 即可。
例如:
nameserver 168.95.192.1
nameserver 168.95.1.1
但是麻煩來了,在 ubuntu/debian 系列的版本裡, /etc/resolv.conf 又不能讓你手動編輯,重開機後會自動的覆蓋過去,很是困擾。
解法有二:
一、較暴力的解法:
設定 /etc/resolv.conf 無法寫入
指令
sudo chmod a-w /etc/resolv.conf
二、dhcp出問題:
應該是 dhcp 的 bug
sudo vim /etc/dhcp3/dhclient.conf
更改底下這兩行
supersede domain-name "mydomain.com"
prepend domain-name-server xxx.xxx.xxx.1, xxx.xxx.xxx.2
找到相對的段落,將藍字的部份改為正確的 DNS server
prepend domain-name-server 168.95.1.1, 168.95.192.1
--------------
文章來源 http://dominic16y.world.edoors.com/CTauuTRGbHgs
以下內容,紅字部份皆為指令或是您需要修改的內容,藍字部份則為設定檔內容。
1.防火牆
要連上 Internet 之前要先設好防火牆
gedit ~/backup/iptables.sh
===================================
#!/bin/sh
#我的防火牆設定
iptables -P INPUT DROP
#iptables -A INPUT -i ! lo -s 127.0.0.1/8 -j DROP
#封包若不是從 lo 這張網卡進入,但來源是 127.0.0.1/8 的ip,則丟棄此封包
#iptables -A OUPUT -i ! lo -d 127.0.0.1/8 -j DROP
#封包若不是輸出至 lo 這張網卡,但目地是 127.0.0.1/8 的ip,則丟棄此封包
#以上2行是避免入侵者假造 127.0.0.1/8 網段的封包以嘗試突破防火牆
iptables -A INPUT -i lo -j ACCEPT
# 127.0.0.1 本地端回應全接受
iptables -A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
#針對 eth0 這張網卡,設定我主動發出去的回應都予放行
iptables -A INPUT -i ppp0 -m state --state RELATED,ESTABLISHED -j ACCEPT
#針對 ppp0 (撥號連線)這張網卡,設定我主動發出去的回應都予放行
iptables -A INPUT -i eth0 -s 192.168.0.0/24 -j ACCEPT
# 192.168.0.1~255 這個網段全放行
#iptables -A INPUT -i ppp0 -p tcp --dport 80:84 -j ACCEPT
#↑此為設定80prot到84port開放
#iptables -A INPUT -i ppp0 -p tcp --dport 22 -j ACCEPT
#↑此為設定 ssh port 打洞
iptables -A INPUT -i ppp0 -p tcp --dport 5500 -j ACCEPT
# 5500 for vnc
#iptables -A INPUT -i ppp0 -p tcp --dport 38 -j ACCEPT
#iptables -A INPUT -i ppp0 -p tcp --dport 3100:3300 -j ACCEPT
# ↑此為設定ftp:38 和被動式連線的port位範圍
#here is for NAT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
echo "1" > /proc/sys/net/ipv4/ip_forward
#將ip_forward的值由0改為1,表示啟動封包轉送的功能,讓你的 Linux 具有 router 的能力
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ppp0 -j MASQUERADE
#來自192.168.0.0/24 這網段的封包全轉到 ppp0 這張網卡去
# ↓隱形掃瞄攻擊防範
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
iptables -A FORWARD -p tcp --tcp-flags ALL NONE -j DROP
iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
iptables -A FORWARD -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
iptables -A INPUT -p tcp --tcp-flags FIN,RST FIN,RST -j DROP
iptables -A FORWARD -p tcp --tcp-flags FIN,RST FIN,RST -j DROP
iptables -A INPUT -p tcp --tcp-flags ACK,FIN FIN -j DROP
iptables -A FORWARD -p tcp --tcp-flags ACK,FIN FIN -j DROP
iptables -A INPUT -p tcp --tcp-flags ACK,URG URG -j DROP
iptables -A FORWARD -p tcp --tcp-flags ACK,URG URG -j DROP
#↓設定開機自動撥號連線pon dsl-provider
===================================
chmod 755 ~/backup/iptables.sh
設定開機啟動防火牆,請下指令
sudo ln -s /home/user/backup/iptables.sh /etc/init.d/iptables.sh
註意: user 請改成你自己的帳號名
sudo update-rc.d iptables.sh defaults 50
2.設固定IP
sudo gedit /etc/network/interfaces============================
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.0.1
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
=============================
3.撥號連線
sudo pppoeconf接著會跳出中文的設定畫面,大約按兩三個 enter 之後,它就會問你撥號連線的帳密
輸入完帳密之後,其它的問題,都是按enter即可,但要慢慢的按enter,但有個問題要註意
因為有一個問題是問你要不要設開機自動連線,註意:請不要設開機自動連線
因為讓它開機自動連線會有些問題, DNS 會無法正常解晰
我們已經有在 iptables.sh 那兒設開機自動連線了,所以這兒就不需要了.
設完之後,重開機之後做以下檢查:
ifconfig
看固定IP有沒有設成功
sudo iptables -L -n
看防火牆有沒有設成功,成功的話是會看到一堆 0.0.0.0/0 的數字
ping yahoo.com
看能不能正常連上網路
待以上都正常之後,我們才接著往下走
4.dhcp
這個就是分配IP的功能sudo apt-get install dhcp3-server
sudo cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.bak
sudo gedit /etc/dhcp3/dhcpd.conf
找到以下的內容,將其清掉後,
========= ubuntu 的 /etc/dhcp3/dhcpd.conf =================
option domain-name "example.org";
option domain-name-servers ns1.example.org, ns2.example.org;
default-lease-time 600;
max-lease-time 7200;
=============清掉以上內容========================
直接貼上以下藍字的內容。有問題可自己恢復dhcpd.conf.bak 檔
==============dhcpd.conf內容======================
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.3 192.168.0.100;
option routers 192.168.0.1;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
option domain-name-servers 168.95.1.1, 139.175.10.20;
option domain-name "vic";
default-lease-time 604800;
max-lease-time 259200;
}
# 第一行 定義了此網段和遮罩範圍
# 第二行 range 為此網段IP發配的範圍
# 第三行 option routers 應為NAT主機的IP
# 第四行 遮罩重複設了,故少此行應也沒關係
# 第五行 broadcast-address 應設為同網段的最後一個IP
# 第六行 可設定多部 DNS 主機,不過必須要以逗號『 , 』分隔開才行。
# 第七行 域名,沒有的話就隨便設也沒關係
# 第八行 default-lease-time 604800; 單位為秒,此為7天
# 第九行 max-lease-time 259200;最大租用期限,此為30天
# 以上是 DNS 的 IP 設定,這個設定值會修改用戶端的 /etc/resolv.conf 檔案內容!
#底下開始是靜態IP的設定,s1可隨便填,第二行為MAC位址,第三行為固定IP
#host s1 {
# hardware ethernet xx:xx:01:41:xx:xx;
# fixed-address 192.168.0.100;
# }
==============dhcpd.conf內容======================
啟動、停止指令
sudo /etc/init.d/dhcp3-server restart
※設定dhcp 所監聽的網卡
若你不只一張網卡,則你需要設定由哪一張網卡來分配IP
sudo gedit /etc/dhcp3/dhcpd.conf
INTERFACES=" "
在兩個"中間填入你網卡代號
經以上設定,別台電腦就可以透過你這台電腦取得IP了,但它們還不能上網,還有一個步驟
5.NAT
經此設定,別台電腦才能透過它上網gedit ~/backup/iptables.sh
==================================================================
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
echo "1" > /proc/sys/net/ipv4/ip_forward
#將ip_forward的值由0改為1,表示啟動封包轉送的功能,讓你的 Linux 具有 router 的能力
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ppp0 -j MASQUERADE
#來自192.168.0.0/24 這網段的封包全轉到 ppp0 這張網卡去
==================================================================
需註意或更改的地方只有紅字的部份,若你的網段不是 192.168.0.0
或你的對外連網的網卡不是 ppp0 這張網卡,請調整參數
這樣設好之後,重開機,試試別台電腦能不能從你這台電腦取得IP並上網.
不能上網?
在 ubuntu9.04 按以上的設定重開機之後,可能會造成網頁無法打開的現像。經查是 DNS server 解析的問題, /etc/resolv.conf 此檔的內容並未正確的設定 DNS server,造成所有域名解析失敗。
解法也很簡單,只要在此檔填入正確的 DNS server 即可。
例如:
nameserver 168.95.192.1
nameserver 168.95.1.1
但是麻煩來了,在 ubuntu/debian 系列的版本裡, /etc/resolv.conf 又不能讓你手動編輯,重開機後會自動的覆蓋過去,很是困擾。
解法有二:
一、較暴力的解法:
設定 /etc/resolv.conf 無法寫入
指令
sudo chmod a-w /etc/resolv.conf
二、dhcp出問題:
應該是 dhcp 的 bug
sudo vim /etc/dhcp3/dhclient.conf
更改底下這兩行
supersede domain-name "mydomain.com"
prepend domain-name-server xxx.xxx.xxx.1, xxx.xxx.xxx.2
找到相對的段落,將藍字的部份改為正確的 DNS server
prepend domain-name-server 168.95.1.1, 168.95.192.1
--------------
文章來源 http://dominic16y.world.edoors.com/CTauuTRGbHgs
Nat server
1.先用Ubuntu Linux光碟開機,安裝boot:server最小化安裝。 安裝過程設定static ip和DNS,詳細情形請參照ubuntu官網。
我的例子把NAT Server IP設為:192.168.1.40
server config: IP :192.168.1.40
NETMASK:255.255.255.0
DNS :168.95.1.1
我的例子把NAT Server IP設為:192.168.1.40
server config: IP :192.168.1.40
NETMASK:255.255.255.0
DNS :168.95.1.1
2.開機之後設定pppoeconf,然後撥接上網。
3.打下列這兩行,記得要有root權限
sudo iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
sudo echo “1″ > /proc/sys/net/ipv4/ip_forward
sudo iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
sudo echo “1″ > /proc/sys/net/ipv4/ip_forward
4.這時候只要把設定client gateway和DNS就能上網了。
client config:
IP :192.168.1.56
NETMASK:255.255.255.0
GATEWAY:192.168.1.40
DNS :168.95.1.1
client config:
IP :192.168.1.56
NETMASK:255.255.255.0
GATEWAY:192.168.1.40
DNS :168.95.1.1
5.如何讓NAT主機在開機就執行?
建立檔案/etc/init.d/NAT nano /etc/init.d/NAT 內容為:
==================內容分隔線=========================
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
echo “1″ > /proc/sys/net/ipv4/ip_forward
==================內容分隔線=========================
存檔後
sudo chmod +x NAT ln -s /etc/init.d/NAT /etc/rcS.d/S77NAT
這樣就可以在run-level開機完成之後執行NAT主機指令
建立檔案/etc/init.d/NAT nano /etc/init.d/NAT 內容為:
==================內容分隔線=========================
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
echo “1″ > /proc/sys/net/ipv4/ip_forward
==================內容分隔線=========================
存檔後
sudo chmod +x NAT ln -s /etc/init.d/NAT /etc/rcS.d/S77NAT
這樣就可以在run-level開機完成之後執行NAT主機指令
進階應用:
iptables -t nat -A PREROUTING -p tcp -i ppp0 –dport 21 -j DNAT –to 192.168.1.56:21
iptables -t nat -A PREROUTING -p tcp -i ppp0 –dport 21 -j DNAT –to 192.168.1.56:21
有需要可以把他加到 /etc/init.d/NAT裡面,功用是將來自internet的port 21服務 轉向到192.168.1.56:21
如果你的騾子是low id,而port是4662,則指令如下:
iptables -t nat -A PREROUTING -p tcp -i ppp0 –dport 4662 -j DNAT –to 192.168.1.56:4662
如果你的騾子是low id,而port是4662,則指令如下:
iptables -t nat -A PREROUTING -p tcp -i ppp0 –dport 4662 -j DNAT –to 192.168.1.56:4662
--------------------------
Ubuntu 吃的記憶體
Ubuntu 10.10及各分支(皆是10.10版本)開機後所佔記憶體的比較:
Ubuntu:132MB
Kubuntu:293MB 彰化縣acfs
Lubuntu:106MB
Xubuntu:120MB
-----------------------------------
Ubuntu:132MB
Kubuntu:293MB 彰化縣acfs
Lubuntu:106MB
Xubuntu:120MB
-----------------------------------
2011年1月24日 星期一
vsftpd設定
相關檔案或目錄
/etc/vsftpd.conf //vsftpd的設定檔
/etc/pam.d/vsftpd //PAM模組設定檔,身份認證之用
/etc/vsftpd.ftpusers //pam模組用來指定某user無法登入的設定檔
/etc/vsftpd.user_list //依vsftpd.conf內的userlist_enable, userlist_deny參數設定而有不同功能
/etc/vsftpd.chroot_list //將某帳號chroot 在他們的家目錄下,和vsftpd.conf內的chroot_list_enable, chroot_list_file參數相關
/usr/sbin/vsftpd //主要執行檔
/var/ftp/ //匿名使用者登入的根目錄
常用功能設定做法
不讓某帳號離開家目錄
vi /etc/vsftpd.conf修改vsftpd.conf 只允許某些人登錄ftp
chroot_list_enable=yes
chroot_list_file=/etc/vsftpd.chroot_list //列在裡面的使用者可登錄,無法離開家目錄
vi /etc/vsftpd.chroot_list //列入允許帳號
stu1
stu2
/etc/init.d/vsftpd restart
預設讓所有帳號不能離開家目錄,只有特定的帳號才行
chroot_local_user=yes
chroot_list_enable=yes //啟動chroot_list_file檔案的功能
chroot_list_file=/etc/vsftpd.chroot_list //列在裡面的使用者,可離開家目錄
vsftpd.conf
#表示預設不啟動
基本設定
#local_enable=yes //本地帳號可登入
#write_enable=yes //可寫入,上傳,修改,但匿名者除外
#idle_session_timeout=600 //逾期時間為600秒
#data_connection_timeout=120 //資料傳輸的timeout為2分鐘
以下需自行加入
listen=no //no為透過xintd執行,yes為獨立執行
download_enable=yes //是否可以下載伺服器檔案
dirlist_enable=yes //是否能用ls指令列出所有目錄中的檔案
check_shell=yes //是否檢查登入帳號的shell是否為合法
one_process_mode=no //專門讓2.4版kernel使用
use_sendfile=yes //對大量讀寫動作會有非常好的效能
tcp_wrappers=no //是否要支援此功能,但需在編譯時做設定
匿名登入設定
anonymous_enable=yes //接受匿名登入
#anon_upload_enable=yes //讓匿名帳號可上傳,但需指定一可寫入目錄
#anon_mkdir_write_enable=yes //讓匿名帳號可建立目錄
#chown_uploads=yes //將匿名登入者上傳的檔案,設定為chown_username
#chown_username=whoever //指定whoever帳號權限為匿名上傳的權限
以下需自行加入
#anon_otherwrite_enable=no //讓匿名者可以修改檔名,目錄
#anon_world_readable_only=yes //讓匿名者只可以讀
#no_anon_password=no //直進進入不需密碼#anon_root=somedir //讓匿名者登入時自動切換到somedir目錄
#anon_max_rate=30000 //讓匿名者只使用30kb/s的速度
#anon_umask=077 //讓匿名者上傳的檔案權限變成300
ps,提供anonymous帳號前需:
1,在linux上建立名為ftp帳號
2,給予一家目錄,並設權限為755,擁有者為root
資料傳輸
connect_from_port_20=yes //要求資料傳輸都採用標準的port20以下需自行加入
pasv_min_port=5000 //要求被動連線連生的port範圍pasv_max_port=5500 //同上
max_per_ip=0 //listen=on時,限制單獨ip可有幾條連線,0表無限制max_per_client=0 //listen=on時,限制同一時間可以有幾條連線,0為無限制
max_clients=10 //最多同時10人連進ftp
local_max_rate=0 //限制使用者頻寬,單位為bytes/second,0為無限制anon_max_rate=0 //限制匿名者頻寬,其餘同上
虛擬帳號設定,需搭配pam認證
以下需自行加入guest_username=ftp //使用虛擬帳號對應到的使用者名稱guest_enable=no
guest_username=/home/virtual/$user
user_sub_token=$user
virtual_use_local_privs=no //限定虛擬帳號是否使用linux特定帳號權限
記錄檔設定
xferlog_enable=yes //啟用記錄檔記錄所有上載與下載#xferlog_file=/var/log/xferlog //網路上通用記錄格式的記錄檔儲存位置#xferlog_std_format=yes //使用標準記錄格式以下需自行加入
vsftpd_log_file=/var/log/vsftpd.log //vsftpd本身記錄,用vsftpdlog格式
dual_log_enable //同時記錄vsftpd.log及xferlog
syslog_enable //不使用這兩種格式記錄,而是送到syslog,會記錄登入者與其任何動作
安全設定
local_umask=022 //使用者將檔案上傳的權限都設成755,預設為700chroot_local_user=no //是否讓系統上所有帳號都進行chroot,預設為no
#chroot_list_enable=no //是否啟動chroot_list_file檔案的功能,預設為no#chroot_list_file=/etc/vsftpd.chroot_list //列在裡面的使用者,無法離開家目錄
userlist_enable=yes //是否啟動vsftpd的扺擋機制,預設為no
userlist_deny=yes //預設yes表示userlist_file內user不可用ftp,設no則只有檔案內user才可用ftp,(需啟用userlist_enable此參數才作用)
userlist_file=/etc/vstpd.user_list //userlist_deny的值是yes或no會影響該檔案內的user是否可用ftp#deny_email_enable=yes //拒絕使用banned_email_file指定檔案中,以email為密碼的匿名登入
#banned_email_file=/etc/vsftpd.banned_emails
以下需自行加入
anon_umask=077 //匿名登入上傳檔時的權限hide_file={*.doc,*.pass} //隱藏.doc和.pass的檔案
deny_file={*.doc} //拒絕存取.doc的檔案force_dot_file=no //強制讓開頭的檔案顯示
訊息顯示
dirmessage_enable=yes //啟動個別目錄的個別化訊息功能
#ftpd_banner=string //設定使用者登入的歡迎訊息以下需自行加入
banner_file=file_name //指定file_name的內容做為登入的歡迎訊息
message_file=.message //指定個別目錄的訊息檔案為.message
其他參數
#nopriv_user=ftpsecure //指定vsftp以較不具權限帳號執行
#async_abor_enable=yes //啟動abor指令支援
#ascii_upload_enable=yes //啟動ascii模式的上傳#ascii_download_enable=yes //啟動ascii模式的下載#ls_recurse_enable=yes //可用-R列出目錄下所有檔案名稱,預設為no
文章來源
http://blog.jsdan.com/1979
ubuntu設定vsftp
文章來源
http://blog.udn.com/nigerchen/2261345
sudo apt-get install vsftpd
檢查是否安裝成功
netstat -tul | grep ftp
會有一個LISTEN,表示已運行待命中。
先取消匿名登入
如何設定vsftp權限
sudo vim /etc/vsftpd.conf
#不接受匿名用戶
anonymous_enable=No
#接受本地用戶
local_enable=YES
#可以上傳(全局控制).若想要匿名用戶也可上傳則需要設置anon_upload_enable=YES,若想要匿名用戶可以建立目錄則需要anon_mkdir_write_enable=YES.這裡禁止匿名用戶上傳,所以不設置這兩項.
write_enable=YES
#本地用戶上傳文件的umask
local_umask=022
#使用上傳/下載日誌,日誌文件默認為/var/log/vsftpd.log,可以通過xferlog_file選項修改
xferlog_enable=YES
#日誌使用標準xferlog格式
xferlog_std_format=YES
#本地用戶login後所在目錄,若沒有設置此項,則本地用戶login後將在他的home目錄(/etc/passwd的第六個欄位)中.匿名用戶的對應選項是anon_root<
local_root=/var/ftp
#設置為YES則下面的控制有效
chroot_list_enable=YES
#若為NO,則記錄在chroot_list_file選項所指定的文件(默認是/etc/vsftpd.chroot_list)中的用戶將被chroot在登錄後所在目錄中,無法離開.如果為YES,則所記錄的用戶將不被chroot.這裡選擇YES.(管理員使用居多)
chroot_local_user=NO
#若設置為YES則記錄在userlist_file選項指定文件(默認是/etc/vsftpd.user_list)中的用戶將無法login,並且將檢察下面的userlist_deny選項
userlist_enable=YES
#若為NO,則僅接受記錄在userlist_file選項指定文件(默認是/etc/vsftpd.user_list)中的用戶的login請求.若為YES則不接受這些用戶的請求.
userlist_deny=NO
#注意!!!vsftpd還要檢查/etc/vsftpd.ftpusers文件,記錄在這個文件中的用戶將無法login!!
#伺服器以standalong模式運行,這樣可以進行下面的控制
listen=YES
都改好了嗎?記得要重新啟動vsftp,才會生效
sudo /etc/init.d/vsftpd restart
------
補充:
新增一個帳號是test管理web server
那我們要怎麼限制這個帳號要控管哪個資料夾呢?
chroot_local_user=NO,而且在 /etc/vsftpd.chroot_list 也輸入了test這個帳號,那這個帳號將被限定在/home/test/,登入ftp後,將會無法回上一層,你的/home/test/被限定為根目錄,
但是我的web server資料夾不是test,那怎麼做??
我們要修改帳號的初始路徑
sudo vim /etc/passwd
我們會看到下面的訊息(假設帳號為test)
test : x : 1001 : 1001 : test : /home/test : /bin/bash
^^^ ^^^ ^^^ ^^ ^^^^^^^
帳號 帳號id 群組id 群組名 家目錄位置
我們的目錄已改變在 /home/www/,那這個test帳號要管理web server 的資料夾,則可以把 /home/test/ 改成 /home/www/
家目錄的位置可以這樣修改,但是其餘的參數請勿在此修改,若導致帳號無法處理,我可無法負責。
我們可以看是否有修改成功,可以下這個指令
sudo grep test /etc/passwd
若出現
test : x : 1001 : 1001 : test : /home/www : /bin/bash
那就是修改正確,那就可以去你的ftp上面看是不是可以看到www裡的內容
http://blog.udn.com/nigerchen/2261345
sudo apt-get install vsftpd
檢查是否安裝成功
netstat -tul | grep ftp
會有一個LISTEN,表示已運行待命中。
先取消匿名登入
如何設定vsftp權限
sudo vim /etc/vsftpd.conf
#不接受匿名用戶
anonymous_enable=No
#接受本地用戶
local_enable=YES
#可以上傳(全局控制).若想要匿名用戶也可上傳則需要設置anon_upload_enable=YES,若想要匿名用戶可以建立目錄則需要anon_mkdir_write_enable=YES.這裡禁止匿名用戶上傳,所以不設置這兩項.
write_enable=YES
#本地用戶上傳文件的umask
local_umask=022
#使用上傳/下載日誌,日誌文件默認為/var/log/vsftpd.log,可以通過xferlog_file選項修改
xferlog_enable=YES
#日誌使用標準xferlog格式
xferlog_std_format=YES
#本地用戶login後所在目錄,若沒有設置此項,則本地用戶login後將在他的home目錄(/etc/passwd的第六個欄位)中.匿名用戶的對應選項是anon_root<
local_root=/var/ftp
#設置為YES則下面的控制有效
chroot_list_enable=YES
#若為NO,則記錄在chroot_list_file選項所指定的文件(默認是/etc/vsftpd.chroot_list)中的用戶將被chroot在登錄後所在目錄中,無法離開.如果為YES,則所記錄的用戶將不被chroot.這裡選擇YES.(管理員使用居多)
chroot_local_user=NO
#若設置為YES則記錄在userlist_file選項指定文件(默認是/etc/vsftpd.user_list)中的用戶將無法login,並且將檢察下面的userlist_deny選項
userlist_enable=YES
#若為NO,則僅接受記錄在userlist_file選項指定文件(默認是/etc/vsftpd.user_list)中的用戶的login請求.若為YES則不接受這些用戶的請求.
userlist_deny=NO
#注意!!!vsftpd還要檢查/etc/vsftpd.ftpusers文件,記錄在這個文件中的用戶將無法login!!
#伺服器以standalong模式運行,這樣可以進行下面的控制
listen=YES
都改好了嗎?記得要重新啟動vsftp,才會生效
sudo /etc/init.d/vsftpd restart
------
補充:
新增一個帳號是test管理web server
那我們要怎麼限制這個帳號要控管哪個資料夾呢?
chroot_local_user=NO,而且在 /etc/vsftpd.chroot_list 也輸入了test這個帳號,那這個帳號將被限定在/home/test/,登入ftp後,將會無法回上一層,你的/home/test/被限定為根目錄,
但是我的web server資料夾不是test,那怎麼做??
我們要修改帳號的初始路徑
sudo vim /etc/passwd
我們會看到下面的訊息(假設帳號為test)
test : x : 1001 : 1001 : test : /home/test : /bin/bash
^^^ ^^^ ^^^ ^^ ^^^^^^^
帳號 帳號id 群組id 群組名 家目錄位置
我們的目錄已改變在 /home/www/,那這個test帳號要管理web server 的資料夾,則可以把 /home/test/ 改成 /home/www/
家目錄的位置可以這樣修改,但是其餘的參數請勿在此修改,若導致帳號無法處理,我可無法負責。
我們可以看是否有修改成功,可以下這個指令
sudo grep test /etc/passwd
若出現
test : x : 1001 : 1001 : test : /home/www : /bin/bash
那就是修改正確,那就可以去你的ftp上面看是不是可以看到www裡的內容
vsftpd結合mysql管理ftp使用者
文章來源
http://walile.info/blog/?p=107
模組請安裝pam_mysql.so
設定前說明:
其實這要綁定vsftpd是利用unix帳號做登入帳號管理,所以想利用mysql做管理的話(一般叫做建立vsftpd虛擬使用者),必需要透過linux中做認證管理的PAM(Pluggable Authentication Modules)做處理,這樣才能將vsftp+mysql+unix帳號綁定管理。
—————————————————————-開始了……
STEP1. 先下載vsftpd以及mysql先安裝好….(unbuntu 不用說吧?apt-get install 套件名稱)
STEP2. 設定/etc/vsftpd.conf 檔,將設定檔加上以下二個個設定:
guest_enable=YES
guest_name=使用者名稱,本例使用名稱為virtual (這個使用都必需是在unix account中建立的,之後要提供給使用者使用的)
STEP3. 設定mysql:
mysql中,先在mysql資料庫的user這個table中,建立一個專門讓pam認證使用登入的使用者,在本例中使用的名稱叫virtual,並且只能做select的動作,並且用localhost登入。
接下來,建立一個db叫做vsftpd,裡面建立了一個table叫做users,這個是要用來管理虛擬使用者的table。其中的table我建立了username和passwd二個欄位(注意!如果有使用加密,像mysql的password加密欄位,其password欄位請開超過60,否則會認證失敗)。記得要先在這個table中先建立一個使用者,等一下用來測試用。(ex. user,密碼暫設為pass)
STEP4. 開始來設定pam了….
/etc/pam.d/common-auth
這個檔案要加入以下這個
auth sufficient pam_mysql.so user=virtual passwd=pass host=localhost db=vsftpd table=users usercolumn=username passwdcolumn=passwd crypt=2
/etc/pam.d/common-account
這個檔案要加入的
account sufficient pam_mysql.so user=virtual passwd=pass host=localhost db=vsftpd table=users usercolumn=username passwdcolumn=passwd crypt=2
其中,在pam_mysql.so後面出現的user=virtual和passwd=pass是指在mysql中mysql資料庫user這個table中,剛剛有設定可以登入mysql的使用者帳號及密碼。另外,crypt=2代表密碼是用mysql password hash做為加密。(1為unix DES加密、2為mysql password hash加密、3為MD5加密、4為SHA)若要使用SHA加密,其pam_mysql.so的版本需要0.7以上版本才有支援(但是目前都為RC版本)
接下來,重啟服務:
/etc/init.d/vsftpd restart
這樣就完成了!
接下來,進一步想要讓虛擬帳號移到自己的資料夾中,只需要做接下來的動作:
在/etc/中建立一個資料夾為vsftpd_user_config,然後在/etc/vsftpd.conf中,加入二行:
user_config_dir=/etc/vsftpd_user_config
user_sub_token=$USER
然後,在vsftpd_user_config這個資料夾中,建立以虛擬使用者為名稱的檔案。ex. user。然後檔案內只需要加一行來指定登入後要移至的位置:
local_root=/home/user
再重啟服務就完成了!
http://walile.info/blog/?p=107
模組請安裝pam_mysql.so
設定前說明:
其實這要綁定vsftpd是利用unix帳號做登入帳號管理,所以想利用mysql做管理的話(一般叫做建立vsftpd虛擬使用者),必需要透過linux中做認證管理的PAM(Pluggable Authentication Modules)做處理,這樣才能將vsftp+mysql+unix帳號綁定管理。
—————————————————————-開始了……
STEP1. 先下載vsftpd以及mysql先安裝好….(unbuntu 不用說吧?apt-get install 套件名稱)
STEP2. 設定/etc/vsftpd.conf 檔,將設定檔加上以下二個個設定:
guest_enable=YES
guest_name=使用者名稱,本例使用名稱為virtual (這個使用都必需是在unix account中建立的,之後要提供給使用者使用的)
STEP3. 設定mysql:
mysql中,先在mysql資料庫的user這個table中,建立一個專門讓pam認證使用登入的使用者,在本例中使用的名稱叫virtual,並且只能做select的動作,並且用localhost登入。
接下來,建立一個db叫做vsftpd,裡面建立了一個table叫做users,這個是要用來管理虛擬使用者的table。其中的table我建立了username和passwd二個欄位(注意!如果有使用加密,像mysql的password加密欄位,其password欄位請開超過60,否則會認證失敗)。記得要先在這個table中先建立一個使用者,等一下用來測試用。(ex. user,密碼暫設為pass)
STEP4. 開始來設定pam了….
/etc/pam.d/common-auth
這個檔案要加入以下這個
auth sufficient pam_mysql.so user=virtual passwd=pass host=localhost db=vsftpd table=users usercolumn=username passwdcolumn=passwd crypt=2
/etc/pam.d/common-account
這個檔案要加入的
account sufficient pam_mysql.so user=virtual passwd=pass host=localhost db=vsftpd table=users usercolumn=username passwdcolumn=passwd crypt=2
其中,在pam_mysql.so後面出現的user=virtual和passwd=pass是指在mysql中mysql資料庫user這個table中,剛剛有設定可以登入mysql的使用者帳號及密碼。另外,crypt=2代表密碼是用mysql password hash做為加密。(1為unix DES加密、2為mysql password hash加密、3為MD5加密、4為SHA)若要使用SHA加密,其pam_mysql.so的版本需要0.7以上版本才有支援(但是目前都為RC版本)
接下來,重啟服務:
/etc/init.d/vsftpd restart
這樣就完成了!
接下來,進一步想要讓虛擬帳號移到自己的資料夾中,只需要做接下來的動作:
在/etc/中建立一個資料夾為vsftpd_user_config,然後在/etc/vsftpd.conf中,加入二行:
user_config_dir=/etc/vsftpd_user_config
user_sub_token=$USER
然後,在vsftpd_user_config這個資料夾中,建立以虛擬使用者為名稱的檔案。ex. user。然後檔案內只需要加一行來指定登入後要移至的位置:
local_root=/home/user
再重啟服務就完成了!
使用者啟動php
vi php5.conf
<IfModule mod_php5.c>
<FilesMatch "\.ph(p3?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
# To re-enable php in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
#註解掉
# <IfModule mod_userdir.c>
# <Directory /home/*/public_html>
# php_admin_value engine Off
# </Directory>
# </IfModule>
</IfModule>
/etc/init.d/apache2 restart
<IfModule mod_php5.c>
<FilesMatch "\.ph(p3?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
# To re-enable php in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
#註解掉
# <IfModule mod_userdir.c>
# <Directory /home/*/public_html>
# php_admin_value engine Off
# </Directory>
# </IfModule>
</IfModule>
/etc/init.d/apache2 restart
加速php網頁
加速php網頁
資料來源 紀老師
http://163.23.89.100/~chi/blog/index.php?load=read&id=145
1.確定您的系統有 tmpfs 的功能
以前使用MDK架站時須加 devfs 這個套件,現在用 Ubunu 它自己就內建了
2.建好一個要連結的目錄,準備放虛擬磁碟
mkdir /tmp/ramdisk
3.vi /etc/fstab 加入下行
tmpfs /tmp/ramdisk tmpfs size=32m,mode=1777 0 0
4.馬上掛上來用
mount /tmp/ramdisk
5.vi /etc/php5/apache2/php.ini
session.save_path = /tmp/ramdisk
6.重新啟動 Web
/etc/init.d/apache2 restart
php 的 session 預設是檔案的形式存在
每次取用都須讀/寫硬碟,但它的用途大都用於驗證使用者
這種密集的 取用,實在不利硬碟的 使用 壽命
有些強調線上人數的更應注意這點
資料來源 紀老師
http://163.23.89.100/~chi/blog/index.php?load=read&id=145
1.確定您的系統有 tmpfs 的功能
以前使用MDK架站時須加 devfs 這個套件,現在用 Ubunu 它自己就內建了
2.建好一個要連結的目錄,準備放虛擬磁碟
mkdir /tmp/ramdisk
3.vi /etc/fstab 加入下行
tmpfs /tmp/ramdisk tmpfs size=32m,mode=1777 0 0
4.馬上掛上來用
mount /tmp/ramdisk
5.vi /etc/php5/apache2/php.ini
session.save_path = /tmp/ramdisk
6.重新啟動 Web
/etc/init.d/apache2 restart
php 的 session 預設是檔案的形式存在
每次取用都須讀/寫硬碟,但它的用途大都用於驗證使用者
這種密集的 取用,實在不利硬碟的 使用 壽命
有些強調線上人數的更應注意這點
vsftp
vi /etc/vsftpd.conf
#write_enable=YES
write_enable=YES
修改vsftpd.conf 只允許某些人登錄ftp
chroot_list_enable=yes
chroot_list_file=/etc/vsftpd.chroot_list //列在裡面的使用者可登錄,無法離開家目錄
vi /etc/vsftpd.chroot_list //列入允許帳號
stu1
stu2
/etc/init.d/vsftpd restart
#write_enable=YES
write_enable=YES
不讓某帳號離開家目錄
vi /etc/vsftpd.conf修改vsftpd.conf 只允許某些人登錄ftp
chroot_list_enable=yes
chroot_list_file=/etc/vsftpd.chroot_list //列在裡面的使用者可登錄,無法離開家目錄
vi /etc/vsftpd.chroot_list //列入允許帳號
stu1
stu2
/etc/init.d/vsftpd restart
2011年1月22日 星期六
ubuntu10安裝mono2.8
install2.8 mono
vi install_mono-2.8.sh
----------------------#!/bin/bashTOPDIR=$(pwd)BUILDDIR=$TOPDIR/buildDLDDIR=$TOPDIR/downloadsexport PATH=/opt/mono-2.8.1/bin:$PATHecho "updating existing system"sudo apt-get updatesudo apt-get upgrade -yecho "installing prerequisites"sudo apt-get install -y build-essential libc6-dev g++ gcc libglib2.0-dev pkg-config subversion apache2 apache2-threaded-dev bison gettext autoconf automake libtool libpango1.0-dev libatk1.0-dev libgtk2.0-dev libtiff4-dev libgif-dev libglade2-dev# temp hack. removed later.sudo ln -s /opt/mono-2.8.1/lib/pkgconfig/mono-nunit.pc /usr/lib/pkgconfig/mono-nunit.pcmkdir -p $BUILDDIRechoecho "downloading mono packages"echocd $BUILDDIRwget http://ftp.novell.com/pub/mono/sources/xsp/xsp-2.8.1.tar.bz2wget http://ftp.novell.com/pub/mono/sources/mod_mono/mod_mono-2.8.tar.bz2wget http://ftp.novell.com/pub/mono/sources/mono/mono-2.8.1.tar.bz2wget http://ftp.novell.com/pub/mono/sources/libgdiplus/libgdiplus-2.8.1.tar.bz2wget http://ftp.novell.com/pub/mono/sources/gtk-sharp212/gtk-sharp-2.12.10.tar.bz2cd $BUILDDIRbunzip2 -df xsp-2.8.1.tar.bz2tar -xvf xsp-2.8.1.tarbunzip2 -df mod_mono-2.8.tar.bz2tar -xvf mod_mono-2.8.tarbunzip2 -df mono-2.8.1.tar.bz2tar -xvf mono-2.8.1.tarbunzip2 -df libgdiplus-2.8.1.tar.bz2tar -xvf libgdiplus-2.8.1.tarbunzip2 -df gtk-sharp-2.12.10.tar.bz2tar -xvf gtk-sharp-2.12.10.tarechoecho "building and installing mono packages"echocd $BUILDDIRcd libgdiplus-2.8.1./configure --prefix=/opt/mono-2.8.1makesudo make installcd $BUILDDIRcd mono-2.8.1./configure --prefix=/opt/mono-2.8.1makesudo make installcd $BUILDDIRcd gtk-sharp-2.12.10./configure --prefix=/opt/mono-2.8.1makesudo make installcd $BUILDDIRcd xsp-2.8.1./configure --prefix=/opt/mono-2.8.1makesudo make installcd $BUILDDIRcd mod_mono-2.8./configure --prefix=/opt/mono-2.8.1makesudo make installcd $BUILDDIR#clean upsudo rm /usr/lib/pkgconfig/mono-nunit.pcechoecho "done"echo "If you want to use this version as the default on your platform (may not work for everything with this bare install), set your PATH to include /opt/mono-2.8.1/bin. Otherwise for Asp.NET, you can just update your virtual host config to use mod-mono-server2 from the install path directly."-----------------------chmod
755 install_mono-2.8.sh
./install_mono-2.8.sh
ubuntu環境apache設定
apt-get install apache2 libapache2-mod-php5 php5-cli php5-common php5-cgi
--------------------------------------------
/etc/apache2/apache2.conf 這是apache 的全域設定
/etc/apache2/httpd.conf 內容為空,傳統的設定檔,為相容於其它版本的設定
/etc/apache2/ports.conf 監聽 port 的設定
/etc/apache2/mods-available/ 所有可用的模組( module)
/etc/apache2/mods-enabled/ 已啟用的模組 (可用指令 a2enmod、a2dismod 來啟用、停用模組)
/etc/apache2/sites-available/ 所有可用虛擬站台
/etc/apache2/sites-enabled/ 己啟用的虛擬站台 (指令 a2ensite、a2dissite 可啟用、停用虛擬站台)
/etc/apache2/httpd.conf 內容為空,傳統的設定檔,為相容於其它版本的設定
/etc/apache2/ports.conf 監聽 port 的設定
/etc/apache2/mods-available/ 所有可用的模組( module)
/etc/apache2/mods-enabled/ 已啟用的模組 (可用指令 a2enmod、a2dismod 來啟用、停用模組)
/etc/apache2/sites-available/ 所有可用虛擬站台
/etc/apache2/sites-enabled/ 己啟用的虛擬站台 (指令 a2ensite、a2dissite 可啟用、停用虛擬站台)
-----------
啟動、停止、重啟 apache 等指令
/etc/init.d/apache2 start | stop | restart
apache 設定檔測試指令 (apache 設定檔的語法若寫錯,會使apache無法啟動,可用此指令測試)
apache2ctl configtest
/etc/init.d/apache2 start | stop | restart
apache 設定檔測試指令 (apache 設定檔的語法若寫錯,會使apache無法啟動,可用此指令測試)
apache2ctl configtest
/etc/rc.d/init.d/httpd start | stop | restart
---------------
開機就啟動的設定在
/etc/default/apache2
預設是開機啟動 (NO_START=0),不想開機啟動請改成 1
/etc/default/apache2
預設是開機啟動 (NO_START=0),不想開機啟動請改成 1
--------------------
位置 /etc/apache2/apache2.conf
Listen 80 port的設定
在apache2.conf 有一行 Include /etc/apache2/ports.conf
vim /etc/apache2/ports.conf 加入你要監聽的port
預設的使用者與群組
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
debian環境apache 啟動的身份與群組皆為 www-data
-----------------------------
目錄加密碼
有兩種方法,一設定在 apache 檔內。二目錄底下設定一個 .htaccess 檔。
a.編輯 apache 設定檔
vim /etc/apache2/apache2.conf
vim /etc/apache2/apache2.conf
例如,我們有兩個目錄要加密碼保護,分別為 /mydata1和 /mytada2
apache 設定檔內加入
#受密碼保護的目錄
<Directory "/mydata1">
AllowOverride AuthConfig
Order allow,deny
Allow from all
</Directory>
<Directory "/mydata2">
AllowOverride AuthConfig
Order allow,deny
Allow from all
</Directory>
<Directory "/mydata1">
AllowOverride AuthConfig
Order allow,deny
Allow from all
</Directory>
<Directory "/mydata2">
AllowOverride AuthConfig
Order allow,deny
Allow from all
</Directory>
-----------------------------------
檢查 apache2.conf 設定檔內是否還有同一目錄的設定,
若有請把它加#號,否則密碼保護無法成功。
例如: /mydata1 是對應到 /var/www/84/mydata1/wwwroot 這目錄,
但這目錄也有針對它的設定必須將其取消
否則密碼保護不會設定成功。
#<Directory "/var/www/84/mydata1/wwwroot">
# Options None
# AllowOverride None
# Order allow,deny
# Allow from all
#</Directory>
設完之後重啟 apache
/etc/init.d/apache2 restart
------------------
建密碼檔
建一密碼檔名為apache.passwd 存放在 /home/backup
htpasswd -c /home/backup/apache.passwd user1
接著輸入密碼 xxxxxxxx
密碼檔內建第二個使用者 (不加 -c 參數了)
htpasswd /home/backup/apache.passwd user2
註:user1和user2為你自訂的使用者帳號,xxxxx為你自訂的密碼
改變檔案屬性
chown www /home/backup/apache.passwd
chgrp users /home/backup/apache.passwd
在要被保護的目錄下建.htaccess檔
先進到你要密碼保護的目錄底下
cd /var/www/84/mydata1/wwwroot/
vim .htaccess
=====加入以下內容==================
AuthName "This is Private directory"
Authtype Basic
AuthUserFile /home/backup/apache.passwd
require user user1 user2
#require:後面接可以使用的帳號。
#如果要讓該密碼檔內的使用者都能夠登入,就改成『require valid-user』即可
===================================
改變檔案屬性
chown www .htaccess
chgrp users .htaccess
然後再把此檔copy到你要密碼保護的 另一個目錄底下去
cp .htaccess /usr/share/mydata2/site
否則密碼保護不會設定成功。
#<Directory "/var/www/84/mydata1/wwwroot">
# Options None
# AllowOverride None
# Order allow,deny
# Allow from all
#</Directory>
設完之後重啟 apache
/etc/init.d/apache2 restart
------------------
建密碼檔
建一密碼檔名為apache.passwd 存放在 /home/backup
htpasswd -c /home/backup/apache.passwd user1
接著輸入密碼 xxxxxxxx
密碼檔內建第二個使用者 (不加 -c 參數了)
htpasswd /home/backup/apache.passwd user2
註:user1和user2為你自訂的使用者帳號,xxxxx為你自訂的密碼
改變檔案屬性
chown www /home/backup/apache.passwd
chgrp users /home/backup/apache.passwd
在要被保護的目錄下建.htaccess檔
先進到你要密碼保護的目錄底下
cd /var/www/84/mydata1/wwwroot/
vim .htaccess
=====加入以下內容==================
AuthName "This is Private directory"
Authtype Basic
AuthUserFile /home/backup/apache.passwd
require user user1 user2
#require:後面接可以使用的帳號。
#如果要讓該密碼檔內的使用者都能夠登入,就改成『require valid-user』即可
===================================
改變檔案屬性
chown www .htaccess
chgrp users .htaccess
然後再把此檔copy到你要密碼保護的 另一個目錄底下去
cp .htaccess /usr/share/mydata2/site
2011年1月21日 星期五
sysv-rc-conf command-lin 圖形介面
sysv-rc-conf command-lin 圖形介面
$ sudo apt-get install sysv-rc-conf # 安裝 sysv-rc-conf
$ sudo sysv-rc-conf # 直接執行 sysv-rc-conf command-lin 圖形介面
開機就啟動服務 一般選 2 3 4 5
--------------------------------------------------
$ sudo apt-get install sysv-rc-conf # 安裝 sysv-rc-conf
$ sudo sysv-rc-conf # 直接執行 sysv-rc-conf command-lin 圖形介面
開機就啟動服務 一般選 2 3 4 5
--------------------------------------------------
# Default runlevel. The runlevels used by RHS are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
服務預設的啟動與關閉
引用紀老師 筆記
http://163.23.89.100/~chi/blog/index.php?load=read&id=129
Debain各種服務預設的啟動與關閉
在/etc的目錄下有各個目錄
/etc/rc0.d
/etc/rc1.d
/etc/rc2.d
/etc/rc3.d
/etc/rc4.d
/etc/rc5.d
/etc/rc6.d
這些目錄內的檔案管理著執行該程序時,要啟動與關閉那些服務
例如:
使用文字操作模式時(init 3),就會跑/etc/rc3.d目錄下的那些指令
若預設不想讓ftp啟動,就可以將/etc/rc3.d/S20vsftpd改名為K20vsftpd
操作如下:
cd /etc/rc3.d/
mv S20vsftpd K20vsftpd
這樣開機時就不會啟動 ftp 服務
http://163.23.89.100/~chi/blog/index.php?load=read&id=129
Debain各種服務預設的啟動與關閉
在/etc的目錄下有各個目錄
/etc/rc0.d
/etc/rc1.d
/etc/rc2.d
/etc/rc3.d
/etc/rc4.d
/etc/rc5.d
/etc/rc6.d
這些目錄內的檔案管理著執行該程序時,要啟動與關閉那些服務
例如:
使用文字操作模式時(init 3),就會跑/etc/rc3.d目錄下的那些指令
若預設不想讓ftp啟動,就可以將/etc/rc3.d/S20vsftpd改名為K20vsftpd
操作如下:
cd /etc/rc3.d/
mv S20vsftpd K20vsftpd
這樣開機時就不會啟動 ftp 服務
acfs server啟用使用者家目錄
acfs server啟用使用者家目錄
ln -s /etc/apache2/mods-available/userdir.conf /etc/apache2/mods-enabled/userdir.conf
ln -s /etc/apache2/mods-available/userdir.load /etc/apache2/mods-enabled/userdir.load
/etc/init.d/apache2 restart
開機就啟動服務 bind9
各項服務在 /etc/init/ 內會有設定檔
例如
而是隨著 Upstart 的管理機制
被擺到了 /etc/init/mysql.conf 內
在檔案開始的地方寫道
start on (net-device-up
and local-filesystems
and runlevel [2345])
stop on runlevel [016]
我們將它改為
start on (net-device-up
and local-filesystems
and runlevel [2345])
stop on runlevel [0123456]
---------------------------
開機就啟動方法2
sysv-rc-conf
ln -s /etc/apache2/mods-available/userdir.conf /etc/apache2/mods-enabled/userdir.conf
ln -s /etc/apache2/mods-available/userdir.load /etc/apache2/mods-enabled/userdir.load
/etc/init.d/apache2 restart
開機就啟動服務 bind9
各項服務在 /etc/init/ 內會有設定檔
例如
而是隨著 Upstart 的管理機制
被擺到了 /etc/init/mysql.conf 內
在檔案開始的地方寫道
start on (net-device-up
and local-filesystems
and runlevel [2345])
stop on runlevel [016]
我們將它改為
start on (net-device-up
and local-filesystems
and runlevel [2345])
stop on runlevel [0123456]
---------------------------
開機就啟動方法2
sysv-rc-conf
acfs104安裝ols3 dns
請輸入網域名稱? 例如: jmjh.tnc.edu.tw
test.com.tw
請輸入IP前三個數字? 例如: 163.26.167
127.0.0
請輸入第一台主機的第四個IP?
例如: 163.26.167.1 的 1
1
若您有架設 sendmail, 您打算把 test.com.tw 寫入
local-host-names 中嗎?(Y/N)
y
請輸入 local-host-names 的目錄位置? ( 如 /etc/mail )
Linux 通常在 /etc/mail 中
您要架設第二部 DNS 嗎?(Y/N)
n
Done!
--------------------------------------------------
已在目前的目錄中, 產生以下DNS主機的設定檔:
1. named.conf
2. db.hnps.chc.edu.tw
3. db.163.23.115
4. localhost
5. rev-127.0.0
6. named.ca
請將 所有檔案 放在 /etc/bind 中
檢查設定檔 (一定要檢查)
將路徑 /var/named 修改成 /etc/bind
修改各設定檔
vi /etc/bind/db.XXX.chc.edu.tw
vi /etc/bind/db.163.23.XXX
/etc/init.d/bind9 restart
test.com.tw
請輸入IP前三個數字? 例如: 163.26.167
127.0.0
請輸入第一台主機的第四個IP?
例如: 163.26.167.1 的 1
1
若您有架設 sendmail, 您打算把 test.com.tw 寫入
local-host-names 中嗎?(Y/N)
y
請輸入 local-host-names 的目錄位置? ( 如 /etc/mail )
Linux 通常在 /etc/mail 中
您要架設第二部 DNS 嗎?(Y/N)
n
Done!
--------------------------------------------------
已在目前的目錄中, 產生以下DNS主機的設定檔:
1. named.conf
2. db.hnps.chc.edu.tw
3. db.163.23.115
4. localhost
5. rev-127.0.0
6. named.ca
請將 所有檔案 放在 /etc/bind 中
檢查設定檔 (一定要檢查)
將路徑 /var/named 修改成 /etc/bind
修改各設定檔
vi /etc/bind/db.XXX.chc.edu.tw
vi /etc/bind/db.163.23.XXX
/etc/init.d/bind9 restart
acfs10.04server
1.放入光碟預設密碼 webadmin superuser
2.點入 安裝Ubuntu 10.04 LTS
3./ ext4 swap /home ext4
1.vi /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 172.20.x.9
netmask 255.255.0.0
network 172.20.2.0
broadcast 172.20.2.255
gateway 172.20.x.x
auto eth0:0
iface eth0:0 inet static
address 163.23.115.x
netmask 255.255.255.192
network 163.23.115.254
broadcast 163.23.115.255
2.重新啟動 /etc/init.d/networking restart
vi /etc/resolv.conf
nameserver 168.95.1.1
5.#vi /etc/hostname
mis009
#vi /etc/hosts
127.0.0.1 localhost
127.0.1.1 mis009
6.#vi /etc/resolv.conf
domain cajh.chc.edu.tw
search cajh.chc.edu.tw
nameserver 172.XX.X.XXX
nameserver 163.XX.XX.XX
nameserver 168.95.1.1
nameserver 8.8.8.8
--------- 改密碼 --------
7.#passwd root
#passwd webadmin
#mysqladmin -uroot -psuperuser password '密碼'
8.#apt-get install bind9
重新啟動 /etc/init.d/bind9 restart
開機啟動指令 sysv-rc-conf
所有套件更新 apt-get update
安裝 vi 加強版 #操作 vi 怪怪的,所以安裝加強版
apt-get install vim
網路設定 (設定固定ip,dhcp為自動取得ip)
vi /etc/network/interfaces
auto eth0
iface eth0 inet static
address 163.23.115.193
netmask 255.255.255.192
gateway 163.23.115.254
#同一張網卡新增一個虛擬的網路ip
auto eth0:0
iface eth0:0 inet static
address 172.20.1.248
netmask 255.255.255.0
gateway 172.20.1.254
/etc/init.d/networking restart #重新啟動網卡設定
如果沒有安裝 ncftp ,使用 apt-get install ncftp 來安裝
cd pub/ols3tools/
get ols3dns-1.0.5p.tar.gz
exit
tar zxvf ols3dns-1.0.5p.tar.gz
./ols3dns
檢查設定檔 (一定要檢查)
vi /etc/bind/named.conf
將路徑 /var/named 修改成 /etc/bind
vi /etc/bind/db.XXX.XXX.XX
vi /etc/bind/db.XXX.XXX.XXX
重新啟動 named
/etc/init.d/bind9 restart
ipv6
----------------------------------------------------
參考http://blogs.yyes.chc.edu.tw/post/2/2723
ifconfig
看網卡是否支援IPv6
出現inet6 addr表示支援
sudo vi /etc/networkinterfaces
iface eth0 inet6 static
address 2001:288:xxxx::2
netmask 48
gateway 2001:288:xxxx::1
sudo /etc/init.d/networking restart
網路連線測試
以「ping6」指令 ping 到「ipv6.l.google.com」
ping6 2404:6800:8005::6a
DNS 伺服器設定
sudo vi /etc/bind/named.conf
在 options 區段內有些 Bind 版本需加入以下內容:
listen-on-v6 { any; };
DNS 正解檔設定
vi /etc/bind/db.hnps.chc.edu.tw 裡列出正解設定,
IPv6 的寫法除了IP位址不同外,另一差別只是將「A」改成「AAAA」,
加上兩列關於這兩部主機新的設定:
dns IN AAAA 2001:288:xxxx::2
www IN AAAA 2001:288:xxxx::2
重新啟動DNS
sudo /etc/init.d/bind9 restart
測試
nslookup
> server 163.23.115.xx
Default server: 163.23.115.xx
Address: 163.23.115.xx#53
2.點入 安裝Ubuntu 10.04 LTS
3./ ext4 swap /home ext4
1.vi /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 172.20.x.9
netmask 255.255.0.0
network 172.20.2.0
broadcast 172.20.2.255
gateway 172.20.x.x
auto eth0:0
iface eth0:0 inet static
address 163.23.115.x
netmask 255.255.255.192
network 163.23.115.254
broadcast 163.23.115.255
2.重新啟動 /etc/init.d/networking restart
vi /etc/resolv.conf
nameserver 168.95.1.1
5.#vi /etc/hostname
mis009
#vi /etc/hosts
127.0.0.1 localhost
127.0.1.1 mis009
6.#vi /etc/resolv.conf
domain cajh.chc.edu.tw
search cajh.chc.edu.tw
nameserver 172.XX.X.XXX
nameserver 163.XX.XX.XX
nameserver 168.95.1.1
nameserver 8.8.8.8
--------- 改密碼 --------
7.#passwd root
#passwd webadmin
#mysqladmin -uroot -psuperuser password '密碼'
8.#apt-get install bind9
重新啟動 /etc/init.d/bind9 restart
開機啟動指令 sysv-rc-conf
所有套件更新 apt-get update
安裝 vi 加強版 #操作 vi 怪怪的,所以安裝加強版
apt-get install vim
網路設定 (設定固定ip,dhcp為自動取得ip)
vi /etc/network/interfaces
auto eth0
iface eth0 inet static
address 163.23.115.193
netmask 255.255.255.192
gateway 163.23.115.254
#同一張網卡新增一個虛擬的網路ip
auto eth0:0
iface eth0:0 inet static
address 172.20.1.248
netmask 255.255.255.0
gateway 172.20.1.254
/etc/init.d/networking restart #重新啟動網卡設定
如果沒有安裝 ncftp ,使用 apt-get install ncftp 來安裝
cd pub/ols3tools/
get ols3dns-1.0.5p.tar.gz
exit
tar zxvf ols3dns-1.0.5p.tar.gz
./ols3dns
檢查設定檔 (一定要檢查)
vi /etc/bind/named.conf
將路徑 /var/named 修改成 /etc/bind
vi /etc/bind/db.XXX.XXX.XX
vi /etc/bind/db.XXX.XXX.XXX
重新啟動 named
/etc/init.d/bind9 restart
ipv6
----------------------------------------------------
參考http://blogs.yyes.chc.edu.tw/post/2/2723
ifconfig
看網卡是否支援IPv6
出現inet6 addr表示支援
sudo vi /etc/networkinterfaces
iface eth0 inet6 static
address 2001:288:xxxx::2
netmask 48
gateway 2001:288:xxxx::1
sudo /etc/init.d/networking restart
網路連線測試
以「ping6」指令 ping 到「ipv6.l.google.com」
ping6 2404:6800:8005::6a
DNS 伺服器設定
sudo vi /etc/bind/named.conf
在 options 區段內有些 Bind 版本需加入以下內容:
listen-on-v6 { any; };
DNS 正解檔設定
vi /etc/bind/db.hnps.chc.edu.tw 裡列出正解設定,
IPv6 的寫法除了IP位址不同外,另一差別只是將「A」改成「AAAA」,
加上兩列關於這兩部主機新的設定:
dns IN AAAA 2001:288:xxxx::2
www IN AAAA 2001:288:xxxx::2
重新啟動DNS
sudo /etc/init.d/bind9 restart
測試
nslookup
> server 163.23.115.xx
Default server: 163.23.115.xx
Address: 163.23.115.xx#53
訂閱:
文章 (Atom)