能让你看醉了:让“开源”承包整个IT系统----你造吗?Linux软件一直很拼的。

能让你看醉了:让“开源”承包整个IT系统php

----你造吗?Linux软件一直很拼的。ios

哥浸淫企业IT架构设计这么多年,“私人定制”的设计产品五花八门,既有过“高大上”型的大品牌会战,也有过“屌丝”型的免费开源混搭。此次就跟你们来聊聊我最近的一次铁(yi)公(mao)鸡(bu)式(ba)企业IT系统搭建项目。数据库

. 需求分析:浏览器

用户企业是师妹注册刚开的一家文化传媒公司。硬件环境是两台大公司淘汰下来的服务器和一下网络设备。对内要有员工上网,文件交流、存储、打印,邮件收发;对外要有官网、论坛、会员博客,视频文件上传/下载等;远程要有员工在企业外访问内网资源。她的心很大,时髦的IT服务她都想到了。哎。既然是“师妹”相求,又是刚起步,你懂的了。哥巴不得达到“既要马儿好又要马儿不吃草”的效果。缓存

. 概要设计:sass

哥一直身处外企,养成了尊崇标准的习惯。因此此次设计仍是沿用标准化的节奏,全部涉及到的开源软件都挑选的经过并持有GPLGNU General Public License 通用公共许可证)的。此设计的总体功能服务器划分为:安全

·         文件共享和打印服务器(Samba)服务器

·         反向代理(Web)服务器(Squid3.0+Apache+LNMP+Keepalived),网络

·         邮件服务器(Postfix+Courier-IMAP+maildrop+Extmail+Extman+Amavisd-new+SpamAssassin+Clamav+Apache+phpMyAdmin+MySQL),架构

·         上网(正向)代理服务器(Squid3.0+Clamav+IPTables),

·         BBS/blog/FTP服务器(Discuz!+X-Space+ProFTPd+MySQL),

·         远程接入服务器(PPTPD)。

. 细节说明:

虚拟机:VirtualBox 4.3 改版本支持虚拟机的克隆和SATA硬盘的热插拔等特性。

操做系统:Linux哪家强?固然是CentOS 7。其7版本已将内核更新至3.10.0CentOS高稳定性的服务器的上选。

文件共享和打印服务器:Samba解决异构平台中数据共享与传输问题,值得一提的是若是企业往后发达了(但愿师妹有朝一日变成“白富美”)升级或转换到微软架构,Samba一样能够加入到活动目录(AD)中,实现单一登陆访问(SSO)。

反向代理(Web)服务器:

方案采用的是LNMP架构,其中Nginx用做并实现负载均衡;Squid用做并实现反向代理;Apache用做并实现Web服务的发布。

除了Nginx自己,还要安装ngx_cache_purge(缓存服务)。

而除了Apache自己,还要安装PHPPHPMyAdminphp-memcacheeAcceleratorlibmcrptphp扩展)、cmakeMySQL的编译工具)、CoreSeekMySQLPHP的中午检索)、多文件类型支持模块(包括gb, libvpx, tiff, libpng, freetype, jpgsrc)。

另外,Apache的安全工具:mod_clamav(防病毒),Ddos(防止DDos***)和ModSecurity(应用防火墙)、以及验证模块(SaslAuthlib)。

而数据库则选用MySQL,由于它相对于PostgreSQL来讲更流行更多支持和完善的文档资料。

邮件服务器:

Postfix:利用SMTP协议提供邮件发送服务。

POP3/IMAP服务:Courier-IMAP:提供多种用户认证模块和方式、支持虚拟邮箱、支持共享目录而且能够限制IMAP同事登陆的数目以及同一IP地址登陆数,还能有效应对DoS***。另外Dovecot做为可选,由于其安全性比价出众,且通常Linux系统自带。

Maildrop是必要的邮件投递代理,负责将邮件转发到用户邮箱。

SmapAssassin是利用Perl对邮件内容来进行文字分析以达到过滤垃圾邮件的目的,它对邮件各类特征进行评分方式,总分高于门限值就视为垃圾邮件。

MailScanner能够对PostfixSpamAssassinClamAV进行总管并协调各模块之间的工做。可是我的以为其必须监视PostfixHold队列,此“暴力”作法实在坑爹,所以我采用Amavisd-new对邮件病毒进行扫描。

那么对邮件系统、邮箱设置等综合管理我采用由Perl语言编写的ExtMail,它具备面向大容量ISP级别应用和高性能。

WebMailSquirrelMail,不使用任何JavaScript代码,纯粹用PHP所开发,从而兼容各类浏览器。它有支持加强的MIME、地址簿、文件夹操做等功能。且通常Linux系统自带。

远程接入服务器:方案设计上采用的是构建×××网络让远程用户拨入系统内部。选择PPTPD的缘由是通常人员用的是Windows操做系统,而Windows客户端默认就支持PPTP方式的×××Windows用户不须要额外安装客户端软件而只需简单配置即可。

.运维设计

妹纸的需求在功能上已知足了。那么问题来了,若是系统运行没一段时间就遇到问题或***,学妹是否会抱怨此等“终身大事”相托,却搞得如此脆弱,“人与人之间的基本信任都没有”。哥自认为是一个负责任的网络设计师,为了系统在实际使用中的平稳运营,我前瞻性的多走一步,设计了方便运维的模块。

·         文件存储与备份:考虑到文件服务器硬件配置且为二手,同时估计IT人员是刚毕业的“小鲜肉”,哥设计上采用的是FreeNAS软件的NAS架构,备份介质则用平时的移动硬盘即可。

·         网络管理:网管软件采用的是Nagios的“分布-集中”模式对网络及应用的各类特征进行自定义监控,且有友好的Web界面和报表功能。

·         集中配置管理:我采用的是C/S结构的自动化运维工具Puppet

. 后记

设计完成,学长只能帮你到这里了。以后,我协同其单位的IT专业小伙伴联合实施,历时3个多月,系统搭建完成并上线,除了BBS/blog/FTP服务器还没有投入使用外(不是臣妾作不到,而是师妹的合伙人一位女汉子说这些锦上添花的功能等后期发展壮大了在逐步推出),一切运营正常且效果还不错。师妹夸我有“业界良心”,在其公司启动资金有限的状况下,实现了“多快好省”。我得意的笑并不由自主的哼起了本身一直唾弃却老是不禁得唱起的“你是个人小啊小苹果。。。。。。”

相关文章
相关标签/搜索