无线LINUX系统安装配置规范

作者:zkjian517

V1.0 2006-xx-14
安装
准备工作:获取下列信息:交换分区的大小;IP地址,掩码,网关;boot loader 口令,root 口令;
1. 分区: /boot: 100M
             Swap: 假设RAM 为 m G,  IF m =1 THEN swap = 2G ELSE swap = mG END
             /:     2G
             /usr:   6G
             /var:   2G
                         /home        2G
             /tmp   2G
             /opt:   所有剩余空间
2. 设置 boot loader password: 参考《XX LINUX主机安全规范》
3. 配置静态IP, Gateway, DNS Server, hostname
4. 防火墙:No Firewall; Enable SELinux? Active
5. 语言:English(USA), Chinese(P.R. of China)
6. 时区:Asia/Shanghai       
7. root 口令:参考《XX LINUX主机安全规范》;
8. 软件包: X Window System, GNOME Desktop Environment;
Editors;
Text Internet;
Development Tools, X Software Development, Legacy Software Development
Administration Tools, System Tools(net-snmp-utils, sysstat)
二. 配置
1. 初始配置:RedHat Login:选择Tell my why…
                Why Register?:选择 …. Remind me later.
                System User:不建立任何系统用户.
     2.配置内核启动参数:位置:/boot/group/grub.conf 的 kernel 行
DB服务器:elevator=deadline
                      WEB 服务器:elevator=as
                      服务器有很好的RAID卡:elevator=noop
其它情况:使用RHEL4的默认配置(elevator=cfq)
    3. 建立并进入/opt/software目录,从sftp ht-root@software.xx.com:/software 下载host.tar.gz包, 解压, 进入host目录
4.配置默认运行级别:3
5.配置时间同步:a. 每天5:10 AM跟时间服务器172.16.0.60作一次同步
                 b. 该配置在“配置cron”部分完成
6.配置/etc/hosts 文件:   a. 配置:#install config/hosts  /etc/hosts
                         b. 验证:#cat /etc/hosts
127.0.0.1                 localhost.localdomain                 localhost
                                      <loghost IP>    loghost.xx.com        loghost
                                      <software IP>   software.xx.com       software
                                      <backcenter IP>  backcenter.xx.com     backcenter
7.配置内核参数:a. 配置:#install config/sysctl.conf  /etc/sysctl.conf; sysctl -p
                 b. 验证:#sysctl –p
                         net.ipv4.ip_forward = 0
                     net.ipv4.tcp_syncookies = 1
net.ipv4.conf.all.rp_filter = 1
                     net.ipv4.conf.all.accept_source_route = 0
                         net.ipv4.conf.all.accept_redirects = 0
                         net.ipv4.tcp_keepalive_time = 1800
                         net.ipv4.tcp_timestamps = 0
                     net.ipv4.tcp_fin_timeout = 30
                         net.ipv4.tcp_window_scaling = 1
                         net.ipv4.tcp_sack = 0
                         net.ipv4.tcp_max_syn_backlog = 1280
                     net.ipv4.tcp_synack_retries = 2
                         net.ipv4.tcp_syn_retries = 3
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.icmp_ignore_bogus_error_responses = 1
net.ipv4.ip_local_port_range = 32768 61000
                     kernel.sysrq = 0
                         kernel.core_uses_pid = 1
                         kernel.ctrl-alt-del = 1
8. 配置系统日志:a.. 系统日志集中存放到主机loghost上; 本地保存4周的日志备份
                b. 配置:运行脚本script/config_log.sh
                c. 验证: #cat /etc/syslog.conf
                          *.=emerg                                                          *
                          *.=emerg                                                          /var/log/emergent.log
                          *.=crit;kern.none                                                  /var/log/critical.log
                          kern.*                                                                  /var/log/kernel.log
                          authpriv.*                            /var/log/secure.log
                          mail.*                                                                  /var/log/mail.log
                          cron.*                                                                  /var/log/cron.log
                          local7.*                                                          /var/log/boot.log
                          *.info;mail.none;authpriv.none;cron.none   /var/log/messages
                          *.info                                                                  @loghost
                          #cat /etc/logrotate.d/syslog
                          /var/log/emergent.log /var/log/critical.log /var/log/kernel.log \
                           /var/log/secure.log /var/log/mail.log /var/log/cron.log \
                            /var/log/boot.log /var/log/messages {
                             sharedscripts
                             postrotate
                               /bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
                             endscript
}
9. 脚本:1). 目录结构:/opt/script/prod: 存放经过严格测试的(在使用中的)脚本
                      /opt/script/test:  编写,测试脚本的地方
                      /opt/script/temp: 存放脚本的临时文件的地方
                      /opt/script/data:  存放脚本的永久性数据的地方
        2). 基准脚本:backup.sh           备份脚本
                     monitor_ cpu_mem.sh 监控单个系统进程对CPU和内存使用情况的脚本
                     app_log_dealwith.sh   处理应用程序日志的脚本
        3). 运行脚本 script/config_script.sh
