第一章 linux基本网络配置
ifconfig 查看网卡
ifconfig -a 查看所有网卡
#ifconfig eth0 查看单独网卡
# eth0 第一快以太网网卡 lo 本地回环
ifconfig eth0 192.168.0.1 netmask 255.255.255.0
ifconfig eth0 192.168.0.1/24
ifconfig eth0 down 开启网卡
ifconfig eth0 up 禁用网卡
ifconfig eth0:0 192.168.0.1 在网卡上添加虚拟网卡
ifocnfig eth0 hw ether --:--:--:--:--:--修改MAC地址
#以上重启后失效
#以下永久有效 修改配置文件/etc/sysconfig/network-scripts/ifcfg-eth0(为网卡名称)
DEVICE=eth0 网络接口名称
ONBOOT=yes/on 是否在linux系统启动时激活
BOOTPROTO=static/dhcp 网络接口配置方式静态/动态
IPADDR=192.168.0.1 IP地址
NETMASK=255.255.255.0 子网掩码
GATEWAY=192.168.0.254 默认网关

ping命令
#ping -c 2 -s 1000 127.0.0.1
-c 发送几次
-s 发送大小

route 查看路由表信息
route -n 以数字方式显示
tracerout 跟踪路由

hostname 查看当前主机名称
hostname yangjun 更改当前主机名
主机名称配置文件/etc/sysconfig/network
修改HOSTNAME=yangjun
主机名称解析文件/etc/hosts (优先于DNS)


nslookup 域名解析
nslookup www.baidu.com
nslookup 192.168.0.1
#canonical name =为本名 前为别名

netstat 查看当前系统网络连接状态
netstat -a 查看所有网络连接信息
netstat -n 以数字方式显示相关主机地址 端口
netstat -l 处于监听状态的网络连接及端口信息
netstat -t/u 查看TCP/UDP相关协议信息
netstat -p 显示以网络相关联的进程号

ARP地址解析记录
arp -n 以数字方式显示
arp -s 邦定MAC
arp -d 删除

route add -net 192.168.1.0/24 gw 192.168.1.254
添加路由记录 指定目标网络和网关
route del/add default gw 192.168.4.254
删除/添加 默认路由

域名服务器配置文件
/etc/resolv.conf

安装DHCP服务器软件
rpm -q dhcp
挂载光盘
rpm -ivh /media/cdrom/server/dhcp*.rpm

主配置文件
cat /etc/dhcpd.conf
拷贝下文件内指定路径模板 到dhcpd.conf 中
cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcpd.conf

subnet 192.168.0.0 netmask 255.255.255.0
default-lease-time 21600;
max-lease-time 43200;
option routers 192.168.0.1 网关
option subnet-mask 255.255.255.0 默认子网掩码
range 192.168.0.100 192.168.0.200 用来分配的IP
分配固定IP
host server{
     hardware ethernet 00:00:00:00:00:00;
     fixed-address 192.168.4.99;      }
       
配置好后 检查网卡 开启服务service dhcpd restart
cat /etc/sysconfig/dhcpd
指定分配的网卡

服务器租约文件 /var/lib/dhcpd/dhcpd.leases

           第二章 构建文件服务器
