out-server
操作系统版本:FreeBSD 7.2
1 硬件
配置1块网卡,映射到/dev/vmnet9。
2 初始安装
使用CDROM方式安装,采用standard标准模式。
安装软件包类型:Developer。
不安装ports,后面单独安装新的版本。
配置网络。IP地址:172.18.0.70/24
启用ssh,其余网络服务都不开启。
建立普通用户。
3 安装补丁
使用freebsd-update进行二进制方式的更新:
# freebsd-update fetch # freebsd-update install
4 安装ports
初次安装:
# portsnap fetch # portsnap extract
ports会不断更新,在后面的使用过程中,需要不定期的进行更新。
更新方法:
# portsnap fetch # portsnap update
参考:FreeBSD使用手册-使用Ports Collection
5 安装ports管理工具
编辑/etc/make.conf,使用本地镜像下载源代码包:
MASTER_SITE_OVERRIDE?=ftp://172.18.0.199/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR}/
这些工具用来处理第三方软件包的升级和修补:
# cd /usr/ports/ports-mgmt/portmanager # make install # cd /usr/ports/ports-mgmt/portaudit # make install
首次运行portaudit,需要下载当前的审计库:
# portaudit -Fda
平时需要不定期的运行portaudit,以发现可能存在的漏洞:
# portaudit -a
检查当前安装的软件包的版本情况:
$ pkg_version -v
对审计需要修补的软件包,要马上升级。以portmanager升级ruby18为例:
# portmanager lang/ruby18 -ui -l
升级所有软件包:
# portmanager -u
强制编译所有依赖包(无论是否有新版本):
# portmanager x11/gnome2 -l -f
参考:FreeBSD使用手册-使用Ports Collection
6 配置ftp服务器
这里配置一个匿名的ftp server。
首先需要配置用户和相关目录,可以通过sysinstall工具(configure --> networking --> anon ftp)来完成,也可手工进行。下面仅列出手工方法。
添加ftp用户:
# adduser
用户名:ftp;组:ftp;shell:nologin;主目录:/var/ftp。
建立目录,调整权限:
# cd /var # chown root ftp # chmod 555 ftp # cd ftp # mkdir pub # chmod 555 pub
编辑/etc/rc.conf(可参考/etc/defaults/rc.conf),增加:
ftpd_enable="YES" ftpd_flags="-DllUSA"
7 配置http服务器
安装apache13(捆绑mod_ssl):
# cd /usr/ports/www/apache13-modssl # make config-recursive # make fetch-recursive # make install
编辑/etc/rc.conf,增加:
apache_enable="YES" apache_flags=""
参考:FreeBSD使用手册-Apache HTTP 服务器
8 配置PF防火墙
FreeBSD下有多种防火墙软件,这里使用从OpenBSD移植过来的Packet Filter(PF)。
不同版本的FreeBSD使用了不同版本的PF,FreeBSD 7.2对应的是OpenBSD 4.1的PF。
建立/etc/pf.conf,这里使用与openbsd版的out-server完全相同的配置。
编辑/etc/rc.conf,增加:
pf_enable="YES" pflog_enable="YES"
参考:FreeBSD使用手册-OpenBSD Packet Filter (PF) 和 ALTQ