ntpdate us.pool.ntp.org我习惯用vim,不带代码高亮的vi用着很痛苦
shell> mv /bin/vi /bin/vi.bak shell> ln -s /usr/bin/vim /bin/vi二、配置YUM
shell>mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak shell>vi /etc/yum/pluginconf.d/fastestmirror -->enable = 0 shell>wget http://mirrors.163.com/.help/CentOS5-Base-163.repo shell>vi /etc/yum.conf -->exclude=php*5.3* exclude=kernel*三、设置Selinux、SSHD、iptables与其他服务
shell>vi /etc/selinux/config -->SELINUX=disabledSSH服务,只允许使用SSH2协议,使用1024位加密,禁止root登录,禁止空密码
shell>vi /etc/ssh/sshd_config port xxxx #最好指定一个10000以上的端口 Protocol 2 #只是用SSH2 ServerKeyBits 1024 #使用1024位加密 MaxAuthTries x #指定一个密码错误的最大重试次数 UseDNS no PasswordAuthentication yes PermitRootLogin no #禁止root登录修改/etc/sysconfig/i18n解决中文乱码,关闭不必要的众多系统服务
shell>vi /etc/sysconfig/i18n LANG="en_US.UTF-8" #指定系统使用的字符集 LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN" #指定应用程序使用的字符集,这行可以不要,注销掉 SUPPORTED="zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en" #系统支持的字符集,重要 SYSFONT="latarcyrheb-sun16"使用Putty或SecureCRT等ssh客户端时,记得指定字符集为UTF8,与上面例子中的字符集对应。
#安装/更新公用库和一些常用的RPM yum -y install gcc gcc-c++ autoconf make libtool libXaw dialog expect ntp expat-devel libxml2-devel libevent libevent-devel screen #安装/更新Apache/PHP/MySQL/MemCache yum -y install httpd php php-devel mysql mysql-server mysql-devel memcached yum -y install php-pecl-memcache #安装常用PHP扩展 yum -y install php-mysql php-gd php-xml php-mcrypt php-mbstring php-pear php-snmp libdbi-dbd-mysql #Zend和eacclerator如果能找rpm包,也可以通过这种方式安装 分别为apache和mysql建立用户,创建文档目录,日志目录,设置权限等等,日志和数据目录最好在不同的挂载点上 #创建一个脚本来完成目录的创建于权限设置 htdocs="/www/htdocs" mysql="/data/mysql" PHPLOG="/var/log/php" MYSQLLOG="/var/log/mysql" if [ ! -d $mysql ]; then mkdir -p $mysql fi chown -R mysql:mysql $mysql chmod 700 $mysql if [ ! -d $htdocs ]; then mkdir -p $htdocs fi chown -R apache:apache $htdocs if [ ! -d $PHPLOG ]; then mkdir -p $PHPLOG fi chown -R apache:apache $PHPLOG if [ ! -d $MYSQLLOG ]; then mkdir -p $MYSQLLOG fi chown -R mysql:mysql $MYSQLLOG chmod 700 $MYSQLLOG chown -R apache:apache /var/lib/php/session
shell>yum install proftpd
shell>chkconfig –level 3 proftpd on
shell>vi /etc/proftpd.conf
#简单的配置文件修改
#添加下面代码进配置文件:
AuthUserFile /etc/ftpd.passwd
AuthGroupFile /etc/ftpd.group
#关闭检测 shells:
RequireValidShell off
#设置仅使用虚拟用户认证:
AuthOrder mod_auth_file.c
#禁止PAM认证:
PersistentPasswd off
AuthPAM off
#限制改变根目录:
DefaulRoot ~
#结束
shell>cd /usr/sbin/
shell>wget http://www.castaglia.org/proftpd/contrib/ftpasswd
shell>chmod +x ftpasswd
ftpasswd工具的格式如下:
添加用户:
ftpasswd -passwd -file /etc/proftpd/ftpd.passwd -uid {uid} -gid {gid} -home {home} -shell /sbin/nologin -des -name {username}
更改密码:
ftpasswd -passwd -change-password -file /etc/proftpd/ftpd.passwd -name {username}
删除用户:
ftpasswd -passwd -delete-user -file /etc/proftpd/ftpd.passwd -name {username}
更多命令执行 ftpasswd -help或查看:http://www.castaglia.org/proftpd/contrib/ftpasswd.html proftpd详细的配置文件说明在 这里,常见问题在 这里
shell> yum -y install perl-libwww-perl.noarch shell> wget http://prdownloads.sourceforge.net/awstats/awstats-7.0-1.noarch.rpm shell> rpm -ivh awstats-7.0-1.noarch.rpm shell> cd /usr/local/awstats/tools/ shell> ./awstats_configure.pl八、配置服务器监测报告
shell>vi /usr/share/logwatch/default.conf/logwatch.conf Mailto = [email protected] #接受报告的邮箱 Range = yestoday #报告的范围,默认昨天 Detail = 10 #报告内容的详细程度 Service = All #默认全部,可以单独指定 mailer="/usr/local/msmtp/bin/msmtp -t" #我机器上没有sendmail,使用的是msmtp MSMTP我没有找到YUM安装包,开始手动编译安装 wget http://downloads.sourceforge.net/msmtp/msmtp-1.4.16.tar.bz2 tar jxvf msmtp-1.4.16.tar.bz2 cd msmtp-1.4.16 ./configure –prefix=/usr/local/msmtp make && make install
配置MSMTP帐户 cd /usr/local/msmtp/etc vi etc/msmtprc
#示例 # Set default values for all following accounts. defaults logfile /var/log/msmtp.log account srvlogwatch # SMTP邮件服务器地址 host mail.rexian.net.cn # 发送的邮件Email from [email protected] auth login # 邮件服务器登录账号 user [email protected] # 邮件服务器登陆密码 password xxxxx # Set a default account account default : srvlogwatch
保存退出,然后 chmod 600 msmtprc 注:msmtprc设置属性为600后,如果web用户没有对这个文件的读取权限会导致无法在web或其他应用中使用
输入任意字符,按Ctrl+D退出,看看是否能够收到邮件
还可以通过mutt发送(指定发件人/带附件/有抄送)
echo "邮件内容" | mutt -e "my_hdr from:kuka<[email protected]>" -a /root/file.txt.zip -s "邮件主题" "用户1<[email protected]>" -c [email protected]
shell>vi /etc/sysctl net.ipv4.tcp_max_syn_backlog = 65536 net.core.netdev_max_backlog = 32768 net.core.somaxconn = 32768 net.ipv4.tcp_max_tw_buckets = 180000 net.ipv4.tcp_sack = 1 net.ipv4.tcp_window_scaling = 1 net.ipv4.tcp_rmem = 4096 87380 4194304 net.ipv4.tcp_wmem = 4096 16384 4194304 net.core.wmem_default = 8388608 net.core.rmem_default = 8388608 net.core.rmem_max = 16777216 net.core.wmem_max = 16777216 net.ipv4.tcp_timestamps = 0 net.ipv4.tcp_synack_retries = 2 net.ipv4.tcp_syn_retries = 2 net.ipv4.tcp_tw_recycle = 1 #net.ipv4.tcp_tw_len = 1 net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_mem = 94500000 915000000 927000000 net.ipv4.tcp_max_orphans = 3276800 ################################################# #net.ipv4.tcp_fin_timeout = 30 #net.ipv4.tcp_keepalive_probes = 5 #net.ipv4.tcp_keepalive_intvl = 15 #net.ipv4.tcp_keepalive_time = 1800 #net.ipv4.ip_local_port_range = 1024 65535 net.nf_conntrack_max = 655360 net.netfilter.nf_conntrack_tcp_timeout_established = 1200 net.ipv4.ip_forward = 0 net.ipv4.conf.default.rp_filter = 1 net.ipv4.conf.default.accept_source_route = 0 kernel.sysrq = 0 kernel.core_uses_pid = 1 net.ipv4.tcp_syncookies = 1 kernel.msgmnb = 65536 kernel.msgmax = 65536 kernel.shmmax = 68719476736 kernel.shmall = 4294967296 net.ipv6.conf.all.disable_ipv6 = 1 修改完成后sysctl -p立即生效
shell>vi /etc/security/limits.conf #* soft core 0 #* hard rss 10000 #@student hard nproc 20 #@faculty soft nproc 20 #@faculty hard nproc 50 #ftp hard nproc 0 #@student - maxlogins 4 * - nofile 65536增加最后一行,修改句柄数量为65536
*表示针对所有用户
hard/soft分别是指硬性限制还是软性限制
65536是指句柄数量