文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>linux各种服务器的架设

linux各种服务器的架设

时间:2006-01-19  来源:wangsong_xinyu

Linux 架站入門- NAT 架設

•         NAT架設 – 文字模式
安裝 NAT Server

•         1.將 IP 轉送的功能打開,指令如下:
[root@fc2 /]#echo "1" > /proc/sys/net/ipv4/ip_forward

 

•         2.新增在 iptables 裡的 NAT chain 的指令如下:
[root@fc2 /]#/sbin/iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE
PS.eth0 是對外卡(真實 IP),如果你的不是 eth0 ,請改成你對外卡的網卡代號

•         3.將設好的NAT 設定存成檔案:
[root@fc2 /]#/sbin/iptables-save >/etc/sysconfig/iptables

 

•         4.修改相當於 Autoexec.bat 的檔案 /etc/rc.local 的檔案,讓 iptables 在開機時利用 iptables-restore 這個指令來回存 iptables 的規則。
[root@fc2 /]#vi /etc/rc.local
按 insert 鍵 → 進入 -Insert- 編輯模式
在最後一行加入下列這一行即可。
/sbin/iptables-restore </etc/sysconfig/iptables
再按 ESC 鍵 → 離開 -Insert- 編輯模式
輸入 :wq 再按 Enter 鍵 → 等於存檔後離開(PS. :wq 的順序不能弄錯)

 

Linux 架站入門- DHCP 架設

•         安裝 DHCP Server

•         1.vi /etc/dhcpd.conf
按 Insert 鍵 → 進入 -Insert- 編輯模式,在最後一行加入下列這幾行即可。

•         #---------------------------------------------
option routers 192.168.1.254;
ddns-update-style none;
ddns-updates off;
option domain-name-servers 168.95.192.1;
option domain-name "test";
option subnet-mask 255.255.255.0;
# test
subnet 192.168.1.0 netmask 255.255.255.0 {
        range 192.168.1.1 192.168.1.50;
        allow unknown-clients;
allow unknown-clients;
        }
#-------------------------------------------
再按 ESC 鍵 → 離開 -Insert- 編輯模式,
輸入 :wq 再按 Enter 鍵 → 等於存檔後離開(PS. :wq 的順序不能弄錯)

•         2.檢查 dhcpd 預設的服務設定
[root@fc2 /]# chkconfig --list dhcpd
如果顯示成下面的樣子
dhcpd           0:off   1:off   2:off    3:off    4:off    5:off    6:off
[root@fc2 /]#chkconfig --level 2345 dhcpd on
再執行一次
[root@fc2 /]# chkconfig --list dhcpd
如果是顯示成
dhcpd           0:off   1:off   2:on    3:on    4:on    5:on    6:off
就代表 OK 了!

 

•         3.啟動服務
在 RedHat 下,輸入
[root@fc2 /]#service dhcpd start
另一種的標準啟動方式:
[root@fc2 init.d]# /etc/rc.d/init.d/dhcpd start
如果有看到
Starting dhcpd:                                            [  OK  ]
就代表您的設定沒有問題!

Linux 架站入門- Web 架設

•         安裝 Apache , PHP ,mySQL

•         參考網址: http://best.cycu.edu.tw/cgi-bin/topic.cgi?forum=97&topic=200
1.編輯 Apache 的組態檔:
[root@fc2 /]# vi /etc/httpd/conf/httpd.conf
在一般模式,按 / 是指尋找之意
語法:/ServerAdmin root@localhost
PS.你沒有看錯,是 / 和 ServerAdmin root@localhost 連在一起喔!

•         2.找到 ServerAdmin root@localhost
改成 ServerAdmin [email protected]
將 root@localhost 改成你的 email 位址!

 

•         3.找到 #ServerName new.host.name:80
改成 ServerName fc2.cpalm.org 即可
fc2.caplm.org 可以替換成你自己擁有的 DomainName.

•         2.檢查 Apache 的 PHP 組態檔:
[root@fc2 /]#cat /etc/httpd/conf.d/php.conf

顯示如下:

       # PHP is an HTML-embedded scripting language which attempts to make it
# easy for developers to write dynamically generated webpages.

       LoadModule php4_module modules/libphp4.so

 

       # Cause the PHP interpreter to handle files with a .php extension.

       AddType application/x-httpd-php .php

 

       # Add index.php to the list of files that will be served as directory

       # indexes.

       DirectoryIndex index.php

