ISV系统部署规范

ISV系统部署规范
ISV系统部署规范

文件编号: SA-ISV-系统部署规范-V1.0.doc

ISV系统部署规范草案

版本号V1.7

编写人:山大

编写时间:2010-2-26

版本修订记录

版权说明

本文件中出现的任何文字叙述、文档格式、插图、照片、方法、过程等内容,除另有特别注明,版权均属淘宝公司所有,受到有关产权及版权法保护。任何个人、机构未经淘宝公司的书面授权许可,不得复制、引用或传播本文件的任何片断,无论通过电子形式或非电子形式。

ISV系统部署规范草案

目录

1.文档目的:

为了规范化,标准化,保障应用安全,便于运维和管理,规范ISV的系统部署,特别拟定此手册。

2.系统约定

◆Linux系统采用版本 Redhat RHCE 4 update 7以上,RHCE 5 update 2,以上

一般使用64位系统,原则不使用32位系统

必须使用32位系统的,内存最多分配4G,

◆原则不使用Windows系统,特殊需要请通过PM申请。

◆数据库一般使用Mysql,不能使用MSSQL和ORACLE等付费数据库

3.系统分区

默认物理机(300G硬盘)分五个区

?/boot 100M 启动分区

?/ 10G 根分区, /opt不做独立分区

?/usr 15G 系统应用分区

?/var 20G 系统日志分区

?/home 数据和应用分区剩余大小

默认虚拟机(80G硬盘)分两个区

?/boot 100M 启动分区

?/ 根分区剩余大小

分区默认使用Ext3,有特殊需要分区请和淘宝运维联系

系统目录说明:

/home 用户数据和web数据目录,和配置文件

/ 根一般不放用户文件

/usr 一般系统程序存放

/var 系统的日志,一般不放用户的日志

/opt 一些下载的源文件可以放这里

”/下5.账户约定

5.1特权账号

Root 帐号是服务器的最高权限拥有者,只有在涉及到系统维护管理的时候才需使用,因此作出下述规定:

(1) 在root帐号内,不允许保存任何文件(必要已经审批工具除外);/root/

(2) 不允许用root运行任何非系统必须的程序(特殊服务除外)。

5.2工作帐号

约定使用admin:admin, gid和uid都使用500

是生产服务运行所使用的帐号,此帐号的动作将影响到生产服务运行的稳定性,因此在工作帐号的目录内,只允许存放下列条件所允许的程序、配置文件、数据文件、日志、脚本、备份文件、crontab;

(1) 线上服务所必须的,应用端口尽量不要用1024一下端口,用admin部署。

(2) 运行维护所必须的。

(3) 部署时可以拥有ROOT权限, 部署完之后应当收回ROOT权限。

(4) 添加账户

groupadd -g 500 admin

useradd -g 500 -u 500 admin

6.进程约定

◆生产服务的进程需要以admin账户来启动

◆服务端口尽量不要使用1024以下端口,不需要root的特权

◆特殊进程请必须告知淘宝运维

7.

8.文件和目录

规范文件及目录结构,让所有文件都在它们应该在的位置,是为了降低由于文件数量众多带来的安全风险,保证线上服务环境的整洁、环保与安全;

规范文件及目录权限,避免未授权帐户读取、修改或执行文件,降低由此造成的风险,保证线上服务环境的独立性。

注意点:一个目录下面不允许多达6000个文件以上, 如果文件数量很多, 想办法采用多级目录解决。

/home/admin的目录

/home/admin/

├APPS/

│├(Httpd)/

│└──bin/

│├─logs/

│├─lib/

│├─conf/

│└─htdocs/

└─https://www.360docs.net/doc/7b113734.html,/……网站数据请独立出来

└─bin/

│└─crontab

├─logs/

│├─crontab

└─backup/

└─tmp/

程序文件或域名作为目录

9.数据安全和备份

a)程序文件备份

i.ISV自己需要有svn版本管理和本机备份

ii.服务器上有条件的保留7日的滚动备份,

iii.配置文件做7天的滚动备份

b)数据库备份

i.需要热备,mysql 通过master slave做主从复制

ii.冷备,对于不大的数据库,每天定时在重库上作七天轮询dump备份,对于比较大的数据库,超过10G,采用增量备份

c)附件等重要数据文件

i.设计上最好能够分布式机制,保存保存2份,最好3份数据。