10. 应用程序:1). 原则:a. 所有应用程序都装到/opt目录下
                       b. 在/opt下建立目录software,存放需要安装的软件,并在此目录下安装软件
             2). JAVA:  a. JAVA_HOME= /opt/java/jdk/jdk
                       b. 建立符合连接/opt/java/jdk/jdk,指向/opt/java/jdk/jdk-<version>
                       c. 运行脚本: script/install_jdk.sh 完成本步骤的安装
3). MySQL: a. MYSQL_HOME= /opt/mysql
          b. 数据文件目录:/opt/mysql/data
          c. 日志文件目录:/opt/mysql/log
          d. 配置文件:将定制的配置文件config/my.conf 拷贝到/etc/下
          e. 用户:mysql
          f. 编译选项: --prefix=/opt/mysql
--sysconfdir=/etc
--localstatedir=/opt/mysql/data
--with-mysqld-user=mysql
--enable-largefile  
                       --with-extra-charsets=gbk
          g. 启动选项:skip-innodb=1
log-bin=/opt/mysql/log/mysql-bin
log-bin-index=/opt/mysql/log/mysql-bin.index
log=/opt/mysql/log/access.log
log-error=/opt/mysql/log/error.log
pid-file=/opt/mysql/log/mysql.pid
          h. 自动启动脚本:使用MySQL自带的脚本mysql.server,将其拷贝
为/etc/init.d/mysql
          i. 运行脚本 script/install_mysql.sh完成MySQL的安装配置
4). Apache::a. APACHE_HOME=/opt/apache2
           b. 数据, 日志和配置文件目录:默认位置
c. 模块:authn-basic authn-default authn-file authz-default authz-host
  authz-groupfile authz-user access dir env http log-config mime
setenvif status cache disk-cache expires file-cache
headers logio mem-cache mime-magic rewrite so
worker
(httpd –l 可以验证安装了那些模块)
           d. MPM模式:worker
           e. 配置文件:将定制的配置文件config/httpd.conf拷贝到/opt/apache2/conf/ 下, 如果需要作修改,在该文件的相应位置修改。
           f. 自动启动脚本:将定制的脚本script/apache.sh 拷贝为/etc/init.d/apache
           g. 运行脚本 script/install_apache.sh完成Apache的安装配置
5). resin:   a. RESIN_HOME= /opt/resin
          b. 数据, 日志和配置文件目录:默认位置
          c. 编译选项:--enable-jni --enable-linux-smp –with-apxs=/opt/apache2/bin/apxs
          e. 启动选项:
          f. 配置文件:将定制的配置文件config/resin.conf 拷贝到/opt/resin/conf/下, 如果需要作修改,在该文件的相应位置修改。
          g. 自动启动脚本:将定制脚本script/resin.sh 拷贝为/etc/init.d/resin
h. 运行脚本 script/install_resin.sh完成Resin的安装配置
6). JAVA 应用程序:a. 安装点:/opt/java_app
                  b. 将每个应用程序放到/opt/java_app目录下的以该应用程序名称命名的目录下
7). 配置环境变量:a. 将JAVA_HOME, MYSQL_HOME, RESIN_HOME, APACHE_HOME 加入/etc/profile
                 b. 将$JAVA_HOME/bin, $MYSQL_HOME/bin, $RESIN_HOME/bin,
                    $APACHE_HOME/bin 加入/etc/profile
                 c. 运行定制的脚本script/config_env.sh完成配置
8. 备份:a. 工具:rsync
        b. 方法:incremental
        c. 备份源:/opt目录下除backup目录和不需要备份的java 应用程序日志目录外的所有目录
        d. 目的地:backcenter.xx.com上的目录 /backup/<本机的外部IP>; 本地的/opt/backup/下
        e. 时间:每天的凌晨5点10分(需要根据备份中心的设定作相应调整)
        f. 运行脚本script/config_backup.sh完成备份配置;
9. 配置cron:a. 内容:备份; 时间同步; 进程, DISK, CPU, MEM监控; 应用程序日志处理
             b. 运行脚本 script/config_cron.sh 完成cron 配置
10. 配置安全:1). 关闭除以下服务外的所有服务: syslog, network, sshd, crond, mysql, resin, apache
              2). 修改sshd默认的端口(65522)
              3). 防火墙:使用定制的脚本script/my_iptables.sh, 将其拷贝为/etc/init.d/my_iptables,
                         拷贝config/my_iptables.conf 拷贝到/etc/rc.d/下,并根据应用的需要作相应
                         修改,然后执行chkconfig my_iptables on
              4). 运行脚本script/config_security.sh 完成安全配置;

建议:用kickstart 方式安装。