上面的設定是正確,所以不用更改設定!

•         4.檢查及編輯 php.ini 檔

找 register_globals = Off  改成 register_globals = On

 

找 post_max_size = 8M       改成 post_max_size = 100M

PS:如果有使用 php 檔案上傳的功能,改成 100M 上傳速度會變快喔!^_^

 

找 ;upload_tmp_dir = 改成 upload_tmp_dir = /tmp

 

找 upload_max_filesize = 2M 改成 upload_max_filesize = 100M

因為有使用 php 檔案上傳的功能,改成 100M 上傳才不會被限制住大小喔!

5.檢查在 php 裡的 mysql.so 的
Extension 有無啟動?

       [root@fc2 /]#cat /etc/php.d/mysql.ini

顯示:

       ; Enable mysql extension module

       extension=mysql.so

上述的設定是正確的,無須更動!

6.安裝 Turck MMcache 加速器(1)

參考網址: http://turck-mmcache.sourceforge.net/index_old.html

快速下載:wget http://voxel.dl.sourceforge.net/sourceforge/turck-mmcache/turck-mmcache-2.4.6.tar.gz

解壓縮指令:

tar zxvf turck-mmcache-2.4.6.tar.gz

cd turck-mmcache-2.4.6

6.安裝 Turck MMcache 加速器(2)

export PHP_PREFIX="/usr“

 

$PHP_PREFIX/bin/phpize ./configure --enable-mmcache=shared --with-php-config=$PHP_PREFIX/bin/php-config

 

make

6.安裝 Turck MMcache 加速器(3)

make install

[root@fc2 /]#vi /etc/php.ini

extension="mmcache.so“

mmcache.shm_size="16“

mmcache.cache_dir="/tmp/mmcache“

mmcache.enable="1" mmcache.optimizer="1“

mmcache.check_mtime="1“

mmcache.debug="0“

mmcache.filter="“

mmcache.shm_max="0“

mmcache.shm_ttl="0“

mmcache.shm_prune_period="0“

mmcache.shm_only="0“

mmcache.compress="1"

將上述參數加至 php.ini 最後一行。

6.安裝 Turck MMcache 加速器(4)

建立資料夾

mkdir /tmp/mmcache

chmod 0777 /tmp/mmcache

建立 mmcache.php 的管理密碼

#php -q mmcache_password.php

Enter admin name: admin

New admin password: mmcache

Retype new admin password: mmcache

加入下列幾行到你的 php.ini 並 restart HTTPD

mmcache.admin.name="admin“

mmcache.admin.password="$1$0ScD9gkb$nOEmFerNMvQ576hELeLrG0"

 

•         啟動 Apache

#service httpd start (restart / stop)  或

#/etc/rc.d/init.d/httpd start (restart / stop)

啟動 MySQL

#service mysql start (restart / stop)或

#/etc/rc.d/init.d/mysql start (restart /stop)

將 httpd 服務在開機時啟動

#chkconfig -- level 345 httpd on (off)

將 mysql 服務在開機時啟動

#chkconfig -- level 345 mysql on (off)

 

Linux 架站入門- 設定網路卡

設定/修改網路卡
#vi /etc/sysconfig/network-scripts/ifcfg-eth0

內容如下:
DEVICE=eth0(eth1)

       BOOTPROTO=static

       BROADCAST=220.130.40.255(192.168.1.255)

       IPADDR=220.130.40.121(192.168.1.254)

       NETMASK=255.255.255.0

       NETWORK=220.130.40.0(192.168.1.254)

       GATEWAY=220.130.40.254

       ONBOOT=yes

 

修改確定後存檔。

PS.當 Device = eth1 時.設定檔名須為 ifcfg-eth1,依此類推。

•         修改 DNS 設定

  #vi /etc/resolv.conf

       nameserver 168.95.192.1

       nameserver 168.95.1.1

       nameserver 168.95.192.2

      domain cpalm.org

改好後存檔!

 

Linux 架站入門 - 指令介紹

chkconfig --list |more
(將服務列出,滿一頁暫停)

chkconfig --list httpd
(將 httpd 服務詳細狀態列出)

chkconfig --level 2345 iptables on(off)
(將 iptables 服務 level 2345 狀態變更為 on)