ii.不能分布式,必须有异机冗余备份,譬如Nfs,用 Rsync做备份

iii.最好能够考虑定期冷备份到光盘或者磁带

iv.

d)日志备份

尽量压缩保存文件

原则保留90天日志

没必要的日志不需要备份

10.安全注意

a)要确保帐户的安全,密码要使用强密码,不能传递密码,本机保存密码文件要加密。

b)管理端口:管理访问必须通过acls,源地址必须做限制

c)系统级别:公开的服务端口,必须通过负载均衡出去,开放acls

d)应用层:防注入和跨站,扫描

e)后台管理工具,phpmyadmin,jmx-console,web-console等必须要告诉淘宝运维,测试安全性

f)后台管理地址,也需要列出来,告诉淘宝运维,测试安全性

g)开放的应用管理地址需要用apache作地址限制和帐户设置,示例

h)部署安全

11.crontab注意事项

a)脚本当中应当输出到具体日志中

b)Crontab上面脚本日志输出要到 >/dev/null 2>&1 或者指定到文件,避免邮件警报把服务器日志塞满

c)脚本放在/home/admin/bin/crontab下面

d)日志输出到/home/admin/logs/crontab下面

12.登陆服务器

◆请向淘宝运维申请服务器登陆账号

◆需要通过登陆服务器登陆登陆设置如下:

◆需要固定IP地址做ACLS访问许可

◆一般使用SecureCRT来登录,请把会话选项—终端-仿真终端改成 Xterm.

◆如果经常连接超时,可以设置一下自动发送连接:

◆如果用了一段时间突然发现无法登陆,报密码错误或者帐号被锁定:

这是因为系统默认3个月会自动更改一次密码,到期前系统会发一封密码邮件给你,

如果没有注意,连续错误5次会账号会自动锁定,锁定后请联系Shterm的管理员来更改密码。谢谢!

◆如果手动修改自己的密码:

通过https://110.75.125.15 用自己的帐号登陆,进入账户设置,再输入一次密码,

注意密码更改规则:

新密码长度不应小于8 个字符,不能与前5 次的设置相同;

最少要包含1 个数字字符, 1 个大写字母,1 个小写字母,1 个其他字符;

由于启动了CrackLib,请勿设置简单密码。

13.文件上传

a)服务器可以通过80端口走http协议wget来下载需要的文件。

b)Shterm禁止过了直接rz,sz,

c)上传可以通过sftp上传设置:登陆服务器地址,端口22,用你自己的账号,登陆后选择内部服务器和账号

工具可以使用FlashFXP,Filezilla,Winscp,SecureFX等

d)Linux机器可以直接scp

下载Scp yourname@110.75.125.15:/ 192.168.100.1/admin/home/admin/www/default.css /home/admin/www/new.css 上传Scp /home/admin/www/new.tgz yourname@110.75.125.15:/ 192.168.100.1/admin/home/admin/www/new.tgz 备注:你的账号@登陆服务器目标服务器目标账号目标目录

14.外部访问

◆外部访问需要通过负载均衡设备的VIP访问

◆需要提供给淘宝运维要访问的域名,映射到的服务器以及开放的端口

◆经过安全审核和运维审核之后才能开通外部访问。

15.时间同步

目前已默认配置时间服务器

/etc/ntp.conf 请不要更改。

16.监控 snmp

/etc/snmp/snmpd.conf 目前系统安装已经配置

系统监控:服务器的网卡流量,磁盘空间,内存,cpu,load必须监控

应用监控:必要的应用监控请提交需求

请不要更改snmpd.conf,有需要更改,请和淘宝联系,谢谢!

17.系统参数优化

Web服务器优化

数据库服务器优化

请把需要优化的参数提供给淘宝。

18.域名的使用

ISV应用原则不能使用淘宝域名

域名必须要经过备案还能启用

19.Sendmail的使用

1.没有必要请不要启用sendmail服务

2.不允许利用服务器发送垃圾邮件

3.使用sendmail请注意邮件队列/var/spool/mqueue

20.应用部署参考(等待补充)

a)Apache部署参考

1.安装,配置文件,启动,日志轮询,维护,常见问题,优化

b)Mysql部署参考

i.安装,配置文件,启动,日志轮询,维护,常见问题,优化

c)Php,apache部署参考

e)JDK和 Tomcat-apache部署参考

f)Nginx部署

相关主题
相关文档
最新文档