這簡化了的筆記是記錄了弟安裝 FreeBSD 及一些網絡服務。包括 Httpd、FTP、SQL、SSH Server 一般常用服務。一開始先做好安裝、基本網路設定、系統資訊、第一使用者和root密碼等用 sysinstall 設定好,便開始安裝其他第三方程式和修改伺服器設定。
一開始先從如光碟、1.44MB磁碟、USB 或 網絡啟動安裝。而我一開始較喜歡從先從 kernel configure 開始設定核心以減少硬體驅動的衝突。然後到 sysinstall 程式出現,先 Custom 作個人選擇性安裝。然後按伺服計劃好的情況去分配 Partition。到開機管理員選擇 Standard。到 Lable 按伺服計劃好的情況去分配 Disk Lable。到 Distribution 選擇 Custom 後,除 local、XFree86、games 不選其他也先要。然後到安裝來源,選擇 FTP 及之後設定當時本機基本網絡資訊後按 Commit 去開始安裝。
SmbFTPD、Apache+PHP+MySQL
#############################
# 先修改 /etc/rc.conf #
#############################
kern_securelevel_enable="YES" # 是啟動 Security Level #
kern_securelevel="-1" # 先設定去-1,完全定好伺服後改回 3 。#
inetd_enable="NO" # 停止 inetd 服務 #
ntpdate_enable="YES" # 啟動主機校時 #
ntpdate_flags="stdtime.gov.hk" # 設定校時主機 #
sendmail_enable = "NONE" # 停止 sendmail 服務 #
icmp_drop_redirect="YES" # YES 表示丟棄 ICMP REDIRECT 封包。可防止一些 DoS (Deny of Service)#
icmp_log_redirect="YES" # YES 表示將丟棄的封包記錄下來 #
accounting_enable="YES" # 記錄使用者使用過的指令,以後查看lastcomm -f acct1。而監看用可 watch ttyp0 #
sshd_enable="YES" # 啟動 sshd 登入。修改 /etc/syslog.conf (security.*;auth.info /var/log/security)可作登入記錄。 #
#############################
# Upgrade FreeBSD #
#############################
# freebsd-update fetch
# freebsd-update install
# reboot
#############################
# 加新管理使用者去wheel組 #
#############################
# adduser
#############################
# 更新 Port Tree #
#############################
#修改鏡像站點:#
#ee /etc/portsnap.conf
SERVERNAME=portsnap.tw.FreeBSD.org
#初次運行 Portsnap:#
# portsnap fetch
# portsnap extract
#住後更新只要打:#
# portsnap fetch update
###############################
# 安裝基本程式 #
# #
# 程式會記錄在 /var/db/pkg #
# 找軟體先去 cd /usr/ports #
# make search key='關鍵字' #
# make deinstall:移除該程式 #
# make fetch:抓回所需的原始檔。 #
# make fetch-list:顯示安裝所需的檔案。 #
# make checksum:抓回原始檔並以 MD5 檢查其正確性。 #
# make extract:抓回並解開原始檔。 #
# make configure:進行組態,但不繼續編譯。 #
# make all install:抓回原始檔、編譯且安裝。 #
# make reinstall:若先前發生意外中斷,以此命令繼續嘗試安裝。#
# make package:將做好的 ports 打包製作成 packages。 #
#make rmconfig:移除組態,但不繼續編譯。 #
##################################
# 更新程式用 #
##############
# cd /usr/ports/ports-mgmt/portupgrade
# make install clean
# 觀看程式互相關係用 #
######################
# cd /usr/ports/ports-mgmt/pkg_tree
# make install clean
# pkg_tree | more # 使用方法 #
# 更新 Sendmail #
#################
# cd /usr/ports/mail/sendmail/
# make install
# cd /usr/local/etc/rc.d/
# mv sendmail.sh.sample sendmail.sh
# mv sm-client.sample sm-client.sh
# 用於以後分配管理權限用#
#########################
# cd /usr/ports/security/sudo
# make install clean
#########################
# 安裝 SmbFTPD #
#########################
# cd /usr/ports/ftp/smbftpd
# make install clean
# 修改 /etc/rc.conf 加入 #
# smbftpd_enable="Yes"
# smbftpd_flags="-D"
#########################
# 安裝Apache+PHP+MySQL #
#########################
# cd /usr/ports/www/apache22
# make install clean
# cd /usr/ports/lang/php5
# make install clean
# cd /usr/ports/lang/php5-extensions
# make install clean
# cd /usr/ports/databases/mysql60-server
# make WITH_CHARSET=big5 WITH_XCHARSET=all install clean
# cd /usr/ports/databases/php5-mysql
# make install clean
#cd /usr/ports/converters/php5-mbstring
# make install clean
# cd /usr/ports/security/php5-mcrypt
# make install clean
#### Google 自動優化模組 mod_pagespeed ######
#cd /usr/ports/www/mod_pagespeed/
#make install clean
#### Apache 自動備份 log ######
# ee /etc/newsyslog.conf
/var/log/httpd-access.log 644 7 * $W0D1 J /var/run/httpd.pid
/var/log/httpd-error.log 644 7 * $W0D2 J /var/run/httpd.pid
#### 利用 mod_rewrite 模組處理一些Apache Killer 攻擊,加入在 httpd.conf 中。 ######
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteLog /var/log/modrewrite.log
RewriteCond %{REQUEST_METHOD} ^(HEAD|GET)[NC]
RewriteCond %{HTTP:Range} ([0-9]*-[0-9]*)(\s*,\s*[0-9]*-[0-9]*)+
RewriteRule .* - [F]
</IfModule>
####### 查看平均負載(loadavg) - 高於1 任務佇列等待出現 CPU 忙 - 超過 2 就會明顯感到性能下降 #####
#cat /proc/loadavg
###### 查看TCP連接數 ######
#netstat -ant | grep :80 | wc -l
###### 查看請求總數 ######
#ps -ef|grep HTTP|wc -l
##################################################################
# 其他 Apache 動態模組及 PHP 加速模組按有雖要才裝,先用 ab 作一般 Apache 測試和雖要後再設定 httpd 各選項。#
# -n requests 要做多少次連線請求,requests 為次數。 ##
# -c concurrency 同時有多少個連線,concurrency 為個數。 ##
# -t timelimit 最多等待回應的秒數。 ##
# -p postfile 要以 POST 方法連線所欲送出的參數檔案。postfile 為存放參數的檔案名稱。 ##
########################################################
# /usr/local/sbin/ab -n 1000 -c 20 http://127.0.0.1/index.php
#########################
# Gallery2 雖要到 #
#########################
# cd /usr/ports/graphics/GraphicsMagick13
# make install clean
# cd /usr/ports/archivers/zip
# make install clean
# cd /usr/ports/graphics/ImageMagick
# make install clean
# cd /usr/ports/graphics/gd
# make install clean
# cd /usr/ports/graphics/netpbm
# make install clean
# cd /usr/ports/graphics/dcraw
# make install clean
# cd /usr/ports/multimedia/ffmpeg
# make install clean
ffmpeg位置 = /usr/local/bin/ffmpeg
#############################
# Samba3程式 #
#############################
# cd /usr/ports/net/samba3
# make install clean
#############################
# portupgrade更新程式 #
#############################
#查看程式版本:#
# pkg_version -v
# pkg_version -vIL=
or
# pkg_version -vIL'<'
#更新程式:#
# portupgrade -rf "程式名.*" -m (加入參數)-r(升級所有和該程式相關的程式)、-R(連相關的程式的關連程式也升級)
#############################
# 查 ports 的安全性(看有沒有已發布的漏洞) ##
#############################
# cd /usr/ports/ports-mgmt/portaudit
# make install clean
#/usr/local/bin/portaudit -F -a
留言列表