service 服務名稱 start(restart / stop)

ntsysv 服務啟動工具

Linux 架站入門 – Mail 架設

文件參考:http://linux.vbird.org/linux_server/0390postfix.php

為什麼要有 Postfix ?
Postfix 是由 Wietse Zweitze Venema 先生(http://www.porcupine.org/wietse/)所發展的。早期的 mail server 都是使用 sendmail 架設的,還真的是『僅此一家,絕無分號!』 ^_^ !不過,Venema 博士覺得 sendmail 雖然很好用,但是畢竟不夠安全,尤其效能上面並不十分的理想,最大的困擾是....他的設定檔 sendmail.cf 真的是太難懂了!對於網管人員來說,要設定好 sendmail.cf 這個檔案,真不是人作的工作~

套件安裝:

首先請先檢查有無 cyrus-sasl & dovecot ?

#rpm -qa | grep cyrus-sasl

#rpm -qa | grep dovecot

       cyrus-sasl-plain-2.1.18-2

       cyrus-sasl-2.1.18-2

       cyrus-sasl-devel-2.1.18-2

       cyrus-sasl-md5-2.1.18-2

再來檢查有無 postfix?

       #rpm -qa | grep postfix

       postfix-2.0.18-4

       #vi /etc/dovecot.conf
找到 #protocols = imap imaps 在下一行
插入 protocols = imap pop3

找到 #imap_listen = *
將其修改成 imap_listen = *

找到 #pop3_listen = *
將其修改成 pop3_listen = *

按 ESC 鍵,存檔離開(:wq)

再來檢查 /usr/lib/sasl/smtp.conf 的內容

#cat smtpd.conf

       pwcheck_method: saslauthd

       saslauthd_version: 2

再來啟動 saslauthd

#service saslauthd start

相同把 saslauthd 的服務也打開,這樣子下次開機再會啟動。

#chkconfig --level 345 saslauthd on

啟動 dovecot Imap(啟動 pop3 & imap)

#chkconfig --level 345 dovecot on

#service dovecot start

#/etc/rc.d/init.d/dovecot start (stop | restart)

 

       主機的設定

       接著下來就是設定了!同樣的,在設定主機之前,有幾個東西是您必需先取得的喔:
 

–        具有合法的 hostname ,或者是經過授權的 DNS 主機來設定您自己的主機名稱(hostname);

–        您的 hostname 最好擁有一個 MX 的紀錄(record);

–        至少一定要瞭解到什麼是 Relay 的問題,以及規劃一下您所想要開放 relay 的網域;

       你至少需要有這些資料才能架設!不過,沒有名字也可以 IP 來做測試:
 

–        我的 hostname 為 fc2.cpalm.org;

–        我預計開放的 relay 網域為 cpalm.org 這個網域,與內部的 192.168.1.0/24 這個網域,還要可以使用 access 這個檔案的設定功能!

       設定檔:Postfix 的設定檔都在 /etc/postfix 裡面,主要的設定檔有:

       /etc/postfix/main.cf :這個就是最重要的 postfix 的設定檔了!等一下我們談到的設定都在這個檔案裡面進行修改的動作!基本上,他本身就是一個簡單的說明文件檔啦!不過,要注意的是,在你修改完成了 main.cf 之後,請記得『一定要重新 reload 或重新 restart postfix 才行!』

 

       /etc/postfix/master.cf:這個檔案是另外一個重要的 postfix 設定檔!他主要是規定了 postfix 每個程序的運作參數!

 

       /etc/postfix/access :這個檔案與 sendmail 的 access 是相同的!都是用來做為 relay 或者是 deny 某些 IP 與 hostname 的檔案!不過,要啟用他還是得要修改 main.cf 才行!

 

       /etc/postfix/aliases : 這個檔案與 sendmail 的 aliases 也是相同的!同樣的可以做為別名之用,所以您可以回頭去翻一翻這個檔案的用法喔!

 

       /etc/postfix/pcre_table regexp_table relocated : 這幾個檔案可以做為郵件的過濾之用喔!可以使用正規表示法來進行郵件過濾(filter)的規則。

       執行檔:Postfix 的執行檔可不少啊!約略提幾個主要的執行檔吧!
 

       /usr/sbin/postfix:這就是 postfix 的主要執行檔案啦!啟動與簡單的關閉 postfix 可以使用:

       postfix check :檢查 postfix 相關的檔案、權限等是否正確!
postfix start :開始 postfix 的執行
postfix stop  :關閉 postfix
postfix flush :強制將目前正在郵件佇列的郵件寄出!
postfix reload:重新讀入設定檔,也就是 /etc/postfix/main.cf

       要注意的是,每次更動了 /etc/postfix/main.cf 之後,一定需要執行 postfix reload 喔!

       /usr/sbin/postalias:這個指令是 sendmail 的 newaliases 啦!他可以用來將上面提到的設定檔  aliases 製作成為 postfix 看的懂得『資料庫』格式化檔案!由於一般來說,我們都是使用 hash 這一種資料格式,所以囉,你可以簡單的使用底下的指令方式來格式化。

       postalias 資料庫格式:檔名
postalias hash:/etc/postfix/aliases  ==>自動建立 /etc/postfix/aliases.db 這個資料庫檔案!

       /usr/sbin/postcat :這個指令可以用來觀察某個郵件佇列裡面檔案的資訊!postfix 的郵件佇列放置在 /var/spool/postfix 裡面,但是這個目錄裡面的檔案格式是 postfix 看的懂得,我們人類看不懂~為了取得這些在郵件佇列裡面的檔案資訊,所以我們得使用 postcat 這個指令來讀取出資訊喔!假如有個檔案放在 /var/spool/postfix/deferred,你可以這樣看:

       postcat /var/spool/postfix/deferred/filename

       /usr/sbin/postconf :可以用來讀取 main.cf 這個檔案裡面的設定資料的一個指令!用途多多啊!簡單的來說,可以直接將你的 main.cf 裡面的設定分門別類的顯示給你看,可以幫助除錯 (debug) 啦!不錯的工具,鳥哥個人蠻喜歡加入 -n 這個參數來瞭解目前的主要規範檔放置在那個目錄下!

       postconf -n

       顯示的結果為:

       alias_database = hash:/etc/postfix/aliases
alias_maps = hash:/etc/postfix/aliases
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/lib/postfix
debug_peer_level = 2
.......

       看到了吧!你想要知道的資料立刻一目了然,可以加快你的除錯喔!不必每次都要進入 main.cf 裡面找好久呢

       /usr/sbin/postmap:怪怪!這個指令的用法跟上面提到的 postalias 幾乎完全一模一樣啊! ^_^不過,他是用來取代 sendmail 的 makemap 的!用法是:

       postmap hash:/etc/postfix/access ==>自動建立 /etc/postfix/access.db 這個資料庫檔案!

        

       /usr/sbin/postqueue :這個是在觀察郵件佇列的一個指令啦!你可以使用 postqueue -p 來顯示目前的郵件佇列內容!這個:

       postqueue -p 與 mailq 顯示的內容會一模一樣喔!

       Postsuper -d ALL 刪除全部佇列的信件

       目錄:同樣的具有郵件佇列與郵件信箱的放置目錄啊!
 

–        /var/spool/mail :電子郵件信箱放置目錄

–        /var/spool/postfix :郵件佇列,裡面還有很多次目錄,都是一些其他功能的咚咚啊!

 

       整體的架構大致是如此,好啦!瞭解的一定程度的架構之後,我們要開始來談談主機的最基礎設定了吧!

       開始編輯 postfix 的組態檔

       #vi /etc/postfix/main.cf

       mydestination = $mydomain ,$myhostname , cpalm.idv.tw

       myorigin = $mydomain

       mynetworks = 127.0.0.1/8,192.168.1.0/24, 140.135.147.252

       alias_database = hash:/etc/postfix/aliases

 

       ### SMTP SASL AUTH ###

       smtpd_recipient_restrictions = permit_mynetworks, reject_non_fqdn_recipient, permit_sasl_authenticated, reject_unauth_destination

       smtpd_sasl_auth_enable = yes

       smtpd_sasl_local_domain =

       smtpd_client_restrictions = permit_sasl_authenticated

       smtpd_sasl_security_options = noanonymous

       myhostname = fc2.cpalm.org

       mydomain = cpalm.org

       mailbox_size_limit = 1024000000 # 信箱大小: 100MB

       message_size_limit = 999999999 # 每封信大小:99MB

 

       啟動 postfix 郵件系統

#postfix start (stop | reload)

接下來就用 Outlook Express 來測試吧,

我們沒有網域,但是可以用 IP 來連線喔!

也可以跟隔壁的同學互寄喔!

Ex: [email protected]

Linux 架站入門 - FTP 架設

►     /etc/vsftp.user_list:這個檔案不見得會使用到,且與實體用戶有關!當我們在 vsftpd.conf 裡面設定好了實體用戶的使用者沒有被 chroot 到自己的家目錄下(也就是使用者登入後不只能到自己的家目錄,還可以跳到其他目錄),不過,某些使用者您想讓他無法離開家目錄時,預設在 /etc/vsftp.user_list 這個檔案裡面,就可以將該使用者限制在自己的家目錄內了!一行一個帳號。
 

►     /etc/vsftp.banned_emails:這個檔案與匿名登入有關,不過也不見得會用到!當您允許匿名者 (anonymous) 登入您的 FTP 主機,不過卻不允許某些 email address 登入,那麼就可以將該 email address 寫入到這個檔案裡面去喔!
 

►     /usr/local/sbin/vsftpd 或 /usr/sbin/vsftpd:這就是 vsftpd 的主要執行檔咯!不要懷疑, vsftpd 只有這一個執行檔而已啊!
 

►     /var/ftp:這個是 vsftpd 的預設匿名者登入的根目錄喔!

►     套件安裝:

   在目前新版的 Fedora Core 2 主要的 FTP 伺服器軟體就是 vsftpd 囉!

►     Server 端的設定

       其實在 Server 端的設定蠻容易的,因為整個 vsftpd 的設定檔幾乎可以說只有一個,那就是 vsftpd.conf 這個檔案了。底下我們就來談一談整個 vsftpd 的套件結構與如何設定編輯 vsftpd.conf 這個設定檔吧! ^_^

 

►     vsftpd 的套件結構
 
vsftpd 的套件結構很簡單,設定檔與執行檔實在是不多,無論如何,我們還是得要瞭解一下:
 

►     /etc/vsftpd.conf 或 /etc/vsftpd/vsftpd.conf:這個就是 vsftpd 的主要設定檔了!也是等一下我們要設定的主要項目說。在這個設定檔裡面,所有的設定項目都是以『參數=設定值』來設定的,注意一下,等號兩邊沒有空白喔!至於 vsftpd.conf 的詳細說明,其實在 vsftpd.conf 裡面就已經相當的清晰了,如果還想要有其他的支援,可以使用『man 5 vsftpd.conf』來查閱喔!
 

►     /etc/pam.d/vsftpd 與 /etc/ftpusers 或 /etc/vsftpd.ftpusers:這個與 Wu FTP 是相同的作用啦!利用 pam 模組來進行身份確認的動作說!那麼怎麼知道使用 /etc/vsftpd.ftpusers 或 /etc/ftpusers 呢?看 /etc/pam.d/vsftpd 的內容即可!

►     檢視 /etc/pam.d/vsftpd 的內容:

►     [root@test root]# vi /etc/pam.d/vsftpd
#%PAM-1.0
auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd.ftpusers onerr=succeed
auth       required     pam_stack.so service=system-auth
auth       required     pam_shells.so
account    required     pam_stack.so service=system-auth
session    required     pam_stack.so service=system-auth

►     上面的斜體字是同一行,注意到斜體字那一行,可以發現 file="檔名" 那個檔名就是『限制使用者無法使用 vsftpd 』的主要設定檔案囉!

►     /etc/vsftp.user_list:這個檔案不見得會使用到,且與實體用戶有關!當我們在 vsftpd.conf 裡面設定好了實體用戶的使用者沒有被 chroot 到自己的家目錄下(也就是使用者登入後不只能到自己的家目錄,還可以跳到其他目錄),不過,某些使用者您想讓他無法離開家目錄時,預設在 /etc/vsftp.user_list 這個檔案裡面,就可以將該使用者限制在自己的家目錄內了!一行一個帳號。
 

►     /etc/vsftp.banned_emails:這個檔案與匿名登入有關,不過也不見得會用到!當您允許匿名者 (anonymous) 登入您的 FTP 主機,不過卻不允許某些 email address 登入,那麼就可以將該 email address 寫入到這個檔案裡面去喔!
 

►     /usr/local/sbin/vsftpd 或 /usr/sbin/vsftpd:這就是 vsftpd 的主要執行檔咯!不要懷疑, vsftpd 只有這一個執行檔而已啊!
 

►     /var/ftp:這個是 vsftpd 的預設匿名者登入的根目錄喔!

►     vsftpd.conf 設定值說明
 
vsftpd.conf 是 vsftpd 的主要設定檔案,在這裡我們約略來說明一下常見的 vsftpd.conf 裡面的各個設定參數吧!

►     關於主機的設定值
connect_from_port_20=YES (NO)
 還記得 wu ftp 那篇文章提到的,關於主動連線的 ftp-data 嗎?
 這個設定項目在啟動主動連線的 port 20 咯!
listen_port=21
 使用的 vsftpd 命令通道的 port number 設定,如果您想要使用非
 正規的 ftp port,在這個設定項目修改吧!

►     dirmessage_enable=YES (NO)
 當使用者進入某個目錄時,會顯示該目錄需要注意的內容,顯示的
 檔案預設是 .message ,當然,可以使用底下的設定項目來修訂!
message_file=.message
 當 dirmessage_enable=YES 時,可以設定這個項目來讓 vsftpd 
 尋找該檔案來顯示訊息!您也可以設定其他檔名喔!
listen=YES (NO)
 若設定為 YES 表示 vsftpd 是以 standalone 的方式來啟動的!
pasv_enable=YES (NO)
 啟動被動式連線(passive mode),一定要設定為 YES 的啦!
use_localtime=YES (NO)
 是否使用主機的時間?!預設使用 GMT 時間(格林威治),會比台灣
 時間晚 8 小時,一般來說,建議設定為 YES 吧!

►     write_enable=YES (NO)
 是否允許使用者具有寫入的權限?!這包括刪除與修改等功能喔!
connect_timeout=60
 單位是秒,如果 client 嘗試連接我們的 vsftpd 命令通道超過 60 秒,
 則不等待,強制斷線咯。
accept_timeout=60
 當使用者以被動式 PASV 來進行資料傳輸時,如果主機啟用 passive port 
 並等待 client 超過60 秒,那麼就給他強制斷線!您可以修改 60 這個數值。

►     data_connection_timeout=300
 如果 client 與 Server 間的資料傳送在 300 秒內都無法傳送成功,
 那 Client 的連線就會被我們的 vsftpd 強制剔除!
idle_session_timeout=300
 如果使用者在 300 秒內都沒有命令動作,強制離線!

max_clients=0
 如果 vsftpd 是以 stand alone 方式啟動的,那麼這個設定項目可以設定
 同一時間,最多有多少 client 可以同時連上 vsftpd 哩!?
max_per_ip=0
 與上面 max_clients 類似,這裡是同一個 IP 同一時間可允許多少連線?
pasv_max_port=0 ,pasv_min_port=0
 上面兩個是與 passive mode 使用的 port number 有關,如果您想要使用
 65400 到 65410 這 11 個 port 來進行被動式資料的連接,可以這樣設定
 pasv_max_port=65410 以及 pasv_min_port=65400

       ftpd_banner=一些文字說明
 當使用者無法順利連上我們的主機,例如連線數量已經超過 max_clients 
 的設定了,那麼 client 的畫面就會顯示『一些文字說明』的字樣,您可以修改

►     關於實體用戶登入者的設定值
guest_enable=YES (NO)
 若這個值設定為 YES 時,那麼任何非 anonymous 登入的帳號,均會被
 假設成為 guest (訪客) 喔!
local_enable=YES (NO)
 這個設定值必須要為 YES 時,在 /etc/passwd 內的帳號才能以
 實體用戶的方式登入我們的 vsftpd 主機喔!
local_max_rate=0
 實體用戶的傳輸速度限制,單位為 bytes/second, 0 為不限制。
chroot_local_user=YES (NO)
 將使用者限制在自己的家目錄之內(chroot)!這個設定在 vsftpd 
 當中預設是 NO,因為有底下兩個設定項目的輔助喔!
 所以不需要啟動他!
chroot_list_enable=YES (NO)
 是否啟用將某些實體用戶限制在他們的家目錄內?!預設是 NO ,
 不過,如果您想要讓某些使用者無法離開他們的家目錄時,
 可以考慮將這個設定為 YES ,並且規劃下個設定值

►     chroot_list_file=/etc/vsftpd.chroot_list
 如果 chroot_list_enable=YES 那麼就可以設定這個項目了!他裡面可以規定
 那一個實體用戶會被限制在自己的家目錄內而無法離開!(chroot)
 一行一個帳號即可!
userlist_deny=YES (NO)
 若此設定值為 YES 時,則當使用者帳號被列入到某個檔案時,在該檔案內
 的使用者將無法登入 vsftpd 伺服器!該檔案檔名與下列設定項目有關。
userlist_file=/etc/vsftpd.user_list
 若上面 userlist_deny=YES 時,則這個檔案就有用處了!在這個檔案內的
 帳號都無法使用 vsftpd 喔!

►     關於匿名者登入的設定值
anonymous_enable=YES (NO)
 設定為允許 anonymous 登入我們的 vsftpd 主機!預設是 YES ,底下的所有
 相關設定都需要將這個設定為 anonymous_enable=YES 之後才會生效!
anon_world_readable_only=YES (NO)
 僅允許 anonymous 具有下載可讀檔案的權限,預設是 YES。
anon_other_write_enable=YES (NO)
 是否允許 anonymous 具有寫入的權限?預設是 NO!如果要設定為 YES,
 那麼開放給 anonymous 寫入的目錄亦需要調整權限,讓 vsftpd 的 PID
 擁有者可以寫入才行!
anon_mkdir_write_enable=YES (NO)
 是否讓 anonymous 具有建立目錄的權限?預設值是 NO!如果要設定為 YES,
 那麼 anony_other_write_enable 必須設定為 YES !

►     anon_upload_enable=YES (NO)
 是否讓 anonymous 具有上傳資料的功能,預設是 NO,如果要設定為 YES ,
 則 anon_other_write_enable=YES 必須設定。
deny_email_enable=YES (NO)
 將某些特殊的 email address 抵擋住,不讓那些 anonymous 登入!
 如果以 anonymous 登入主機時,不是會要求輸入密碼嗎?密碼不是要您
 輸入您的 email address 嗎?如果你很討厭某些 email address ,
 就可以使用這個設定來將他取消登入的權限!需與下個設定項目配合:
banned_email_file=/etc/vsftpd.banned_emails
 如果 deny_email_enable=YES 時,可以利用這個設定項目來規定那個
 email address 不可登入我們的 vsftpd 喔!在上面設定的檔案內,
 一行輸入一個 email address 即可!

no_anon_password=YES (NO)
 當設定為 YES 時,表示 anonymous 將會略過密碼檢驗步驟,
 而直接進入 vsftpd 伺服器內喔!所以一般預設都是 NO 的!
anon_max_rate=0
 這個設定值後面接的數值單位為 bytes/秒 ,限制 anonymous 的傳輸速度,
 如果是 0 則不限制(由最大頻寬所限制),如果您想讓 anonymous 僅有 
 30 KB/s 的速度,可以設定『anon_max_rate=30000』
anon_umask=077
 限制 anonymous 的權限!如果是 077 則 anonymous 傳送過來的檔案
 權限會是 -rw------- 喔!

►     關於系統安全的設定值:
ascii_download_enable=YES (NO)
 如果設定為 YES ,那麼 client 就可以使用 ASCII 格式下載檔案。
 一般來說,由於啟動了這個設定項目可能會導致 DoS 的攻擊,因此預設是NO。
ascii_upload_enable=YES (NO)
 與上一個設定類似的,只是這個設定針對上傳而言!預設是 NO。
async_abor_enable=YES (NO)
 如果您的 FTP client 會下達 "async ABOR" 這個指令時,這個設定才需要啟用
 一般來說,由於這個設定並不安全,所以通常都是將他取消的!
check_shell=YES (NO)
 如果您想讓擁有任何奇怪的 shell 的使用者(在 /etc/passwd 的 shell 欄位)
 可以使用 vsftpd 的話,這個設定可以設定為 NO 喔!

►     one_process_model=YES (NO)
 這個設定項目比較危險一點~當設定為 YES 時,表示每個建立的連線
 都會擁有一支 process 在負責,可以增加 vsftpd 的效能。不過,
 除非您的系統比較安全,而且硬體配備比較高,否則容易耗盡系統資源喔!
 一般建議設定為 NO 的啦!
tcp_wrappers=YES (NO)
 當然我們都習慣支援 TCP Wrappers 的啦!所以設定為 YES 吧!
xferlog_enable=YES (NO)
 當設定為 YES 時,使用者上傳與下載檔案都會被紀錄起來。記錄檔案
 與下一個設定項目有關:
xferlog_file=/var/log/vsftpd.log
 如果上一個 xferlog_enable=YES 的話,這裡就可以設定了!
 這個是登錄檔的檔名啦!
xferlog_std_format=YES (NO)
 是否設定為 wu ftp 相同的登錄檔格式?!預設為 NO ,因為登錄檔會比較容易讀!
 不過,如果您有使用 wu ftp 登錄檔的分析軟體,這裡才需要設定為 YES

►     nopriv_user=nobody
 我們的 vsftpd 預設以 nobody 作為此一服務執行者的權限。因為 nobody 的權限
 相當的低,因此即使被入侵,入侵者僅能取得 nobody 的權限喔!
pam_service_name=vsftpd
 這個是 pam 模組的名稱,我們放置在 /etc/pam.d/vsftpd 即是這個咚咚!

►     上面這些是相當常見的 vsftpd 的設定參數,還有很多參數沒有列出來,您可以使用 man 5 vsftpd.conf 查閱喔!不過,基本上上面這些參數已經夠我們設定 vsftpd 囉!

►     最簡單的 vsftpd.conf 設定
 
如果您很懶的去設定 vsftpd 的話,那麼可以使用很簡單的設定值來規劃您的 FTP 伺服器。底下就是 Red Hat 9 的預設 vsftpd 的設定值,您可以使用這樣的設定值來啟動您的 FTP 伺服器即可。這樣的設定值有幾個用處:
 

►     任何在 /etc/vsftpd.ftpusers 裡面的使用者帳號均無法使用 vsftpd 喔!

►     開放 anonymous 與 實體用戶 登入 vsftpd ;

►     實體用戶登入主機時,可以跳至任何具有登入權限的目錄當中(沒有 chroot );

►     使用 port 20 作為主動連線時的 ftp-data 傳送埠口;

►     利用 /etc/hosts.allow(deny) 來管理登入權限;

►     當 Client 上傳/下載檔案時,該資訊會記錄在 /var/log/vsftpd.log 裡面;

►     其他的設定均已預設值來規範(如被動式 port number 等等)。

►     [root@test root]# vi /etc/xinetd.d/vsftpd
service ftp
{
        socket_type             = stream
        wait                    = no
        user                    = root
        server                  = /usr/local/sbin/vsftpd
        server_args             = /etc/vsftpd.conf
# 上面這個請依照您的主機環境來設定!尤其是 server_args 請設定您的
# vsftpd.conf 所在目錄的完整檔名(含目錄名稱)!
        log_on_success          += DURATION USERID
        log_on_failure          += USERID
        nice                    = 10
        disable                 = no
}

►     vi /etc/vsftpd/vsftpd.conf

►     找到 anonymous_enable=YES

       改成 anonymous_enable=NO
(anonymous_enable 不可以用 # 註解的方式關閉)

 

►     找到 #xferlog_file=/var/log/vsftpd.log

       改成 xferlog_file=/var/log/vsftpd.log

 

►     找到 #idle_session_timeout=600

       改成 idle_session_timeout=600

 

►     找到 #data_connection_timeout=120

       改成 data_connection_timeout=120

 

►     找到 #ascii_upload_enable=YES

               ascii_download_enable=YES

       改成 ascii_upload_enable=YES

               ascii_download_enable=YES    

 

►     找到 #chroot_local_user=NO

       改成 chroot_local_user=NO

 

►     找到 #chroot_list_enable=YES

       改成 chroot_list_enable=YES

 

►     找到 #chroot_list_file=/etc/vsftpd.chroot_list

       改成 chroot_list_file=/etc/vsftpd.chroot_list

 

►     存檔離開 (:wq)

►     -------------------------------------------------------------

►     啟動 vsftpd

►     #service vsftpd start (stop | restart)

►     #chkconfig --level 345 vsftpd on

相关阅读 更多 +
排行榜 更多 +
哥布林弹球b服手游下载

哥布林弹球b服手游下载

休闲益智 下载
小马样式盒游戏下载

小马样式盒游戏下载

休闲益智 下载
异变小镇中文版下载安装

异变小镇中文版下载安装

冒险解谜 下载