本篇博客 感谢老男孩老师教学
服务器规划表:
服务器说明 |
数量 |
名称规划 |
负载均衡服务器 |
两台 |
对访问网站的流量进行分流,减少流量对某来服务器的压力 |
web服务器 |
两台 |
处理用户页面访问请求(Nginx,Apache |
NFS存储(兼职批量管理) |
一台 |
存储图片 附件 头像 等静态数据,兼职批量分发和管理 |
备份服务器 (rsync) |
一台 |
对全网服务器数据,进行实时与定时备份 |
数据库服务器(mysql) |
一台 |
对动态变化数据进行存储 |
管理服务器 |
一台 |
(1)作为yum仓库服务器,提供全网服务器的软件下载(2)跳板机、操作审计(3)vpn(pptp) (4)监控(nagios,zabbix) |
说明:总计需要服务器8台,完成本次项目 |
主机ip规划表:
服务器说明 |
外网IP(NAT) |
内网IP(NAT) |
主机名称规划 |
A1-nginx 负载均衡器01 |
10.0.0.5/24 |
172.16.1.5/24 |
lb01 |
A2-nginx 负载均衡器02 |
10.0.0.6/24 |
172.16.1.6/24 |
lb02 |
B1-apache web服务器 |
10.0.0.7/24 |
172.16.1.7/24 |
web02 |
B2-nginx web服务器 |
10.0.0.8/24 |
172.16.1.8/24 |
web01 |
C3-mysql 数据库服务器 |
10.0.0.51/24 |
172.16.1.51/24 |
db01 |
C1-NFS存储服务器 |
10.0.0.31/24 |
172.16.1.31/24 |
nfs01 |
C2-rsync存储服务器 |
10.0.0.41/24 |
172.16.1.41/24 |
backup |
X-管理服务器 |
10.0.0.61/24 |
172.16.1.61/24 |
m01 |
外网ip采NAT模式 10.0 的网段
内网ip也采NAT模式 172.16的网段
负载均衡器的 VIP 10.0.0.3/24
带外网ip的服务器的内网ip 不配网关跟DNS
外部ip 该配啥配啥
要将主机名跟内网ip 写入/etc/hosts
cat >>/etc/hosts<<EOF
172.16.1.5 lb01
172.16.1.6 lb02
172.16.1.7 web02
172.16.1.8 web01
172.16.1.51 db01
172.16.1.31 nfs01
172.16.1.41 backup
172.16.1.61 m01
EOF
改主机名:
[root@sh150 ~]# vim /etc/hosts (vim后面有个空格)按“i”编辑:
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain sh150 (需要修改的主机名)
::1 localhost6.localdomain6 localhost6
按“esc”退出编辑,按“:wq!”保存并退出。
[root@sh150 ~]# vim /etc/sysconfig/network (vim后面有个空格)
按“i”编辑:
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=sh150 (需要修改的主机名)
GATEWAY=192.168.10.254
按“esc”退出编辑,按“:wq!”保存并退出。
[root@sh150 ~]# reboot
(重启生效。大功告成
注意1:
在设置模板机的时候,因为之后会再clone,所以要把网卡的HWADDR跟UUID清空。
之后要再输入一条指令比较好:
>/etc/udev/rules.d/70-persistent-net.rules
把里面清空
然后再把这条指令放进去/etc/rc.local 他会自己删除了。
echo ">/etc/udev/rules.d/70-persistent-net.rules"
注意2:
关闭SELINUX (命令行getenforce 可以查看SELINUX状态)
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config --->永久有效。 setenforce 0 --->暂时有效(重开机后失效)
关闭iptables
/etc/init.d/iptables stop /etc/init.d/iptables stop (最好执行两次) chkconfig iptables off
精简开机自启动服务
chkconfig --list | grep 3:on chkconfig|egrep -v "crond|sshd|network|rsyslog|sysstat"|awk '{print "chkconfig",$1,"off"}'|bashexport LANG=enchkconfig --list | grep 3:on
精简过程:
[root@backup ~]# chkconfig --list | grep 3:on chkconfig|egrep -v "crond|sshd|network|rsyslog|sysstat"|awk '{print "chkconfig",$1,"off"}'|bashexport LANG=enchkconfig --list | grep 3:on abrt-ccpp 0:off 1:off 2:off 3:on 4:off 5:on 6:offabrtd 0:off 1:off 2:off 3:on 4:off 5:on 6:offacpid 0:off 1:off 2:on 3:on 4:on 5:on 6:offatd 0:off 1:off 2:off 3:on 4:on 5:on 6:offauditd 0:off 1:off 2:on 3:on 4:on 5:on 6:offblk-availability 0:off 1:on 2:on 3:on 4:on 5:on 6:offcpuspeed 0:off 1:on 2:on 3:on 4:on 5:on 6:offcrond 0:off 1:off 2:on 3:on 4:on 5:on 6:offhaldaemon 0:off 1:off 2:off 3:on 4:on 5:on 6:offip6tables 0:off 1:off 2:on 3:on 4:on 5:on 6:offiptables 0:off 1:off 2:on 3:on 4:on 5:on 6:offirqbalance 0:off 1:off 2:off 3:on 4:on 5:on 6:offkdump 0:off 1:off 2:off 3:on 4:on 5:on 6:offlvm2-monitor 0:off 1:on 2:on 3:on 4:on 5:on 6:offmdmonitor 0:off 1:off 2:on 3:on 4:on 5:on 6:offmessagebus 0:off 1:off 2:on 3:on 4:on 5:on 6:offnetfs 0:off 1:off 2:off 3:on 4:on 5:on 6:offnetwork 0:off 1:off 2:on 3:on 4:on 5:on 6:offpostfix 0:off 1:off 2:on 3:on 4:on 5:on 6:offrdma 0:off 1:on 2:on 3:on 4:on 5:on 6:offrsyslog 0:off 1:off 2:on 3:on 4:on 5:on 6:offsshd 0:off 1:off 2:on 3:on 4:on 5:on 6:offsysstat 0:off 1:on 2:on 3:on 4:on 5:on 6:offudev-post 0:off 1:on 2:on 3:on 4:on 5:on 6:off[root@backup ~]# chkconfig|egrep -v "crond|sshd|network|rsyslog|sysstat"|awk '{print "chkconfig",$1,"off"}'|bash[root@backup ~]# export LANG=en[root@backup ~]# chkconfig --list | grep 3:on crond 0:off 1:off 2:on 3:on 4:on 5:on 6:offnetwork 0:off 1:off 2:on 3:on 4:on 5:on 6:offrsyslog 0:off 1:off 2:on 3:on 4:on 5:on 6:offsshd 0:off 1:off 2:on 3:on 4:on 5:on 6:offsysstat 0:off 1:on 2:on 3:on 4:on 5:on 6:off
sudo 提权:
useradd oldboy\cp /etc/sudoers /etc/sudoers.oriecho "oldboy ALL=(ALL) NOPASSWD: ALL" >>/etc/sudoerstail -1 /etc/sudoersvisudo -c
中文字符集
cp /etc/sysconfig/il8n /etc/sysconfig/il8n.oriecho 'LANG="zh_CN.UTF-8"' >/etc/sysconfig/il8nsource /etc/sysconfig/il8necho $LANG
时间同步
echo '#time sync by oldboy at 2017-10-07' >>/var/spool/cron/rootecho '*/5 * * * * /usr/sbin/ntpdate time.nist.gov >/dev/null 2>&1' >>/var/spool/cron/rootcrontab -l date
命令行安全
echo 'export TMOUT=300' >>/etc/profileecho 'export HISTSIZE=5' >>/etc/profileecho 'export HISTFILESIZE=5' >>/etc/profile. /etc/profile
加大文件描述符
echo '* - nofile 65535 ' >>/etc/security/limits.conftail -1 /etc/security/limits.conf
内核优化:
这块后面整理Linux基础优化与安全重点小结 1)不用root登录管理系统,而以普通用户身份登录,通过sudo授权管理。
2)更改默认的远程连接SSH服务器端口,禁止root用户远程连接,甚至更改SSH服务只监听内网IP。
3)定时自动更新服务器的时间,使其与互联网时间同步。
4)配置yum更新源,从国内更新源下载安装软件包。
5)关闭SELinux及iptables(在工作场景中,如果有外部IP一般要打开iptables,高并发、高流量的服务器可能无法开启)。
6)调整文件描述符的数量,进程及文件的打开都会消耗文件描述符数量。
7)定时自动清理邮件临时目录垃圾文件,防止磁盘的inodes数被小文件占满(注意CentOS 6和CentOS 5要清除的目录不同)。
8)精简并保留必要的开机自启动服务(如crond、sshd、network、rsyslog、sysstat)。
9)Linux内核参数优化/etc/sysctl.conf,执行sysctl -p生效。
10)更改系统字符集为“zh_CN.UTF-8”,使其支持中文,防止出现乱码问题。 11)锁定关键系统文件,如/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow、 /etc/inittab,处理以上内容后把chattr、lsattr改名为oldboy并转移,这样就安全多了。
12)清空/etc/issue、/etc/issue.net,去除系统及内核版本登录前的屏幕显示。
13)清除多余的系统虚拟用户账号。
14)为grub引导菜单加密码。
15) 安装基础软件包
yum install lrzsz nmap tree dos2unix nc -y
本文出自 “我的Linux之��” 博客,请务必保留此出处http://12098022.blog.51cto.com/12088022/1974408