工作,学习,生活,这里将会有一些记录. 备用域名:http://meisw.wdlinux.cn 注册 | 登陆
浏览模式: 标准 | 列表2007年08月的文章

开源的主机管理系统/虚拟主机控制面板

总体评价
用户群最多的 VHCS. 而 Web-CP,DTC和SysCp也都有许多用户

功能最强大的 GNU Hosting Helper 支持机群,文档,订单

单机版本功能最强大的是ISPConfig

结构最好的 SysCP虚拟主机管理系统[全php版], 采用类似结构的有Web-Cp,DTC,VHCS
基于php/mysql的虚拟主机控制程序还有:PHPMyWebHosting      
PHPMyWebHosting是个开源的,基于php/mysql的虚拟主机控制面板程序,你可以用它建立带有邮箱,mysql支持的多域名虚拟主机,它须建立在Linux/freebsd之上,


结论:大型IDC,推荐GNU Hosting Helper,备选ISPMan
      单台主机,推荐 VHCS2,备选 Web-CP,DTC,ISPConfig,WHT, RavenCore(推荐程度依次降低,其实这几个系统都不错,看个人的喜好了)
DTC是一个即适合单机使用,也适合集群使用的主机管理系统,Apple欧洲公司就是选用这套系统在Mac OS X上使用

共性(所有主机管理系统实现的功能)
1.资源限制:磁盘限额,网络带宽(对并发数限制都做得不好)
2.建立一个a domain时, apache 和mta 会自动配置

3.用户可以增加子域名

4.用户可以设置邮件别名和转发

5.用户可以建立和管理ftp用户

6.所有的东西都会放到MySQL数据库里面,然后有些信息会从数据库 生成到 配置文件.conf

7.支持用户界面的本地化,尽管很多都没有相应的语言包

8.一个GUI的前端写数据到数据库中,一个后台守护进程从数据库读取配置信息写道配置文件,或者建立相关的目录/文件

缺点
文档不完善
控制不够详细
没有订单系统,或者不够完善和CMS系统新闻发布等一个IDC所需要的东西(有部分系统实现了这两个个功能)
有些不支持域名注册API借口
有些不支持Paypal等电子支付借口
有些不支持多服务器(部分系统实现多机管理,如ISPMan,GHH)

只有GNU Hosting Helper用Perl实现了所有功能,是目前最强大的 虚拟主机集群管理系统

 


虚拟主机控制面板介绍
ISPConfig
包很大,因为要自己编译一个Apache和PHP(18MB),安装程序编译一个带PHP5支持的Apache运行在81端口,不会影响到已经安装的Apache
特色功能:反垃圾邮件 IPTable防火墙 Shell 服务管理(重启,关闭)
5级管理体系 系统管理员--->销售代理---->客户--->站点--->站点用户(包括Shell,FTP,Mail用户,相互独立)
Shell-访问
回收站(可以删除代理,客户,站点,站点用户)
邮件扫描 (反病毒)
服务管理,防火墙管理

用两个Apache,资源消耗得比较厉害,PHP的变量,数组下标用德文,MySQL字段名也是德文
http://www.ispconfig.com/
ISPConfig安装方法 http://www.upsdn.net/html/2005-11/601.html
VHCS
用Perl和C实现核心功能,PHP实现界面,也使用cron

较慢,修改设置和开设新空间时很明显,可能因为与使用cron调度人物有关
http://www.vhcs.net/
VHCS2安装方法 http://www.upsdn.net/html/2005-11/602.html

SysCP
自定义 服务配置,完全用PHP实现(需要PHP CLI支持,一个Cron 会从数据库中查看任务队列的人物,调用exec来执行)

多语言支持的方式不好,客户管理功能较弱
http://www.syscp.de/

Web-CP
用PHP-CLI写的一个Web服务器
支持多种脚本Scripting PHP,sun asp,cf,perl...
支持shell access
支持 SSI
支持.htacess
支持多种DNS服务 bind,powerdns,mydns,tinydns  
完全使用PHP开发,支持Shell Access
要安装PHP CLI(Command-LIne ) 控制面板的后端服务器 server/webcp.php 和 httpd服务器 server/webcp-httpd.php 都需要 PHP CLI二进制支持,以便能够操作系统进程

个人:个人信息,密码,邮件,ftp

域:允许域的所有者在该域下增删用户,设定别名,子域名,数据库

销售商:增加domain

服务器: 监视服务,管理服务

http://www.web-cp.net/

DTC
支持MacOS 支持Tucows gTLD registrar API 支持服务管理 Daemon Configuration 支持PayPal Payment gateway


