分类: 系统运维
2011-11-25 22:26:13
我的环境实现的主要功能是如果是https就访问tomcat下面的应用,如果是http,则访问apache下面的静态页面,废话不多说! 一、下载工具: apache httpd-2.2.0.tar.gz 下载地址: jdk-1_5_0_05-linux-i586.bin 下载地址:http://java.sun.com/javase/downloads/index.jsp jakarta-tomcat-connectors-1.2.15-src.tar.gz 下载地址 tomcat-5.5.12.tar.gz 下载地址: 二、安装apache: 1../configure - -prefix=/usr/local/apache \--enable-so \--enable-ssl \ --with-apr=/usr/local/apr-httpd \ --with-apr-util=/usr/local/apr-util-httpd/ --enable-mods-shared=all #make #make install #make clean #cd apache/bin #./apachectl start //可能会提示不能够绑定127.0.0.1,不过没有关系,我们在下面会修改的,先看一下是不是服务起来了。 #ps aux 输入就会出现工作界面。 二、配置tomcat 先安装jdk #[root@localhost home]# ./jdk-1_5_0_05-linux-i586.rpm.bin #root@localhost home]# rpm -ivh jdk-1_5_0_05-linux-i586.rpm 生成目录:jdk1.5.0_05 在/usr/创建目录,java root@host1 jdk1.5.0_05]# ls bin COPYRIGHT demo include jre ib LICENSE man README.html sample src.zip [root@localhost bin]# ./java –version [root@host1 bin]# ./java -version java version "1.5.0_05" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_05-b05) Java HotSpot(TM) Client VM (build 1.5.0_05-b05, mixed mode) 显示版本,说明java环境建立成功!//如果不能够显示,安装完tomcat后,重新启动计算机一切就会正常(哈哈)。 (注意:tomcat5.5的必须有jdk1.5这个版本支持) 安装tomcat 1.[root@localhost root]#tar zxvf jakarta-tomcat-5.1.12.tar.gz /home (指定安装到/home目录下) [root@localhost root]#mv jakarta-tomcat-5.1.12 tomcat (换个文件名) 启动关闭服务文件放在/home/tomcat/bin 配置文件 /home/tomcat/conf web文件 /home/tomcat/webapps 默认访问目录 /home/tomcat/webapps/ROOT 2.设置环境变量, 在/etc/profile中末尾加入: export JAVA_HOME=/home/jdk1.5.0_05 export TOMCAT_HOME=/home/tomcat export PATH=$PATHJAVA_HOME/bin export CLASSPATH=.JAVA_HOME/lib/dt.jarJAVA_HOME/lib/tools.jar 3.启动与关闭服务: #cd /home/tomcat/bin #./startup.sh(关闭服务:#./shutdown.sh)或者是./Catalina.sh start/stop 4.从新启动计算机,tomcat 就会运行正常,也可以通过jsvc把tomcat加载在启动服务里面,建议不要用root来运行tomcat。 五.安装jakarta-tomcat-connectors-1.2.15-src,生成mod_jk.so文件。 1.安装jakarta-tomcat-connectors-1.2.15-src.tar.gz 参考文档: ... redflag/read.php?15,100143 进行安装,具体过程如下: root@localhost native]#tar zxvf jakarta-tomcat-connectors-1.2.15-src.tar.gz 生成原文件: jakarta-tomcat-connectors-1.2.15-src [root@localhost home]# cd jakarta-tomcat-connectors-1.2.15-src [root@localhost jakarta-tomcat-connectors-1.2.15-src]# [root@localhost jakarta-tomcat-connectors-1.2.15-src]# cd jk [root@localhost jk]# cd native root@localhost native]#./configure --with-apxs=/usr/local/apache2/bin/apxs [root@localhost native]#make [root@localhost native]#make install [root@localhost native]#cd apache-2.0/ [root@localhost apache-2.0]#ls mod_jk.so [root@localhost apache-2.0]#cp mod_jk.so /usr/local/apache2/moduels [root@localhost apache-2.0]#cp ../conf/workers.properties /usr/local/apache2/conf 配置httpd.conf 文档:下面是我自己的配置文档修改过的地方。 #cd apache/conf #vi httpd.conf 找到#LoadModule foo_module modules/mod_foo.so加入下面代码: LoadModule jk_module modules/mod_jk.so # Where to find workers.properties JkWorkersFile /usr/local/apache/conf/workers.properties # Where to put jk logs JkLogFile /usr/local/apache/logs/mod_jk.log # Set the jk log level [debug/error/info] JkLogLevel info # Select the log format JkLogStampFormat "[%a %b %d %H:%M:%S %Y] " # JkOptions indicate to send SSL KEY SIZE, JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories # JkRequestLogFormat set the request format JkRequestLogFormat "%w %V %T" 找到# Secure (SSL/TLS) connections #Include conf/extra/httpd-ssl.conf ,Include conf/extra/httpd-default.conf, Include conf/extra/httpd-languages.conf,Include conf/extra/httpd-autoindex.conf取消#号,这个可根据自己情况定(我要启用ssl) # cd jakarta-tomcat-connectors-1.2.15-src/jk/conf # cp workers.properties /usr/local/apache/conf/ 编辑workers.properties文件,修改java和tomcat路径. #cd /usr/local/apache2/conf/extra # vi httpd-ssl.conf 在最后加入:JkMount /* ajp13 # Send JSPs for context /examples to worker named worker1 JkMount /*/*.jsp ajp13 //根据自己tomcat/webapps的应用来举起配置。 修改虚拟机目录为:/usr/local/tomcat/webapps 修改有关ssl证书的路径。 安装openssl解压:(注意,openssl的安装要在apache以前进行),一般系统默认安装了openssl,就不需要再安装! # tar -zxvf openssl-0.9.7j.tar.gz 编译和安装 # ./config # make # make test # make install 安装证书 首先我假定你已经安装好了openssl和MOD_SSL,如果你的openssl安装时 的prefix设置为/usr/local/openssl,那么把/usr/local/openssl/bin加入 执行文件查找路径。还需要MOD_SSL源代码中的一个脚本,它在MOD_SSL的 源代码目录树下的pkg.contrib目录中,文件名为 sign.sh。 将它拷贝到 /usr/local/openssl/bin 中。 先建立一个 CA 的证书, 首先为 CA 创建一个 RSA 私用密钥, [S-1] openssl genrsa -des3 -out ca.key 1024 系统提示输入 PEM pass phrase,也就是密码,输入后牢记它。 生成 ca.key 文件,将文件属性改为400,并放在安全的地方。 [S-2] chmod 400 ca.key 你可以用下列命令查看它的内容, [S-3] openssl rsa -noout -text -in ca.key 利用 CA 的 RSA 密钥创建一个自签署的 CA 证书(X.509结构) [S-4] openssl req -new -x509 -days 3650 -key ca.key -out ca.crt 然后需要输入下列信息: Country Name: cn 两个字母的国家代号 State or Province Name: An Hui 省份名称 Locality Name: Begum 城市名称 Organization Name: Family Network 公司名称 Organizational Unit Name: Home 部门名称 Common Name: Chen Yang 你的姓名 Email Address: Email地址 生成 ca.crt 文件,将文件属性改为400,并放在安全的地方。 [S-5] chmod 400 ca.crt 你可以用下列命令查看它的内容, [S-6] openssl x509 -noout -text -in ca.crt 下面要创建服务器证书签署请求, 首先为你的 Apache 创建一个 RSA 私用密钥: [S-7] openssl genrsa -des3 -out server.key 1024 这里也要设定pass phrase。 生成 server.key 文件,将文件属性改为400,并放在安全的地方。 [S-8] chmod 400 server.key 你可以用下列命令查看它的内容, [S-9] openssl rsa -noout -text -in server.key 用 server.key 生成证书签署请求 CSR. [S-10] openssl req -new -key server.key -out server.csr 这里也要输入一些信息,和[S-4]中的内容类似。 至于 'extra' attributes 不用输入。 你可以查看 CSR 的细节 [S-11] openssl req -noout -text -in server.csr [S-12] openssl x509 -in new.cert.csr -out new.cert.cert -req -signkey new.cert.key -days 1825 就可以得到server.crt。 将文件属性改为400,并放在安全的地方。 [S-13] chmod 400 server.crt 删除CSR [S-14] rm server.csr 可以 apachectl startssl 试一下了。 让apache在启动时不需输入RSA私钥(while preserving the original file): $ cp server.key server.key.org $ openssl rsa –in server.key.org –out server.key 确认server.key 文件为root可读 $ chmod 400 server.key 哈哈,现在就全部工作做完了,这样就实现了两个功能,当访问时访问的是apache/htdocs应用,访问时访问的是tomcat/webapps下面的应用。 |