ls /media/cdrom/server/*samba* 查找软件包
rpm -ivh 安装软件包(p42页)

/etc/samba/smb.conf
[global]                 全局
security = user/share 访问方式 p43
hosts allow = 192.168.168. 172.16.0. 允许访问
hosts deny = 192.168.168. 172.16.0. 拒绝访问

[homes]              用户家目录共享设置
browseable = no 是否可见
writable = yes 是否可写

[printers] 打印机共享设置
[use]
       comment = dianying 注释
       path = /use          路径
       browseable = yes    是否可见
       guest ok = no         是否匿名
       writable = yes          是否可写
       valid users = yangjun, @root 授权可访问的用户和组
       write list = yangjun 授权可写的用户
      directory mask = 0744   文件夹默认权限
      create mask = 0600    文件默认权限
**注意权限chmod 777 /use
**检查工具 testparm

samba 用户数据库
事先要添加linux系统用户
smbpasswd -a 添加
smbpasswd -x 删除
smbpasswd -d 禁用
smbpasswd -e 启用

出于安全 设置别名
vi /etc/samba/smbusers 设置别名
yangjun=aaa
vi /etc/samva/smb.conf 在全局增加一行
username map = /etc/samba/smbusers

用linux 访问共享
smbclient -U yangjun //192.168.0.1/use

vsftpd 服务
默认配置文件 /etc/vsftpd/vsftpd.conf
黑名单文件 /etc/vsftpd/ftpusers
黑白名单文件 /etc/vsftpd/user_list
详细参数P55
               第三章 构建域名服务器
安装服务
bind-9.3.3-7.el5.i386.rpm   主配置文件
bind-utils-9.3.3-7.el5.i386.rpm   默认都有
bind-chroot-9.3.-7.el5.i386.rpm   禁锢
caching-nameserver-9.3.3-7.e5.i386.rpm 模板

修改主配置文件名为named.conf
 /var/named/chroot/etc/下
cp -p named.chroot.conf named.conf
下为缓存服务器
options {
        listen-on port 53 { 192.168.0.1; };
        directory "/var/named";
};
zone "." IN {
            type hint;
(根类型)
            file "named.ca";(根域地址数据库文件)
};


根服务器位置/var/named/chroot/var/named/named.ca
named-checkconf /var/named/chroot/etc/named.conf 检查主配置文件是否有语法错误

主DNS服务器 named.conf
zone "benet.com" IN {
       type master;   根服务器             
       file "benet.com.zone";                   
       allow-transfer { 192.168.0.2; }; 
允许从服务器同步
};
zone "1.168.192.in-addr.arpa" IN {      反向rtp指针
         type master;          
         file "192.168.1.arpa";        
区域文件
         allow-transfer { 192.168.0.2; };  
};

/var/named/chroot/var/named/
在该路径下创建相应zone文件
用cp -p 拷贝该路径下模板 重命名为benet.com.zone 打开 添加相应记录
@               IN NS      dns.benet.com.
benet.com.      IN A            192.168.0.1
baidu.benet.com. IN A    192.168.0.5   


从DNS服务器
zone "benet.com" IN {
       type slave;     类型
       masters { 192.168.0.5; }; 指定主DNS服务器IP
       file "slave/benet.com.zone"; 同步后地址保存到slave下
};

分离DNS服务器
named.conf 文件配置
options {
        directory       "/var/named";
};
view "lan"{
      match-clients { 192.168.0.0/24; } ;
      zone "benet.com" IN {
              type master;
              file "benet.com.zone.lan";
};
};
view "wan"{
       match-clients { 192.168.1.0/24;};
       zone "benet.com" IN {
        type master;
         file "benet.com.zone.wan";
     };
};
benet.com.zone.lan
配置
@         IN NS dns1.benet.com.
dns1.benet.com. IN A 192.168.0.1
benet.com. IN A 11.11.11.11
benet.com.zone.wan
配置
@   IN NS dns1.benet.com.
dns1.benet.com. IN A 192.168.0.1
benet.com. IN A 22.22.22.22

              
第四章 构建LAMP 网站服务平台
普通安装
挂载光盘 ls *httpd* rpm -ivh httpd-2.2.3-6.el5.i386.rpm
启动Httpd 服务即可
/etc/httpd 服务程序根目录
/etc/httpd/conf/httpd.conf 服务器主配置文件
/etc/www/html 网站根目录
/etc/inint.d/httpd 控制脚本文件
/usr/sbin/httpd 主要执行程序
/var/log/httpd/access_log 访问日志文件
/var/log/httpd/error_log 错误日志文件 

编译源代码包
挂载光盘 找到 httpd源代码包
tar -zxf httpd-2.2.9.tar.gz -C /usr/src/
cd /usr/src/http.../       ./configure   编译
make && make install 安装
ls /usr/local/apache2 中为根目录
   /usr/local/apache2/bin/apachectl start 开启服务
   /usr/local/apache2/htdocs 网页文件
挂载现成网页文件
cp -r * /usr/local/apache2/htdocs/
删除原有PHP(动态)文件


httpd.conf 主配置文件中
ServerRoot "/usr/local/apache2" 网站服务器根目录
Listen 80     监听端口号
User daemon 用于运行httpd进程时的用户身份
Group daemon   组身份
ServerAdmin [email protected] 管理员邮箱地址
ServerName www.example.com FQDN名
DocumentRoot "/usr/local/apache2/htdocs" 网页文档实际目录
 DirectoryIndex index.html   网站首页

测试服务器性能
修改并发连接数默认1024
ulimit -n 10000
/usr/local/apache2/bin/ab -q -c 2000 -n 4000 http://ip/
               ab工具     -c 为并发请求数 -n总的请求数

构建基于域名的虚拟主机
打开 httpd.conf 取消下列注释
Include conf/extra/httpd-vhosts.conf 引用
打开/usr/local/apache2/conf/extra/httpd-vhosts.conf
NameVirtualhost 192.168.0.1

    DocumentRoot "/usr/local/apache2/htdocs/benet"
    Servername www.benet.com


    DocumentRoot "/usr/local/apache2/htdocs/accp"
    ServerName www.accp.com

创建 benet 和accp 相应的html 网页文件
echo www.benet.com > benet/index.html
echo www.accp.com > accp/index.html

构建基于IP虚拟主机

   DocumentRoot "/usr/local/apache2/htdocs/benet"
    Servername www.benet.com

 DocumentRoot "/usr/local/apache2/htdocs/accp"
    Servername www.accp.com
基于端口的虚拟主机
前提在主配置文件中指定相应端口listen 192.168.0.1:80
                           listen 192.168.0.1:8080
其次在虚拟主机模板文件中修改
                              ........
                        
                              .........

使用awstats分析web日志
工具在LAMP包里
tar -zxf awsxxxx -C /usr/local
mv /usr/local/awsxxx6.9 /usr/local/awstats
./tools/awstats_configure.pl --> Y Y >www.benet.com> > >
vi /etc/awstats/awstats.www.benet.com.conf
LogFile="/usr/local/apache2/logs/access_log"
>/usr/local/apache2/logs/access_log 清空默认日志

httpd访问控制
基本访问控制(用户)
编辑主配置文件httpd.conf

 authname "awstats" 登录显示
 authtype "basic"   认证类型
 authuserfile /usr/local/awstats/wwwroot/.htpasswd 保存帐号密码路径
 require valid-user 授权给上路径文件中所有帐户

创建帐号和口令文件
cd /usr/local/apache2/bin/
./htpasswd -c /usr/local/awstats/wwwroot/.htpasswd yangjun 上为 使用这个命令 创建.htpasswd 文件 创建帐号yangjun 如果向以存在的认证文件添加帐号则去掉-c 选项           
重启服务

基于地址访问控制
修改httpd.conf 文件
 Order allow,deny 
    Allow from all all为所有
    deny from IP或者域名

                  第五章 构建LAMP网站服务平台(2)
创建运行MYSQL数据库系统用户
useradd -M s /sbin/nologin mysql
解压释放源码包
tar -zxvf mysql-5.0xxxxx -C /usr/src/
配置
cd /usr/src/mysql-5.0xxx
./configure --prefix=/usr/local/mysql --with-mysqld-user=mysql
make && make install
拷贝(配置文件)模板
cp /usr/src/mysql-5.0xxx/support-files/my-medium.cnf /etc/my.cnf
初始化数据库
/usr/local/mysql/bin/mysql_install_db --user=mysql
chown -R root.mysql /usr/local/mysql/
chown -R mysql /usr/local/mysql/var
调整lib库路径
echo "/usr/local/mysql/lib/mysql">>/etc/ld.so.conf
ldconfig 刷新文件搜索路径
/usr/local/mysql/bin/mysqld_safe --user=mysql & 使用脚本安全启动服务
cd /usr/src/mysql5.0xxxx/
cp support-files/mysql.server /etc/init.d/mysqld 添加为系统服务
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
export PATH=$PATH:/usr/local/mysql/bin/ 设置MYSQL程序的执行路径
echo "PATH=$PATH:/usr/local/mysql/bin">>/etc/profile
设置用户密码 登录服务器
mysqladmin -u root password "8266578"
mysql -u root -p
show databases; 使用语句查询数据库
use mtsql; 进入库
show tables; 查看该数据库中的表

构建PHP环境
安装
tar -jxvf php-5.0xxx -C /usr/src
cd /usr/src/php-5.2.6/
预先设置编译时的参数
./configure --prefix=/usr/local/php5 --enable-mbstring --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/php5 详细参数查看P157
编译并安装
make && make install
复制配置文件
cp php.ini-dist /usr/local/php5/php.ini
设置httpd.conf文件
vi /usr/local/apache2/conf/httpd.conf
添加   并在DirectoryIndex 列中添加 index.php
Loadmodule php5_module modules/libphp5.so
addtype application/x-httpd-php .php
测试PHP文件
vi /usr/local/apache2/htdocs/test.php
添加     phpinfo();
    ?>
重启httpd服务 访问http://ip/test.php 访问到页面测试成功

部署Discuz!论坛
建立bbs论坛数据库 和用户
mysql -u root -p
create database bbsdb;
grant all on bbsdb.* to runbbs@localhost identified by '8266578';
unzip UCenter_1.0.0_SC_UTF8.zip -d /usr/local/apache2/htdocs/
mv /usr/local/apache2/htdocs/upload /usr/local/apache2/htdocs/ucenter
unzip Discuz_6.1.0_SC_UTF8.zip -d /usr/local/apache2/htdocs/
mv /usr/local/apache2/htdocs/upload /usr/local/apache2/htdocs/bbs
cd /usr/local/apache2/htdocs/ucenter
chown -R daemon data (要给data目录2777权限和该目录下所有文件的权限)
cd /usr/local/apache2/htdocs/bbs/
(最新版本的需给conf  data  uc_client uc_server  这四个文件权限 )
                                     chmod 777 config/
[root@localhost bbs]# chmod 2777 -R data/
[root@localhost bbs]# chmod 2777 -R uc_client/
[root@localhost bbs]# chmod 2777 -R uc_server/
访问http://192.168.0.1/ucenter/install
    http://192.168.0.1/bbs/install/index.php 安装向导