为所有支持的服务生成配置文件。所有要作的是就是控制配置文件如何生成。 一个cron脚本很将没隔10分钟启动一次,来验证 些配置文件是否合法,已经重新装载指定的服务

DTC分3个主要的目录. 管理控制台 (一般在 /usr/share/dtc/admin,但也有一些系统, 例如bsd,在 /usr/local/share...)是你的主服务器web界面。在这里,你可以可控制所有托管在你服务器上的站点.

客户目录 (一般在 /usr/share/dtc/client) 是所有的虚拟主机管理员自己自己配置他们站点的地方.如果你不想给虚拟主机管理员以删除站点的权限,你可以不要它。因为所有的用户模块都显示在 管理控制台里

在标准的发行中, dtc安装 root 控制台到 http[s]://dtc.yourdomain-name.com/dtcadmin/, 客户控制台和客户控制面板http[s]://dtc.yourdomain-name.com/dtc/.

Don't bare to customise the generation scripts under /usr/shared/dtc/admin/inc/gen_*.php, add SSL, remove or add aliases, etc...

当所有的安装完成之后,你可增加一个虚拟主机管理员到你的机器。然后你可以增加一个域名给虚拟主机管理员。

可以从 root控制台调用PHP脚本来生成配置文件,然后手动重新载入服务(named, qmail-send, and apache) . 当然你还可以 rely on /usr/share/dtc/admin/cron.php 脚本, 所有的事情都会帮你自动做好

DTC和Webmin最大的不同是,webmin有一个服务(一个服务器,一个模块配置这个服务器)。DTC没有相应的东西,他在一个通用的借口上控制所有的任务。举个例子来说,当一个管理原增加一个域名到DTC,apache bind和qmail的所有配置都会被更新

DTC写入所有的主机信息到一个MySQL数据库。然后重新用数据库里的这些信息来生成apache qmail和bind的配置文件。

http://www.gplhost.com/
DTC安装方法 http://www.upsdn.net/html/2005-11/604.html

PHPMyWebHosting
有许多商业的虚拟主机管理程序 (如 Confixx (http://www.sw-soft.com/de/products/confixx/), HSPcomplete (http://www.sw-soft.com/de/products/hspcomplete/), Plesk (http://www.sw-soft.com/de/products/plesk/) 以及 PD-Admin (http://www.pd-admin.de/))

但是他们需要花费大量的钱,并且你必须做许多修改才能让他们运行。有时候他们需要root权限来运行
同Sarge的apache2集成,不需要root权限


主要用PHP(也用perl写一些小工具),用SH控制apache重新启动 不需要root权限

内容与执行逻辑没有分离,怀疑建立的虚拟主机目录权限有问题(mkdir chmod 777)
http://pmwh.ckvsoft.at/index.php/Main_Page

Multihoster
一个14岁的帅小伙子开发的虚拟主机系统,允许每个用户的目录有多个层次:yousite.com/usrname
支持 IP黑名单,在header和footer插入广告的功能,适合免费虚拟主机,但部分系统依赖于Cpanel和其他系统,整个系统不是很成熟
http://www.multihoster.com/

WHT
http://wht.sourceforge.net/
WHT 带paypal接口,可以为免费空间发广告
支持商业主机(Paypal接口) 免费主机(header, footer 和 pop-up广告)可以为 ftp访问 建立系统用户帐号, 可以为一个用户建立多个虚拟主机和子域名,为每个域建立多个邮件帐号

RavenCore(推荐RMP包管理系统使用,如Fedora COre,Red Hat,TurboLinux)

对RPM包管理的Linux发行版支持得很好,但结构个人觉得不死很好,如果用RMP包管理系统的,推荐用这个
功能之强大,和ISPConfig有得比

管理面板地址http://your_ip:8000
管理功能:用户,主机,邮件,数据库,DNS
系统服务:状态查看,重启,关闭
服务器:重启,关闭
文件管理   自定义错误文档   站点统计 磁盘限额
http://www.ravencore.com/
VirtualMin
http://www.swelltech.com/virtualmin/ WebMin相当强大,但作为其一个模块的Virtualmin相对其他虚拟主机管理程序来讲就比较简陋了

 

ZPanel
支持Windows下的Apache,我不喜欢Windows,也就不作介绍了,其实它是非常流行的
http://www.thezpanel.com/
VHost
这个也太简单了,前台一个文件vhost.php,后台一个文件vhost.pl
帮助你开2个站点没有问题,用于常规使用就不行了
http://chaogic.com/vhost/

AlternC
基于Debian GNU/Linux系统 ('Sarge'版本) 法国人开发的,不算太成熟

deb http://debian.alternc.org

 

 

下面这两个系统 可以管理多台主机,适合大型IDC

ISPMan
一个分布式ISP实现方案,实施该系统大概需要5个工作日,包括在3~5台机器上的软件安装
http://www.ispman.net/

邮件功能很强大

1.邮件过滤器管理

2.每个域,每个用户进行反垃圾邮件控制

3.每个域,每个用户进行病毒扫描

4.基于邮件地址或主题的黑名单和白名单

5.邮件转寄和自动回复

用户结构完善
1.每个域的终端用户: 收寄邮件,设置转寄/过滤/自动回复

2.域管理员 管理域用户,DNS,虚拟主机,邮件列表,访问控制

3.ISP客户 一个ISP的客户可以是一个或者多个域名的拥有者。 可以管理属于他的多个域

4.销售商 是一个小型的ISP,他可以把你的服务卖给他的客户

5.ISP 管理员

GNU Hosting Helper(做IDC隆重推荐此系统)
支持分布式管理,也就是在 多个服务器都只需要一个管理员控制面板和一个客户控制面板

http://www.hostingsoftware.net/


用Perl编写,功能非常之强大:


管理服务器的进程

安全管理

服务器监视

帮助中心

知识库

新闻管理

Fraudscreen

域管理

用户管理

订单客户管理

软件包管理

管理主机的服务

邮件服务器管理

域名服务器管理

注册服务器管理

服务器池管理

系统配置管理(管理IP别名)

几乎可以支持目前开源世界所有的服务器软件

还有一个基于Linux-Virutal-Server项目的虚拟服务器,也是多服务器,但跟一般IDC所理解的不一样,有兴趣也可去看看
http://www.linux-vserver.org/
http://www.openhosting.com/(OpenVPS)

Tags: 开源

mysql当前版本

MySQL开发过程中,同时存在多个发布系列,每个发布处在成熟度的不同阶段:

·         MySQL 5.2是最新开发的发布系列,是将执行新功能的系列。不久的将来可以使用Alpha发行,以便感兴趣的用户进行广泛的测试。

·         MySQL 5.1是当前稳定(产品质量)发布系列。只针对漏洞修复重新发布;没有增加会影响稳定性的新功能。

·         MySQL 5.0是前一稳定(产品质量)发布系列。只针对严重漏洞修复和安全修复重新发布;没有增加会影响该系列的重要功能。

·         MySQL 4.03.23是旧的稳定(产品质量)发布系列。该版本不再使用,新的发布只用来修复特别严重的漏洞(以前的安全问题)。

我们不认为有完全的冻结版,因为任何版本均需要对漏洞进行修复和其它修复。对于“某种程度的冻结”,我们是指我们可以在产品发布中增加一些不会影响当前工作的小东西。自然,前一系列的相关漏洞修复会移植到后面的系列。

数据库编码处理

数据库编码处理
 
/usr/local/mysql/bin/mysqldump -uroot -p --default-character-set=latin1 --extended-insert=FALSE bbs > R_Dumpbbs.sql
 
sed -e '/^--/d' -e '/^\/\*/d' -e '/^$/d' -e 's/latin1_bin/utf8_bin/' -e 's/latin1/utf8/' R_Dumpbbs.sql > R_Dumpbbs_modi.sql
 
/usr/local/mysql/bin/mysql -uroot -p --default-character-set=gb2312 bbs < R_Dumpbbs_modi.sql
 

解释一下:
第一行是导出,其中latin1是原来数据库的编码,--extended-insert=FALSE是为了导出为多行Insert,不然可能因为Insert语句过长出错;
第二行修改,sed语句是把可能出错的一些内容删掉,还有把导入时设置的表和字段类型改成utf8;
第三行是导入,gb2312是输入文件用的编码类型,个人理解是这样的:原来数据库使用latin编码,但存储数据的时候是用gb2312,其间mysql会对其进行转换,所以导出的时候用的是latin编码,但是其中的内容其实是gb2312的,所以导入的时候采用gb2312编码,因为第二行中已经把标类型改成utf8了,所以建出来的表是utf8的,而数据会通过mysql自己把gb2312转成utf8,这样进到数据库中的数据就是utf8的了。
因为之前导出的时候没有使用--extended-insert=FALSE,造成导入超慢(虽然导出500m只用了不到5分钟),导了4小时了都还没100m,所以目前还在转,估计晚上的时候就会因为Insert语句太长处错了。
不过之前有拿其中一个表测试了一下,好像没问题(判断方法:在phpmyadmin底下看到的内容没有乱码)。
先这样,如果有新进展会继续更新的。如果有错,请指正。

PS:因为论坛白天的时候不能关,所以要再次导出要等到晚上了,使用--extended-insert=FALSE以后估计需要4小时才能导出,不过导入的时候可能只要半小时左右就可以了。
PS2:个人认为该方法并不局限于vbb数据库转码,可以适用于所有mysql数据的编码转换。
 
win下可使用类似如下语句处理。


mysqldump -uroot -p --quick --compatible=mysql40 --default-character-set=latin1 --extended-insert=FALSE test1 > d:/zzz.sql

mysql -uroot -p --default-character-set=gb2312 test2 < d:/zzz.sql

 
 
1.导出4.0兼容sql文件
 
2.导入到指定库
 
经过验证1G数据导出约10分钟不到 字符替换10分钟不到,导入约半小时。
此命令同时适合unix系统.

转载-----这广告不经典你踢我

本廣告一共拍攝 605 次,沒有使用任何電腦繪圖輔助,花費四天四夜在巴黎一個工作室拍攝而成。

  

東京總部的大頭目們第一次看到 Cog 這段廣告的反應是:很好啊~很聰明,現代的電腦技術真是不錯。當他們知道這全是真的的時候,他們嚇呆了。

  

  世界上共有六台量產前的 New Accord,這部廣告用了兩台。其中一台拆成了零件─廣告用的完全都是真的車裡的零件,為什麼?因為在經過無數次的失敗以後他們卯起來要拍出最真實的影片。

  工作人員已經拍得快發瘋了,最後有些人因為連續工作幾天必須被“請“到旁邊休息。 其他人也打起賭來猜那一段會出錯。(Honda的自動感應水的雨刷贏最多次) 終於成功的第 606 次拍攝,結束時現在鴉雀無聲,然後爆出了熱烈的歡呼和掌聲,以及四濺的香檳。

  

  這個遊戲值多少錢?八十萬台幣如果你算那輛車,或三億台幣如果你算整個行銷計劃。 

 

  其中一段是單一個吊著的雨刷在空中旋轉移動,拍成功的那次,是那一段唯一成功的一次...

  輪胎裡放的是鏍絲和鏍帽,平衡之精細,連攝影組員走動時都得小心翼翼。

常常一個大一點的動作或是不小心輕推一下什麼,就得重覆好幾小時的工作。拍到三四百,甚至第五百多次時,製作人開始稱呼這些零件為「our friends, the parts」(零件,我們的朋友們)。更有一些組員幾天沒睡後被其他人要求離較精細的部份遠一點... 

  當問及他花在這個廣告的時間有多長時,廣告導演尖聲一笑,回答:「五年?還是八年了?」

  

  廣告用的這兩台 Accord是全世界僅有的六台中的兩台,全是 Honda 工程師手工打造的。(可見當初拆掉一台時那些工程師有多心疼)

Red Hat将推出RHEL5管理使用知识手册

Tammy Fox已经厌倦了Red Hat Inc.公司的众多头衔,包括技术作家,文档团队的领导人,Red Hat杂志的创始编辑。她已经专门从事Linux写作长达7年的时间了。换句话说,她了解Red Hat Linux。

  Fox的最新工作,就是Red Hat企业版 Linux 5管理的发布,预计可在本月拿到,这是一本针对高级Linux系统管理员的大部头知识手册。在出版之前,Fox接受了 SearchEnterpriseLinux.com的采访,提供了一些关于最新版本的Linux社区的领先的商业发布,Red Hat Enterprise Linux 5 (RHEL 5),的内幕.

  一般来说,要顺利升级到RHEL 5的话,你可以分享的最好的实践方案或者技巧是什么呢?

  Tammy Fox:基本上,使用安装程序来升级你系统中任何现有的RPM包。如果新版本的包包含了一些让你现有的配置失效的变更,那么一些包就会尝试移植你现有的数据,但是这不是必需的。

  最好的实践方案就是让你的数据在一个专用的存储系统中,在更新安装的时候,不要更改格式。根据你的企业的规模,它可以是SAN,数据集群,或者仅仅是你系统中几个专用的硬盘。备份你现有的数据和配置文件,然后执行更新安装文件。重新挨个存储你的配置文件,测试每个程序。确保密切关注软件版本是否从原先的RHEL变更到了RHEL 5。最后,重新连接你的数据存储解决方案,并且如果必要的话,再执行一个额外的测试。

  当然,在产品系统中实现这些计划之前,所有这些步骤都应该是在一个测试系统中进行。

  从管理员的角度来看,RHEL 4的部署和RHEL 5的部署有什么关键的区别吗?

  Fox:他们能注意到的最直接的变化就是安装代码的引入。在安装过程中,必须输入安装代码。这些代码是由Red Hat生成的。根据你购买的服务,他们会解开不同的RHEL 5组件,例如虚拟化和高可用性。RHEL 5还使用了新的RPM GPG关键字。如果升级的话,你还会需要在升级包之前安装新的关键字。

  接下来一个显著的改变就是一些软件的管理和维护移动到了YUM。在先前版本的RHEL中,up2date命令可以用于从Red Hat网络中下载并安装软件更新。它已经被YUM命令替代,所有的up2date图形化程序都已经被使用YUM的图形化程序所替代。如果你在RHN网站上安排了包的升级和安装,那么你就可能不会注意到这个差别。

  管理员还必须考虑到是否使用RHEL5中的虚拟化特性。(编辑提示:由于商标问题,Red Hat目前作为虚拟化引用的是基于Xen的管理程序技术。)如果你的硬件支持,并且你的系统有足够的资源供主系统和虚拟机分享的话,虚拟化可以帮助你减少需要维护的实际机器的数量。如果你提供的是服务,或者允许你的客户通过shell访问到他们的网站,那么虚拟化是有好处的。

  管理员应该通读警告中的完整列表,以便了解有关RHEL 5的问题。例如,和Windows Vista的双启动需要额外的GRUB步骤来启动Windows Vista。

SELinux在RHEL 5下已经变得更容易使用了吗?

  Fox:就像所有正在开发中的开源技术一样, SELinux都会随着Red Hat 企业级 Linux 和Fedora的每一次发布而有所长进。当然,有的IT经理仍然不愿意使用SELinux,但是RHEL 5的版本已经明显得到了改善。

  通过引入SELinux管理工具(SELinux Management Tool)和SELinux问题解决器(SELinux Troubleshooter),要判断是哪一个服务和程序被SELinux所保护就容易得多了。另外在不需要写下你的策略的前提下定制策略也变得更加简单。SELinux布尔可以用来实现这一点,通过SELinux管理工具,你可以打开或者关闭这个功能。

  当由于SELinux的原因导致服务失败的时候,SELinux Troubleshooter就会向管理员发出警报。它还可以提供关于如何解决问题的建议,同时不会妨碍SELinux对服务的保护。

  当从Xen转换到RHEL 5的时候,发生的变化会导致Red Hat Linux的管理员的工作方式发生变化吗?

  Fox:由于RHEL 5中引入了虚拟化,管理员们现在必须要考虑一下是否继续为每个操作系统实例使用单个的物理的服务器,或者是虚拟机的性能是否可以满足。当然,提供专用的网络服务器的网络主机公司可以从虚拟化中得到好处,因为每个客户端都有它们自己的IP地址和寄宿操作系统了。主机系统中的虚拟机不能访问主机上其他虚拟机上的数据,所以客户端数据是隔离的,那么一个实际的服务器上就可以提供多个客户端了。

  IT经理们应该知道,虚拟化也具有硬件的需求。现在,RHEL 5上的虚拟机只支持x86 和x86_64的系统。这是为Itanium2提供的,但是只是作为技术预演而已。除了专属于每个虚拟机的足够的处理器、内存和磁盘空间这些明显的需求之外,处理器还要有物理地址扩展支持。要充分使用虚拟化——寄宿的操作系统不一定要意识到虚拟机层的存在——处理器必须是64位的,并且必须由硬件虚拟机层。

  eWEEK 上有一篇关于RHEL5 的评论说,Xen支持是个“半成品”——你是怎么看这个问题的?

   Fox:在SELinux 上,你可以看到对虚拟化的支持随着时间不断增强。基本的功能已经在那里了。你可以创建一个虚拟机,在虚拟机上安装一个寄宿操作系统,然后连接到寄宿操作系统上,如果它是一个运行在单独硬件上的操作系统的话。虚拟机有自己的IP地址,不可以访问宿主系统中的数据,等。

  还有一些部分具有改善的巨大空间,就像任何第一次引入的软件一样。因为它是开源的,所以提供这些类型的新技术是非常重要的,这样他们就可以被大多数人所用,其他的开发人员和公司也可以支持它。一些问题是已知的,例如虚拟机管理器无法启动列在RHEL 5发布通知中的虚拟机。然而,这个特殊的问题要特殊分析,是在通过首先使用命令行来启动虚拟机的情况下发生的。这个问题将会在我的书中进行讨论。

Records:1312