Centos 5 伺服器安裝設定


Centos 5 – 伺服器安裝設定 -看完就會架站篇
先前就是用醬的方法把第一台的centos伺服器建置起來的,相信看正在看文章的你一定也辦的到

CentOS介紹:
CentOS(Community ENTerprise Operating System)是Linux發行版之一,它是來自於Red Hat Enterprise Linux依照開放原始碼規定釋出的原始碼所編譯而成。由於出自同樣的原始碼,因此有些要求高度穩定性的伺服器以CentOS替代商業版的Red Hat Enterprise Linux使用。兩者的不同,在於CentOS並不包含封閉原始碼軟體。
文章引用作者:楊錦昌

原著作網址:
http://apt.nc.hcc.edu.tw/web/student_server_centos/student_server_centos.html

目錄
CentOS 5 ISO 檔下載
作業系統網路安裝
PieTTY、PuTTY(Microsoft Windows 下好用的 ssh 連線工具)
vi 基本指令介紹
SSH 基本設定
修改 IP 、FQDN(有需要才修改)
tcp_wrappers 基本設定
關閉 SElinux
關閉、啟動基本服務
更新套件(使用yum)
yum 基本指令介紹
rpm 基本指令介紹
WEB server
w3m – 文字型網頁瀏覽器
限制網頁連線範圍
使用帳號密碼認證保護資料夾
Webalizer – 網頁記錄檔分析
FTP server
如何上傳網頁到 /var/www/html
FileZilla
MAIL server
SMTP server – sendmail
POP server – dovecot
Open Webmail 安裝流程
PROXY server
DHCP server
SAMBA server
PHP & MySQL
phpMyAdmin
phpSysInfo
學校整合模組
動態網頁模組
圖書管理系統
Moodle – 課程管理系統
XOOPS – 網頁內容管理系統
phpBB – 論壇
LifeType – Blog 網誌
cron – 自動化工具
Webmin – web 介面作業系統管理軟體
大批帳號開設(使用 Webmin)
quota 設定 – 磁碟配額
ChangePassword – web介面密碼修改軟體
附錄
Awstats – 記錄檔分析
Awstats for apache
Awstats for vsftp
Awstats for sendmail
MRTG – 網路流量監控
ntop- 網路流量監控
簡易防火牆設定
CentOS 5 ISO 檔下載CentOS 官方網站:http://centos.org/

台灣 的幾個 Mirrors:
http://ftp.cse.yzu.edu.tw/pub/CentOS/
http://ftp.isu.edu.tw/pub/Linux/CentOS/
http://ftp.cs.pu.edu.tw/Linux/CentOS/

網路安裝 CD:http://ftp.cse.yzu.edu.tw/pub/CentOS/5.0/os/i386/images/boot.iso(6.9MB)
——————————————————————————–

作業系統網路安裝網路安裝 ISO 檔:http://ftp.cse.yzu.edu.tw/pub/CentOS/5.0/os/i386/images/boot.iso

開機的時候,輸入「linux askmethod」,安裝方式 選擇「FTP」

安裝方式為 FTP 時的設定:

FTP 站台名稱:140.138.144.170(或 ftp.cse.yzu.edu.tw
CentOS 5 所在目錄:pub/CentOS/5.0/os/i386

FTP 站台名稱:140.128.9.18(或 ftp.cs.pu.edu.tw
CentOS 5 所在目錄:Linux/CentOS/5/os/i386

安裝過程注意事項:

磁碟分割的地方勾選「檢視並修改分割區」,
分割一個獨立分割區給 home
取消勾選「Desktop – Gnome」,勾選「立即自訂」
在套件選擇的地方,取消勾選所有的套件,只選擇「基礎系統」內的「基礎」
註:

這裡是以 元智大學 和 靜宜大學 的 mirror 站為範例,路徑一定要對,否則就會出現錯誤訊息
若別的站台速度較佳的話,當然也可以設別的站

——————————————————————————–

PieTTY、PtTTY:Microsoft Windows 下好用的 ssh 連線工具PieTTY 官方網站:http://ntu.csie.org/~piaip/pietty/

下載:http://ntu.csie.org/~piaip/pietty/stable/pietty0327.exe
設定:

選項 / 字元編碼 / Unicode
選項 / 亞洲語系修正 / 取消勾選「Unicode 亞洲寬符號字元」
PuTTY 官方網站:http://www.chiark.greenend.org.uk/~sgtatham/putty/

下載:http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe

PuTTY 官方文件:http://www.chiark.greenend.org.uk/~sgtatham/putty/docs.html

——————————————————————————–

vi 基本指令介紹vi (or vim)是 Unix-like 作業系統下最通用、強悍的文字編輯器,儘管入門困難,建議一定要花時間將其基本操作學會

輸入:a、i、o

到第一行:gg
到最後一行:G
到某一行:xxG
到行首:0
到行末:$

複製:yy
貼上:p
復原:u

刪一個字:x
刪整行:dd

顯示行數::set nu
不顯示行數::set nonu

vi 的搜尋:/、再次搜尋:n
到 shell::sh(在 shell 中回到 vi:exit)

儲存::w
離開::q
儲存兼離開::wq 或 shift+zz
強制離開(不儲存)::q!

Vim 官方文件:http://www.vim.org/docs.php

——————————————————————————–

SSH 基本設定新增管理者帳號:

useradd sysadm
passwd sysadm

注意:這裡是以 sysadm 為例,當然您可以取自己喜歡的名稱,不過文件後續所用到的所有 sysadm 字眼,記得要換成您自取的帳號

只允許管理者使用 ssh 登入:

cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
vi /etc/ssh/sshd_config

AllowUsers sysadm

#在檔案最後面加上這一行,這樣就只有 sysadm 可以使用 ssh 連線了
#若要設定多人,就用空格隔開:AllowUsers sysadmsysadm2

注意:上面這個設定很重要(再強調一遍,很重要),建議一定要做

重新讀取 ssh 設定檔:

/etc/rc.d/init.d/sshd restart

用 sysadm 帳號登入後,再用 su – 指令變成 root

OpenSSH 官方文件:http://www.openssh.com/manual.html

——————————————————————————–

修改 IP 、FQDN(安裝過程中設定正確的話,是不用作任何修改的,有需要才修改)查看 IP:ifconfig
修改 IP:system-config-network-tui(或修改此檔:/etc/sysconfig/network-scripts/ifcfg-eth0)

FQDN 設定:

hostname
more /etc/hosts
more /etc/sysconfig/network

DNS 設定:

vi /etc/resolv.conf

nameserver 168.95.192.1
nameserver 168.95.1.1
重新啟動網卡:
/etc/rc.d/init.d/network restart

ping 介紹:ping -c 5 www.nc.hcc.edu.tw
traceroute 介紹:traceroute www.nc.hcc.edu.tw

——————————————————————————–

tcp_wrappers 基本設定vi /etc/hosts.deny

ALL:ALL

vi /etc/hosts.allow

ALL:192.168.1.0/255.255.255.0:allow
sshd:192.168.1.0/255.255.255.0:allow
vsftpd:ALL:allow
sendmail:ALL:allow

注意:這裡的連線範圍請依自己的需求設定

——————————————————————————–

關閉 SELinuxvi /etc/sysconfig/selinux

SELINUX=enforcing 改成–> SELINUX=disabled

——————————————————————————–

關閉、啟動基本服務執行 ntsysv 指令,只留下以下服務:

acpid
anacron
cpuspeed
crond
network
sshd
syslog
yum-updatesd

——————————————————————————

runlevel 介紹:

more /etc/inittab
ll /etc/rc.d/
more /etc/rc.d/rc.local

—————————————————————————–

chkconfig 介紹:

chkconfig –list
chkconfig –level 345 xxx on
chkconfig xxx on
chkconfig –list xxx

—————————————————————————-

man 介紹
netstat 介紹:netstat -tl

——————————————————————————–

更新套件(使用 yum)YUM – Yellowdog Updater Modified
YUM 官方網站:http://linux.duke.edu/projects/yum/

修改設定檔:

cd /etc/yum.repos.d/
cp CentOS-Base.repo CentOS-Base.repo.bak
vi CentOS-Base.repo

:%s/mirror.centos.org/centos/ftp.cse.yzu.edu.tw/pub/CentOS

:%s/mirror.centos.org/centos/ftp.cs.pu.edu.tw/Linux/CentOS


mirror.centos.org/centos
換成
ftp.cse.yzu.edu.tw/pub/CentOS

ftp.cs.pu.edu.tw/Linux/CentOS

[base]
name=CentOS-$releasever – Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
baseurl=http://ftp.cse.yzu.edu.tw/pub/CentOS/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://ftp.cse.yzu.edu.tw/pub/CentOS/RPM-GPG-KEY-CentOS-5
#released updates
[update]
name=CentOS-$releasever – Updates
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
baseurl=http://ftp.cse.yzu.edu.tw/pub/CentOS/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://ftp.cse.yzu.edu.tw/pub/CentOS/RPM-GPG-KEY-CentOS-5
#packages used/produced in the build but not released
[addons]
name=CentOS-$releasever – Addons
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons
baseurl=http://ftp.cse.yzu.edu.tw/pub/CentOS/$releasever/addons/$basearch/
gpgcheck=1
gpgkey=http://ftp.cse.yzu.edu.tw/pub/CentOS/RPM-GPG-KEY-CentOS-5

#additional packages that may be useful
[extras]
name=CentOS-$releasever – Extras
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
baseurl=http://ftp.cse.yzu.edu.tw/pub/CentOS/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://ftp.cse.yzu.edu.tw/pub/CentOS/RPM-GPG-KEY-CentOS-5

更新:yum -y update

安裝 vim-enhanced 加強 vi 的功能:

yum -y install vim-enhanced
mv /bin/vi /bin/vi.bak
ln -s /usr/bin/vim /bin/vi
echo “set nu" >> /etc/vimrc
#在檔案最後面新增 set nu,顯示行數

重新開機:reboot

——————————————————————————–

yum 指令介紹更新:yum update
安裝:yum install xxx
移除:yum remove xxx
清除已經安裝過的檔案(/var/cache/yum/):yum clean all
搜尋:yum search xxx
列出所有檔案:yum list
查詢檔案訊息:yum info xxx
群組安裝功能:

yum grouplist
yum groupinstall “Web Server"

一些檔案:

rpm -qc yum
more /var/log/yum.log

Managing Software with yum:http://fedora.redhat.com/docs/yum/index.html

——————————————————————————–

RPM 基本指令介紹安裝:rpm -ivh xxx
移除:rpm -e xxx
升級:rpm -Uvh xxx
查詢:

rpm -qa | grep xxx
rpm -qi xxx
rpm -ql xxx
rpm -qc xxx
rpm -qf /etc/yum.conf
rpm -qpi xxx

——————————————————————————–

WEB serverApache HTTP Server 官方網站:http://httpd.apache.org/

yum -y install httpd mod_ssl
cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bak
vi /etc/httpd/conf/httpd.conf

250行 ServerAdmin root@localhost
354行 UserDir disable 修改成–> #UserDir disable
361行 #UserDir public_html 修改成–> UserDir www
#將個人網頁資料夾改成由 public_html 改成 www,方便輸入

390行 DirectoryIndex index.html index.html.var 修改成–> DirectoryIndex index.html index.htm index.php index.html.var
730行 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

746行 AddDefaultCharset UTF-8 修改成–> #AddDefaultCharset UTF-8

/etc/rc.d/init.d/httpd start
chkconfig httpd on

注意:web server 架設好之後,個人網頁的功能也啟動了,只要輸入「http://IP/~xxx」即可瀏覽,不過請確定 SELinux 的功能是關閉的,否則將無法正常瀏覽個人網頁。

Apache HTTP Server 官方文件:http://httpd.apache.org/docs-project/

——————————————————————————–

w3m 介紹w3m 官方網站:http://w3m.sourceforge.net/index.en.html

yum -y install w3m
w3m IP

註:

w3m MANUAL:http://www.w3m.org/manual.html
在本機前文字模式下啟動滑鼠「gpm」
lynx 是另外一套好用的文字型網頁瀏覽器,有興趣的人可以試看看

——————————————————————————–

限制網頁連線範圍mkdir /var/www/html/test1
vi /etc/httpd/conf/httpd.conf

在檔案最後面新增下面區段

<Directory /var/www/html/test1>
Deny from all
Allow from 192.168.1.0/255.255.255.0
Options Indexes FollowSymLinks
</Directory>

/etc/rc.d/init.d/httpd restart

測試:w3m http://IP/test1/

——————————————————————————–

使用帳號密碼認證保護資料夾vi /etc/httpd/conf/httpd.conf

326行 AllowOverride None 修改成–> AllowOverride All

/etc/rc.d/init.d/httpd restart

mkdir /var/www/html/test2
cd /var/www/html/test2
htpasswd -c .htpasswd sysadm

ls -al

vi .htaccess

AuthUserFile /var/www/html/test2/.htpasswd
AuthName “Top Secret"
AuthType Basic
require valid-user

測試:w3m http://IP/test2/

修改密碼:htpasswd -m .htpasswd sysadm
新增使用者:htpasswd .htpasswd user2

——————————————————————————–

網頁記錄檔分析 – WebalizerWebalizer 官方網站:http://www.mrunix.net/webalizer/

yum -y install webalizer
cp /etc/httpd/conf.d/webalizer.conf /etc/httpd/conf.d/webalizer.conf.bak
vi /etc/httpd/conf.d/webalizer.conf

Alias /usage /var/www/usage

<Location /usage>
Order deny,allow
Deny from all
Allow from 127.0.0.1 修改成–> Allow from 192.168.1.0/255.255.255.0
Allow from ::1
# Allow from .example.com
</Location>

/usr/bin/webalizer
/etc/rc.d/init.d/httpd restart

測試:w3m http://IP/usage/

more /etc/cron.daily/00webalizer

httpd log位置:ll /var/log/httpd/
Webalizer 官方文件:ftp://ftp.mrunix.net/pub/webalizer/README

——————————————————————————–

FTP servervsftpd 官方網站:http://vsftpd.beasts.org/

yum -y install vsftpd
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
vi /etc/vsftpd/vsftpd.conf

12行 anonymous_enable=YES 修改成–> anonymous_enable=NO
51行 #xferlog_file=/var/log/vsftpd.log 修改成–> xferlog_file=/var/log/xferlog

94行 #chroot_list_enable=YES 修改成–> chroot_list_enable=YES
96行 #chroot_list_file=/etc/vsftpd/chroot_list 修改成–> chroot_list_file=/etc/vsftpd/chroot_list

#在檔案最後面加入下面這一行

chroot_local_user=YES

echo ‘sysadm’ >> /etc/vsftpd/chroot_list

/etc/rc.d/init.d/vsftpd start
chkconfig vsftpd on

touch /home/sysadm/ftptest.txt

測試:lftp -u sysadm IP(或 lftp sysadm@IP

限制每個 IP 最大連線數量:max_per_ip=5
限制傳輸速率:local_max_rate=30000(30000 表 30KB)

lftp 介紹:get、mget、put、mput、mirror、exit bg、!<shell-command>
vsftpd 官方文件:http://vsftpd.beasts.org/vsftpd_conf.html

——————————————————————————–

如何上傳網頁到 /var/www/html底下使用 link 的方式將 /var/www/html 資料夾連結到 /home/sysadm/web,這樣我們就可以用 sysadm 帳號上傳網頁了

chmod 755 /home/sysadm
mkdir /home/sysadm/web
chown sysadm.sysadm /home/sysadm/web
cp -rpf /var/www/html/* /home/sysadm/web/
mv /var/www/html /var/www/html.bak
ln -s /home/sysadm/web /var/www/html

如何 mount ISO 檔:

mkdir /media/iso
mount -o loop xxx.iso /media/iso

察看檔案系統磁碟空間使用狀況:df -h
chown 介紹

——————————————————————————–

FileZilla(Microsoft Windows 下好用的 ftp 自由軟體)FileZilla 官方網站:http://filezilla.sourceforge.net/

下載:http://nchc.dl.sourceforge.net/sourceforge/filezilla/FileZilla_2_2_31_setup.exe

注意:FileZilla 的傳輸過程預設是沒有加密的,有安全性的風險,您可以在「伺服器型態」的地方勾選「SFTP 使用 SSH2」,為傳輸過程加密(圖)

scp、sftp 介紹
FileZilla 官方文件:http://filezilla.sourceforge.net/documentation/

——————————————————————————–

SMTP server – SendmailSendmail 官方網站:http://www.sendmail.org/

yum -y install sendmail sendmail-cf m4 cyrus-sasl
cp /etc/mail/sendmail.mc /etc/mail/sendmail.mc.bak
vi /etc/mail/sendmail.mc

52行 dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl
53 行 dnl define(`confAUTH_MECHANISMS’, `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl
#刪掉上面兩行前面的 dnl
#注意:TRUST_AUTH_METH、define 前面不要留有空格

116行 dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA’)dnl

#前面加上 dnl, 把這行註解起來(dnl = do not load)

#或改成下面這樣也可以

DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA’)dnl

cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.bak
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

vi /etc/mail/access

Connect:sqes.hcc.edu.tw RELAY
Connect:192.168.1 RELAY
#加入以上兩行(請依自己學校狀況修改)

makemap hash /etc/mail/access < /etc/mail/access

/etc/rc.d/init.d/saslauthd start
/etc/rc.d/init.d/sendmail start
chkconfig saslauthd on
chkconfig sendmail on

SMTP 測試:telnet IP 25(離開:quit)

把寄給 root 的信寄給 sysadm:

vi /etc/aliases

96行 #root: marc 修改成–> root: sysadm

#若想要 root 也留一份備份的話:root: sysadm,root

newaliases

mutt 介紹:yum -y install mutt && mutt
Sendmail 官方文件:http://www.sendmail.org/~ca/email/sm-X/

——————————————————————————–

POP serverDovecot 官方網站:http://www.dovecot.org/

yum -y install dovecot
cp /etc/dovecot.conf /etc/dovecot.conf.bak
vi /etc/dovecot.conf

17行 #protocols = imap imaps 修改成–> protocols = pop3

#只開啟 pop3 的功能,若要 imap 請自行加入,此設定值若不修改,預設是開啟 imap、pop3 的

81行 #ssl_disable = no 修改成–> ssl_disable = yes

#不啟動 ssl 加密功能

/etc/rc.d/init.d/dovecot start
chkconfig dovecot on

POP3 測試:telnet IP 110(離開:quit)

nmap 介紹:yum -y install nmap && nmap localhost
Dovecot 官方文件:http://wiki.dovecot.org/

——————————————————————————–

Open Webmail 安裝流程:Open Webmail 官方網站:http://openwebmail.org/

注意:要架設 Open Webmail 前,請務必先將 sendmail、dovecot 架設好

安裝

yum -y install perl-suidperl perl-Compress-Zlib
rpm -ivh http://apt.sw.be/redhat/el5/en/i386/dag/RPMS/perl-Text-Iconv-1.4-1.2.el5.rf.i386.rpm
wget http://openwebmail.org/openwebmail/download/redhat/rpm/release/openwebmail-2.52-1.i386.rpm
rpm -ivh openwebmail-2.52-1.i386.rpm
rm -rf openwebmail-2.52-1.i386.rpm

修改 openwebmail.conf

cp /var/www/cgi-bin/openwebmail/etc/openwebmail.conf /var/www/cgi-bin/openwebmail/etc/openwebmail.conf.bak
vi /var/www/cgi-bin/openwebmail/etc/openwebmail.conf

55行 enable_pop3 yes 修改成–> enable_pop3 no
62行 default_language en 修改成–> default_language zh_TW.Big5
85行 default_iconset Cool3D.English 修改成–> default_iconset Cool3D.Chinese.Traditional
76行 <default_signature>
77行 —
78行 Open WebMail Project (http://openwebmail.org)
79行 </default_signature>

#此此四行是使用者寄信的預設簽名檔,請自行修改紅字部分

202行 webdisk_rootpath /webdisk 修改成–> webdisk_rootpath /

修改 dbm.conf

cp /var/www/cgi-bin/openwebmail/etc/defaults/dbm.conf /var/www/cgi-bin/openwebmail/etc/defaults/dbm.conf.bak
vi /var/www/cgi-bin/openwebmail/etc/defaults/dbm.conf

dbm_ext .db
dbmopen_ext .db
dbmopen_haslock no

使用 Open WebMail 變更密碼的時候,順便修改 samba 密碼

cp /var/www/cgi-bin/openwebmail/etc/auth_unix.conf /var/www/cgi-bin/openwebmail/etc/auth_unix.conf.bak
vi /var/www/cgi-bin/openwebmail/etc/auth_unix.conf

13行 change_smbpasswd no 修改成–> change_smbpasswd yes

初始化

/var/www/cgi-bin/openwebmail/openwebmail-tool.pl –init

測試:https://IP/cgi-bin/openwebmail/openwebmail.pl

縮短 Open WebMail 連結網址:

vi /etc/httpd/conf/httpd.conf

ScriptAlias /mail “/var/www/cgi-bin/openwebmail/openwebmail.pl"

#在設定檔最後面加上這一行

/etc/rc.d/init.d/httpd restart

測試:https://IP/mail/

註:

參考資料:http://turtle.ee.ncku.edu.tw/~tung/openwebmail/
How to install Open WebMail on Red Hat Enterprise Linux 3 By Thomas Chung <tchung AT openwebmail.org>
官方安裝說明檔:/var/www/data/openwebmail/doc/readme.txt
cd /var/www/cgi-bin/openwebmail/etc/
openwebmail.conf – 主要的設定檔,管理者要設定的選項,應該都寫在這個檔案裡頭
openwebmail.conf.help – openwebmail.conf 所有選項的說明檔

——————————————————————————–

PROXY serverSquid官方網站:http://www.squid-cache.org/

yum -y install squid
cp /etc/squid/squid.conf /etc/squid/squid.conf.bak
vi /etc/squid/squid.conf

#修改 993 行,將 # 取消,100 改為 1000(請視使用人數和硬碟狀況加大 cache 資料夾容量,)

# cache_dir ufs /var/spool/squid 100 16 256 修改成–> cache_dir ufs /var/spool/squid 1000 16 256
#限制允許連線範圍,請依網路狀況修改

2522行 #acl our_networks src 192.168.1.0/24 192.168.2.0/24 修改成–> acl our_networks src 192.168.1.0/24
2523行 #http_access allow our_networks 修改成–> http_access allow our_networks

/etc/rc.d/init.d/squid restart
chkconfig squid on

測試:為 w3m 掛上 proxy

cp /etc/w3m/config /etc/w3m/config.bak
echo “http_proxy http://IP:3128" >> /etc/w3m/config

w3m IP

Squid log 位置:more /var/log/squid/access.log
Squid 官方文件:http://www.squid-cache.org/Doc/

——————————————————————————–

DHCP serverDHCP 官方網站:http://www.isc.org/sw/dhcp/

yum -y install dhcp
vi /etc/dhcpd.conf

#修改如下,紅色部分請依自己學校狀況修改

ddns-update-style interim;
ignore client-updates;
default-lease-time 604800;
max-lease-time 1209600;
subnet 192.168.1.0 netmask 255.255.255.0 {
option routers 192.168.1.254;
option subnet-mask 255.255.255.0;
option domain-name “sqes.hcc.edu.tw";
option domain-name-servers 163.19.1.1;
range dynamic-bootp 192.168.1.100 192.168.1.200;
}

/etc/rc.d/init.d/dhcpd start
chkconfig dhcpd on

more /var/lib/dhcp/dhcpd.leases
man dhcpd.conf
man dhcpd.leases

設定檔範例:more /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample
DHCP 官方文件:http://www.isc.org/index.pl?/sw/dhcp/dhcpv3-README.php

——————————————————————————–

Samba 伺服器Samba 官方網站:http://samba.org/

yum -y install samba samba-client
mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
vi /etc/samba/smb.conf

[global]
netbios name = STUDENT
#samba 主機在網路上的芳鄰內出現的名字,預設為伺服器的 hostname,大小寫不拘,不過,netbios name 和 workgroup 不要設成一樣的名字

workgroup = SERVER
#相當於 Windows 下的工作群組

hosts allow = 192.168.1.0/255.255.255.0
hosts deny = ALL

security = user
encrypt passwords = yes

deadtime = 20

admin users = sysadm

############### 底下為要分享的資料夾(網路磁碟機)#############
[homes]
comment = %U 的家目錄
browseable = no
writable = yes
force create mode = 0755

[homework]
comment = 作業繳交
path = /home/homework
valid users = sysadm,@s94
#valid users 表示誰可以進入這個資料夾,加 @ 表群組, @s94 表 s94 這個群組,當然系統內需要預先建有 s94 這個群組
write list = sysadm,@s94
force create mode = 0755

[share]
comment = 資源分享(這裡放有上課用的教材、軟體)
path = /home/share
valid users = sysadm,@s94
write list = sysadm
force create mode = 0755

設定檔檢查:testparm

建立 homework、share 資料夾和修改權限:

mkdir /home/homework /home/share
chmod 777 /home/homework
chmod 755 /home/share
chown sysadm.sysadm /home/homework /home/share

新增 sysadm 帳號的 samba 密碼:

smbpasswd -a sysadm

more /etc/samba/smbpasswd

啟動 samba :

/etc/rc.d/init.d/smb start
chkconfig smb on

測試:

在 Windows XP 下開啟檔案總管:\IP

for Windows XP 網路磁碟機批次檔:

在桌面編輯 登入學生主機.bat 批次檔

net use w: \IPhomes
net use x: \IPshare
net use y: \IPhomework
net time \IP /set /yes

直接將帳號密碼寫進批次檔的寫法

net use w: \IPhomes /user:username password
net use x: \IPshare
net use y: \IPhomework
net time \IP /set /yes

在 Linux 文字模式下的掛載方式:

mkdir /media/smb
smbclient -L IP

掛載:mount.cifs //IP/share /media/smb -o username=sysadm
卸載:umount.cifs /media/smb

密碼直接打在指令內的寫法:

mount.cifs //IP/share /media/smb -o username=sysadm,password=password

光碟映像檔製作軟體(for Windows):

CDBurnerXP Pro:http://www.cdburnerxp.se/
ISO Recorder:http://isorecorder.alexfeinman.com/isorecorder.htm(只能用在 Windows XP)
IsoBuster:http://www.smart-projects.net/isobuster/
Nero:http://www.nero.com/en/index.html
光碟映像檔掛載軟體(for Windows):

Daemon tools 官方網站:http://www.daemon-tools.cc/
DAEMON Tools:http://www.daemon-tools.cc/dtcc/download.php?mode=ViewCategory&catid=5
FastMount:http://www.daemon-tools.cc/dtcc/download.php?mode=Download&id=33
smbstatus – report on current Samba connections
chmod 介紹
The Official Samba-3 HOWTO and Reference Guide:http://us4.samba.org/samba/docs/man/Samba-HOWTO-Collection/
Samba-3 by Example:http://us4.samba.org/samba/docs/man/Samba-Guide/

——————————————————————————–

PHP & MySQLPHP官方網站:http://www.php.net/
MySQL 官方網站:http://www.mysql.com/

yum -y install php mysql mysql-server php-mysql php-gd php-mbstring
cp /etc/php.ini /etc/php.ini.bak
vi /etc/php.ini

312行 max_execution_time = 300
313行 max_input_time = 600
314行 memory_limit = 160M
477行 post_max_size = 80M
582行 upload_max_filesize = 20M

#上面設定值,請視自己需求修改

vi /etc/httpd/conf.d/php.conf

18行 DirectoryIndex index.php 修改成–> #DirectoryIndex index.php

/etc/rc.d/init.d/httpd restart

vi /var/www/html/phpinfo.php

<?
phpinfo();
?>

測試:w3m http://IP/phpinfo.php

啟動 MySQL

/etc/rc.d/init.d/mysqld start
chkconfig mysqld on

註:在這裡我們先不設定 MySQL 的 root 密碼,等裝了下面的 phpMyAdmin 之後,再使用 phpMyAdmin 修改

如何重新安裝 MySQL?

/etc/rc.d/init.d/mysqld stop
yum -y remove mysql
rm -rf /var/lib/mysql
yum -y install php mysql mysql-server php-mysql php-gd
/etc/rc.d/init.d/mysqld start

設定密碼:mysqladmin -u root password ‘密碼’

PHP 官方文件:http://www.php.net/docs.php
MySQL 官方文件:http://dev.mysql.com/doc/

——————————————————————————–

phpMyAdminphpMyAdmin 官方網站:http://www.phpmyadmin.net/

cd
wget http://nchc.dl.sourceforge.net/sourceforge/phpmyadmin/phpMyAdmin-2.10.0.2-all-languages.tar.gz

tar zxvf phpMyAdmin-2.10.0.2-all-languages.tar.gz
rm -rf phpMyAdmin-2.10.0.2-all-languages.tar.gz
mv phpMyAdmin-2.10.0.2-all-languages /var/www/html/phpMyAdmin
cp /var/www/html/phpMyAdmin/libraries/config.default.php /var/www/html/phpMyAdmin/config.inc.php
vi /var/www/html/phpMyAdmin/config.inc.php

30 行 $cfg[‘PmaAbsoluteUri’] = “; 修改成–> $cfg[‘PmaAbsoluteUri’] = ‘http://IP/phpMyAdmin/';
71 行 $cfg[‘Servers’][$i][‘auth_type’] = ‘config'; 修改成–> $cfg[‘Servers’][$i][‘auth_type’] = ‘http';

測試:http://IP/phpMyAdmin/,帳號 root,密碼空白

點選「權限」,然後點選「root」這兩行後面的「編輯權限」圖示,更改密碼

phpMyAdmin Documentation:http://IP/phpMyAdmin/Documentation.html
phpMyAdmin 官方文件:http://www.phpmyadmin.net/home_page/docs.php

——————————————————————————–

phpSysInfophpSysInfo 官方網站:http://phpsysinfo.sourceforge.net/

cd
wget http://nchc.dl.sourceforge.net/sourceforge/phpsysinfo/phpsysinfo-2.5.3.tar.gz

tar zxvf phpsysinfo-2.5.3.tar.gz -C /var/www/html/
rm -rf phpsysinfo-2.5.3.tar.gz
cp /var/www/html/phpsysinfo/config.php.new /var/www/html/phpsysinfo/config.php
vi /var/www/html/phpsysinfo/config.php

36行 $default_lng=’en'; 修改成–> $default_lng=’tw';
37行 $default_template=’classic';

測試:http://IP/phpsysinfo/

——————————————————————————–

學校整合模組(程式撰寫:新竹縣 博愛國中 曾琳富老師)官方網站:http://dyna.hcc.edu.tw/dyna/menu/index.php?account=dyna
介紹:http://dyna.nc.hcc.edu.tw/php/class1_4.htm

先用 phpMyAdmin 新增 school 資料庫

安裝學校整合模組

yum -y install unzip gd

cd
wget http://dyna.hcc.edu.tw/dyna/data/user/dyna/files/200703161635000.zip

unzip -d /var/www/html 200703161635000.zip
rm -rf 200703161635000.zip
cp /var/www/html/school/config.inc.php /var/www/html/school/config.inc.php.bak
vi /var/www/html/school/config.inc.php

10行 $db_passwd = ‘1234’; //*MySQL username 的密碼
11行 $install_passwd = ‘1234’; //*安裝本程式密碼(務必更換)
14行 $self_url = ‘http://localhost/develop/school/'; 修改成–> $self_url = ‘http://IP/school/';
15行 $self_place = ‘c:/appserv/www/develop/school/'; 修改成–> $self_place = ‘/var/www/html/school/';
28行 $use_unix_command = 0; 修改成–> $use_unix_command = 1;
29行 $unzip_command = ‘/usr/local/bin/unzip'; 修改成–> $unzip_command = ‘/usr/bin/unzip';

chmod -R 777 /var/www/html/school/data

安裝:http://IP/school/install.php
瀏覽:http://IP/school/

系統管理者預設帳號、密碼均為 admin
修改管理者密碼:基本資料/虛擬帳號管理
基本資料/學校資料編修

——————————————————————————–

動態網頁模組官方網站:http://dyna.hcc.edu.tw/dyna/menu/index.php?account=dyna
介紹:http://dyna.hcc.edu.tw/php/class9_1.htm

先用 phpMyAdmin 新增 dyna 資料庫

cd
wget http://dyna.hcc.edu.tw/dyna/data/user/dyna/files/200703161637450.zip

unzip -d /var/www/html 200703161637450.zip
rm -rf 200703161637450.zip
cp /var/www/html/dyna/config.inc.php /var/www/html/dyna/config.inc.php.bak
vi /var/www/html/dyna/config.inc.php

10行 $db_passwd = ‘1234’; //*MySQL username 的密碼
11行 $install_passwd = ‘1234’; //*安裝本程式密碼(務必更換)
14行 $self_url = ‘http://IP/dyna/';
15行$self_place = ‘/var/www/html/dyna/';
33行 $use_unix_command = 0; 修改成–> $use_unix_command = 1;
34行 $unzip_command = ‘/usr/local/bin/unzip'; 修改成–> $unzip_command = ‘/usr/bin/unzip';
35行 $zip_command = ‘/usr/local/bin/zip'; 修改成–> $zip_command = ‘/usr/bin/zip';

chmod -R 777 /var/www/html/dyna/data

安裝:http://IP/dyna/install.php
瀏覽:http://IP/dyna/

系統管理者預設帳號、密碼均為 admin
修改管理者密碼:帳號基本設定

——————————————————————————–

圖書管理系統官方網站:http://dyna.hcc.edu.tw/dyna/menu/index.php?account=dyna

先用 phpMyAdmin 新增 library 資料庫

cd
wget http://dyna.hcc.edu.tw/dyna/data/user/dyna/files/200703161640150.zip

unzip -d /var/www/html 200703161640150.zip
rm -rf 200703161640150.zip
cp /var/www/html/library/config.inc.php /var/www/html/library/config.inc.php.bak
vi /var/www/html/library/config.inc.php

9行 $db_passwd = ‘1234’; //*MySQL username 的密碼
10行 $install_passwd = ‘1234’; //*安裝本程式密碼(務必更換)
13行 $self_place = ‘C:/WebServ/wwwroot/htdocs/develop/library/'; 修改成–> $self_place = ‘/var/www/html/library/';

14行 $self_url = ‘http://localhost/develop/library/'; 修改成–> $self_url = ‘http://IP/library/';

chmod -R 777 /var/www/html/library/data

安裝:http://IP/library/install.php
瀏覽:http://IP/library/

系統管理者預設帳號、密碼均為 admin
修改管理者密碼:管理系統 / 進階 / 變更自己帳號密碼

——————————————————————————–

Moodle – 課程管理系統Moodle 官方網站:http://moodle.org/

先用 phpMyAdmin 新增 moodle 資料庫

cd
wget http://apt.nc.hcc.edu.tw/pub/centos_src/Moodle.zip

unzip Moodle.zip
mv Moodle/moodle /var/www/html
chown -R apache.apache /var/www/html/moodle
rm -rf Moodle*

mkdir /var/www/html/moodledata
chown apache.apache /var/www/html/moodledata
echo “deny from all" > /var/www/html/moodledata/.htaccess

提升 Moodle 執行效能的設定(非必需,視自己需求設定)

vi /etc/php.ini

483行 magic_quotes_gpc = 1 486行 magic_quotes_runtime = 0 965行 session.bug_compat_warn = 0echo “AcceptPathInfo on" >> /etc/httpd/conf/httpd.conf
/etc/rc.d/init.d/httpd restart

安裝:http://IP/moodle/install.php

crontab -e

*/5 * * * * wget -q -O /dev/null http://IP/moodle/admin/cron.php

官方文件:http://IP/moodle/doc/
教師手冊:http://IP/moodle/doc/?file=teacher.html
Moodle 中文加油站:http://moodle.hcc.edu.tw/

——————————————————————————–

XOOPS – 網頁內容管理系統XOOPS 官方網站:http://www.xoops.org/

cd
wget http://xoops.tnc.edu.tw/uploads/xoops-2.2.4-tw-utf8.tgz

tar zxvf xoops-2.2.4-tw-utf8.tgz
mv xoops-2.2.4-tw-utf8/html /var/www/html/xoops
rm -rf xoops-2.2.4-tw-utf8 xoops-2.2.4-tw-utf8.tgz

cd /var/www/html/xoops
chmod 666 mainfile.php
chmod 777 uploads cache templates_c

安裝:http://IP/xoops/install/index.php

資料庫使用者帳號:root
資料庫密碼:MySQL root 密碼
資料庫名稱:xoops

安裝完之後,執行下列指令:

rm -rf install
chmod 444 mainfile.php
chmod 777 uploads

測試:http://IP/xoops/

安裝基本模組包:

cd
wget http://xoops.tnc.edu.tw/uploads/module2/BasicModules-0.2b-utf8.tgz
tar zxvf BasicModules-0.2b-utf8.tgz -C /var/www/html/xoops/modules/
rm -rf BasicModules-0.2b-utf8.tgz

安裝:管理員選單 / 模組管理 / 安裝想要的模組

註:基本模組包內有三個模組:新聞區、WF-DOWNLOADS、CBB討論區

XOOPS正體中文延伸計畫:http://xoops.tnc.edu.tw

——————————————————————————–

phpBB – 論壇phpBB 官方網站:http://www.phpbb.com/

先用 phpMyAdmin 新增 phpbb 資料庫

cd
wget http://nchc.dl.sourceforge.net/sourceforge/phpbb/phpBB-2.0.22.tar.gz
wget http://www.phpbb.com/files/language_packs_20x/lang_chinese_traditional.zip
wget http://www.phpbb.com/files/language_packs_20x/subsilver_chinese_traditional.tar.gz

tar zxvf phpBB-2.0.22.tar.gz
mv phpBB2 /var/www/html/phpbb
unzip -d /var/www/html/phpbb/language/ lang_chinese_traditional.zip
tar zxvf subsilver_chinese_traditional.tar.gz -C /var/www/html/phpbb/templates/
rm -rf phpBB-2.0.22.tar.gz lang_chinese_traditional.zip subsilver_chinese_traditional.tar.gz
chmod 777 /var/www/html/phpbb/config.php

安裝:http://IP/phpbb/install/install.php

Default board language: Chinese [ Traditionl ]

資料庫格式: MySQL 4.x/5.x

您的資料庫名稱:phpbb

您的資料庫名稱:root

您的資料庫名稱:MySQL root 密碼

系統管理員電子郵件信箱:

系統管理員帳號名稱:

系統管理員密碼:

系統管理員密碼 [ 再確認 ]:

chmod 644 /var/www/html/phpbb/config.php
rm -rf /var/www/html/phpbb/install/
rm -rf /var/www/html/phpbb/contrib/

竹貓星球:http://phpbb-tw.net/phpbb/index.php
官方安裝文件:http://IP/phpbb/docs/INSTALL.html

——————————————————————————–

LifeType – Blog 網誌LifeType 官方網站:http://www.lifetype.org.tw/

cd
wget http://nchc.dl.sourceforge.net/sourceforge/lifetype/lifetype-1.0.6.tar.gz

tar zxvf lifetype-1.0.6.tar.gz
mv lifetype-1.0.6 /var/www/html/blog
chmod 777 /var/www/html/blog/config/config.properties.php
rm -rf lifetype-1.0.6.tar.gz

安裝:http://IP/blog/wizard.php

Database server :localhost
Database user :root
Database password :MySQL root 密碼
Database name :blog

rm -rf /var/www/html/blog/wizard.php

管理:http://IP/blog/admin.php

使用者註冊、登入:http://IP/blog/summary.php
如果不想讓他人註冊,請移除 /var/www/html/blog/summary.php 這個檔案

——————————————————————————–

cron校時:

yum -y install ntp
ntpdate watch.stdtime.gov.tw && clock -w

時間與頻率國家標準實驗室:http://www.stdtime.gov.tw/chinese/home.htm
NTP 校時軟體(for Windows):http://www.stdtime.gov.tw/chinese/EXE/NTPClock.exe

cp /etc/crontab /etc/crontab.bak
vi /etc/crontab

0 0-23 * * * root /usr/sbin/ntpdate watch.stdtime.gov.tw > /dev/null 2>&1
#每個小時校時一次

0 6 * * 0 root /bin/sync;/bin/sync;/bin/sync;/sbin/shutdown -r now > /dev/null 2>&1
#每星期天早上六點電腦重新開機
#以上設定僅供參考,請視自己狀況設定

——————————————————————————–

Webmin:好用的web介面作業系統管理工具Webmin 官方網站:http://www.webmin.com

cd
wget http://nchc.dl.sourceforge.net/sourceforge/webadmin/webmin-1.340-1.noarch.rpm
rpm -ivh webmin-1.340-1.noarch.rpm
rm -rf webmin-1.340-1.noarch.rpm

測試:http://IP:10000

中文化設定:Webmin / Webmin Configuration / Language / Traditional Chinese(ZH_TW.BIG5)

啟動 Webmin 的 SSL 支援:

yum -y install perl-Net-SSLeay

Webmin / Webmin 組態 / SSL加密 / 如果可用 SSL 的話啟用?

Webmin 官方文件:http://www.webmin.com/index2.html

——————————————————————————–

大批帳號開設(使用 Webmin)登入 Webmin:伺服器 / Samba視窗檔案分享 / 組態 Unix 和 Samba 使用者自動同步:勾選裡面的五個選項

注意:上面這點非常重要

建立個人網頁資料夾、範本檔

mkdir /etc/skel/www
echo “Under construction……" > /etc/skel/www/index.html

注意:這裡的 www,必須和 httpd.conf 內的 UserDir 設定一樣

建立群組:

使用 webmin 建立 群組名稱:系統 / 使用者與群組 / 建立一個新群組(以下以 s94 群組為例)

建立批次匯入檔案(試算表範例檔、批次匯入範例檔)

批次檔格式:

create:使用者名稱:密碼:uid:gid:真實姓名:家目錄:shell:最小:最大:警告:非使用:過期

批次匯入檔必填的資料:

使用者名稱:可以使用學生學號
密碼:可以使用學生身份證號碼
gid:請設定成上面開設的群組的 gid(grep s94 /etc/group),同一學年請設定成同一群組
家目錄:同一學年的帳號均建在同一個資料夾內
shell:均設成 /bin/bash 即可
使用批次檔建立大批使用者:

登入 Webmin:系統 / 使用者與群組 / 使用批次檔一次過建立/修改/刪除使用者

——————————————————————————–

quota 設定 – 磁碟配額注意:quota 只能針對 partition 來設定,而不能針對某個資料夾來做控管,通常我們將使用者建在 /home (未更改預設使用者家目錄的狀況下),所以針對 /home 來做 quota 控管是必須的,當然前提是作業系統在安裝的時候,有為 home 獨立分割一個磁區

vi /etc/fstab

/dev/VolGroup00/LogVol02 /home ext3 defaults,usrquota 1 2

#在要啟動 quota 功能的磁區內加入紅字部分,這裡是以 /home 為例
#您的畫面,可能和這裡的不同,沒有關係

mount -o remount /home
quotacheck -avmcu
#沒問題的話,在 /home 內會自動產生 aquota.user 檔案

quotaon /home

編輯使用者 quota(這裡是以 s940001 這個帳號為例):

edquota s940001

Disk quotas for user s940001 (uid 501):
Filesystem blocks soft hard inodes soft hard
/dev/mapper/VolGroup00-LogVol02 5 45000 50000 6 0 0

quota s940001
repquota -a

註:edquota 預設會啟動 vi

複製 quota:

先進入帳號所在的目錄,
cd /home/s94
edquota -p s940001 *

repquota -a

使用 Webmin 設定:系統 / 磁碟配額

讓使用者尚未收的 mail 也受 quota 的管制:
注意:有獨立分割出 home 的人,才可使用這個方法

mkdir /home/mail
chown root.mail /home/mail
chmod 775 /home/mail
cp -rfp /var/spool/mail/* /home/mail
mv /var/spool/mail /var/spool/mail.bak
ln -s /home/mail /var/spool/mail

超過磁碟配額限制使用者名單
script 原始來源:http://home.csjh.tcc.edu.tw/home_exceed.htm

cd
wget http://apt.nc.hcc.edu.tw/web/student_server_centos4/src/quota_exceed.zip
unzip -d /root quota_exceed.zip
rm -rf quota_exceed.zip
chmod 755 -R /root/quota_exceed

修改:

vi /root/quota_exceed/home_create

#!/bin/bash
# Create Quota_exceed report for /home partiotn (/dev/sdb2)
cd /root/quota_exceed
/usr/sbin/repquota /home | grep + | sort > home_exceed
cat r1 > /var/www/html/home_exceed.htm
export LANG=zh_TW.Big5
#在這位置加入這行,這樣出來的網頁才不會有亂碼
date +%F%t%A%t%T >> /var/www/html/home_exceed.htm
cat r2 >> /var/www/html/home_exceed.htm
awk -f r3.awk home_exceed >> /var/www/html/home_exceed.htm
cat r4 >> /var/www/html/home_exceed.htm

/root/quota_exceed/home_create
echo ‘0 */6 * * * root /root/quota_exceed/home_create > /dev/null 2>&1′ >> /etc/crontab

測試:http://IP/home_exceed.htm

/etc/passwd、/etc/shadow、/etc/group、/etc/skel 介紹
symbolic link 介紹:ln -s 真 假

——————————————————————————–

ChangePassword官方網站:http://changepassword.sourceforge.net/

yum -y install gcc

cd
wget http://nchc.dl.sourceforge.net/sourceforge/changepassword/changepassword-0.9.tar.gz
tar zxvf changepassword-0.9.tar.gz
rm -rf changepassword-0.9.tar.gz
cd changepassword-0.9
vi lang.h

83行 #define charset “gb2312″ 修改成–> #define charset “big5″

./configure –enable-cgidir=/var/www/cgi-bin –enable-language=TChinese
–enable-smbpasswd=/etc/samba/smbpasswd –disable-squidpasswd
make
make install
cd ..
rm -rf changepassword-0.9

測試:https://IP/cgi-bin/changepassword.cgi

ChangePassword 官方文件:http://changepassword.sourceforge.net/README.txt

2 comments

  • KenLin

    關閉SElinux
    不會很危險嘛?

    回覆
  • jackcal

    加設 SElinux 設定,通常會讓很多人搞的一頭霧水一下那裡又不能連線什麼的,目前是建議將SElinux關閉,來使用硬體防火牆搭配使用,醬更簡單又更加安全

    謝謝你喔 (我應該要加註關閉SElinux 軟體防火牆功能,須搭配硬體防火牆使用才對)

    回覆

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *