1. 准备工作以及配置Java环境
2. Linux中JDK环境配置
6. 给Tomcat网站安装SSL证书
准本工作
下载tomcat linux安装包,地址:http://tomcat.apache.org/download-80.cgii
我下载的版本是9.0,具体操作如下图:
在putty中下载直接(wget+下载链接)
Wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-9/v9.0.13/bin/apache-tomcat-9.0.13.tar.gz
将下载的tomcat安装包解压缩,然后再重命名
tar -zxv -f apache-tomcat-9.0.13.tar.gz(解压缩)
mv apache-tomcat-9.0.13 tomcat(重命名)
因为tomcat的安装依赖于Java jdk,所以我们需要判断linux系统下面是否安装jdk,判断的方法:
使用(Putty)连接到Linux系统下面;
输入命令:java -version,如果显示JDK版本号,则证明已经安装,如果不显示,则证明没有安装,JDK安装如下:
准备工作
因为Java JDK区分32位和64位系统,所以在安装之前必须要先判断我们的Centos为多少位系统,命令如下:
uname -a
解释:如果有x86_64就是64位的,没有就是32位的。后面是X86或X86_64则内核是64位的,i686或i386则内核是32位的
这是我查询后的显示:
由此可以判断我的Centos为64位系统,故而我需要下载64位系统的JDK。
下载JDK,地址为:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
我下载的JDK为8,如图所示:
操作需要的软件以及系统如下:Putty、Xftp、MyEclipse(我需要的是这些,如果电脑上没有MyEclipse,需要到官网下载:
https://www.genuitec.com/products/myeclipse/download/get/?1241(下载地址)
安装Java JDK8.0
然后在Putty中使用命令进入到local下面创建文件夹:kencery(为后面的安装做准备)
使用的命令:cd /usr/local
mkdir kencery
cd kencery/
我们现在使用FTP工具上传:接着使用Xftp将jdk上传到/home目录下,然后复制到kencery文件夹下面,
这时候到putty中查看:(已经在/home目录下了,然后再cp到kencery文件夹下面)
将上传的jdk解压,解压之后重命名为javajdk,如图所示:
tar -zxv -f jdk-8u192-linux-x64.tar.gz
mv jdk1.8.0_192 javajdk
cd javajdk
(同时我们也可以直接在putty中利用wget+下载地址也可以直接下载,然后再解压缩、重命名)
通过上面的步骤,我们的jdk已经全部完成安装了,接下来就是更重要的一步:配置环境变量。
配置环境变量
vi /etc/profile
打开后按键盘(i)进入编辑模式将下面的内容复制到底部
JAVA_HOME=/usr/local/kencery/javajdk
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
export PATH JAVA_HOME CLASSPATH
备注:根据上面的配置信息,我们可以将环境变量配置完成,需要注意的是,PATH在配置的时候一定要把AVA_HOME/bin放在最前面。
写完之后按键盘(ESC)按钮退出,然后按(:wq)保存并且关闭Vim。
然后使文件立即生效:source /etc/profile
验证是否安装成功
上面的所有步骤安装完成后,这时候需要检查是否安装成功,输入如下命令,如图所示:
java -version
echo $JAVA_HOME
后续卸载JDK的方法:卸载Java JDK
首先执行命令查看服务器下的jdk的版本:
命令如下(如图所示):rpm -qa|grepjdk
(我实际没卸载)
然后执行命令:
#yum -y remove java java-1.6.0-openjdk-1.6.0.0-1.50.1.11.5.el6_3.x86_64
以上便是安装和卸载Java JDK的全部内容了。
通过上面准备工作之后,我们现在已经拥有了可以安装JDK的环境。
这时候如果前面的Tomcat没有安装成功可以再试一次,因为现在已经有了Java JDK环境。
下面在Linux下安装Tomcat9.0
通过上面的准备工作之后,我们现在已经拥有了可以安装和发布的环境。
下面我在putty中使用命令进入到local下面创建文件夹:kencery
#cdusr/local
#mkdir kencery
#cdkencery
解析完成启动Tomcat,检查是否安装成功,命令如下,如图所示:
/usr/local/kencery/tomcat/bin/startup.sh
出现上图所示信息表示启动成功。这个时候可以在windows下面使用http://ip:8080访问,如果能够显示Tomcat的主页,则表示安装成功并能正常访问浏览器Web界面了,如不能显示,则需要在Linux中开放防火墙的8080端口。
在Linux下面的防火墙里面开放8080端口,命令如下:
vim /etc/sysconfig/iptables
打开之后按键盘(i)进入编辑模式,写入开发8080端口,如图所示:
写完之后按(ESC)退出然后(:wq)保存。
之后重启防火墙,命令:
service iptables restart
然后再次在浏览器中输入http://IP:8080,如果看到Tomcat系统界面,说明安装成功,可以进行下一步。(停止Tomcat命令:/usr/local/tomcat/bin/shutdown.sh)
Linux中设置tomcat的服务器启动和关闭
上面的操作我们已经完成了对tomcat的安装,接下来就可以部署项目,但是这里存在一个问题,那就Tomcat服务的启动和关闭每次都需要用路径并执行命令,那么可以设置成service的形式来实现这个功能,把Tomcat转化为服务。
执行命令:vi/etc/rc.d/init.d/tomcat,创建脚本文件,在文件中写入如下代码,保存并退出:
#!/bin/bash
# /etc/rc.d/init.d/tomcat
# init script for tomcat precesses
# processname: tomcat
# description: tomcat is a j2se server
# chkconfig: 2345 86 16
# description: Start up the Tomcat servletengine.
if [ -f /etc/init.d/functions ]; then
. /etc/init.d/functions
elif [ -f /etc/rc.d/init.d/functions ];then
. /etc/rc.d/init.d/functions
else
echo -e "\atomcat: unable to locatefunctions lib. Cannot continue."
exit -1
fi
RETVAL=$?
CATALINA_HOME="/usr/local/kencery/tomcat" #tomcat安装目录,你安装在什么目录下就复制什么目录
case "$1" in
start)
if [ -f $CATALINA_HOME/bin/startup.sh ];
then
echo $"Starting Tomcat"
$CATALINA_HOME/bin/startup.sh
fi
;;
stop)
if [ -f $CATALINA_HOME/bin/shutdown.sh ];
then
echo $"Stopping Tomcat"
$CATALINA_HOME/bin/shutdown.sh
fi
;;
*)
echo $"Usage: $0 {start|stop}"
exit 1
;;
esac
exit $RETVAL
Linux
给文件添加权限,使得脚本文件可以执行,命令为chmod755 /etc/rc.d/init.d/tomcat
将其添加到服务中,命令为chkconfig--add /etc/rc.d/init.d/tomcat
然后将下面得配置文件加到tomcat中得catalina.sh文件中的最后面,命令为:
vi/usr/local/kencery/tomcat/bin/catalina.sh
export JAVA_HOME=/usr/local/kencery/javajdk #javajdk的安装路径,使用echo $JAVA_HOME命令可以读取
export CATALINA_HOME=/usr/local/kencery/tomcat
export CATALINA_BASE=/usr/local/kencery/tomcat
export CATALINA_TMPDIR=/usr/local/kencery/tomcat/temp
上面的操作成功后,则配置完成,检测命令:servicetomcat start service tomcat stop(如图所示)
Linux中设置tomcat的开机启动
通过第三步的设置操作的时候可以很方便的设置tomcat的启动和关闭,但是这里存在一个问题,那就是当服务器关机重启的时候,服务器不能穗计算机的启动而自己启动,所以可以将Tomcat服务器设置为开机自启动。
打开Linux设置开机自启动的文件,将下面的配置文件写入此文件的最后,命令为:
vi /etc/rc.d/rc.local
export JAVA_HOME=/usr/local/kencery/javajdk
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
export CATALINA_HOME=/usr/local/kencery/tomcat/
#tomcat自启动
/usr/local/kencery/tomcat/bin/startup
tomcat依赖于Java的JDK,所以设置的时候将jdk也是同步导入;
完成上面的步骤之后我们就可以将Tomcat服务重启。
给Tomcat设置用户名和密码登录
当Tomcat安装完成之后,访问http://IP:8080可以看到tomcat发布的网站,这时候需要管理我们发布的网站,就需要登陆Tomcat,那么在Centos中如何设置登录名和密码?
在tomcat安装包下面的conf文件下(具体目录/usr/local/kencery/tomcat/conf)含有一个tomcat-user.xml文件,修改此文件即可,命令为:
vi tomcat-users.xml
<rolerolename="admin-gui"/>
<rolerolename="manager-gui"/>
<user username="tomcat"password="tomcat" roles="manager-gui,admin-gui"/>
写入后保存退出即可。(如图所示)
在这里会出现一个问题,因为tomcat-users.xml里面有注释的用户设置的信息,取消注释,用文件提供的用户名和密码去访问的时候,会出现403错误,
如我们现在想访问tomcat中图形化管理应用的功能,也就是Manager App、Host Manager、Server Status这时不仅要指定manager-gui的权限,就是上面编辑的conf文件下tomcat-user.xml的配置文件,还要修改:
(具体路径为:/uer/local/kencery/tomcat/webapps/manager/META-INF目录下的
context.xml的文件内容,如图所示)
注释掉这段代码即可,这样就可以用用户名和密码访问ManagerApp了
配置完用户名密码之后,需要重新启动tomcat,命令如下:
service tomcat stop
service tomcat start
重启服务之后,检测是否登录成功,如果登录进入系统,则说明登录成功。
后续可以使用MyEclipse打包Java Web项目并将Java Web项目发布到Tomcat9.0下面并且进行访问展示,这是Java开发同事的事情了,这里不掩饰了。
下面重点介绍一下Tomcat的证书安装方法:
一、证书导入:
导入中级证书: keytool -import-alias intermediate -keystore c:\server.jks -chinasslcrt –file c:\intermediate.crt 提示“认证已添加至keystore中”则导入成功。
导入交叉证书: keytool -import-alias cross -keystore c:\server.jks -chinasslcrt -file c:\chain.crt 提示“认证已添加至keystore中” 则导入成功。
导入服务器SSL证书: keytool -import -alias mykey -keystore c:\server.jks -chinasslcrt-file c:\server.crt 输入密码后 提示:“认证回复已安装在 keystore中”说明导入成功。
二、修改配置文件server.xml将已正确导入认证回复的server.jks文件复制到tomcat安装目录下的conf目用文本编辑器打开Server.xml并更新以下内容:
maxThreads="150"SSLEnabled="true" scheme="https" secure="true"
clientAuth="false"sslProtocol="TLS"keystoreFile="D:/jcy/Tomcat7/conf/server.jks" keystorePass="123456"/>
下面为配置文件参数说明:port="443" SSL访问端口号为443keystoreFile 私钥库文件 server.jkskeystorePass 私钥库密码 123456
对于Tomcat服务器,如果需要支持使用https访问,可以将服务器证书生成以后,配置server.xml文件,开放https访问方式。但有些时候,可能我们需要将整站或者一些特定的URL限制为只能使用https方式进行访问,那么需要在WEB应用的web.xml文件中进行进一步的配置。在 tomcat /conf/web.xml 中的后面加上下面代码:
需要重新启动tomcat,命令如下:
service tomcat stop
service tomcat start
备注:
一:Tomcat 默认http端口是8080,https一般默认443端口。修改默认网站端口方法,编辑server.xml修改下面代码:
connectionTimeout="20000" URIEncoding="UTF-8"
redirectPort="443"/>
二:“F5负载均衡产品设备的面板中健康检测还是应该是8080 而不是 443 否则认为不对,导致不能外网访问“, .jks文件安装所以不需要加keystoreType="PKCS12"这个代码。
server.xml配置文件参考模板:
type="org.apache.catalina.UserDatabase"
description="Userdatabase that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml"/>
connectionTimeout="20000" URIEncoding="UTF-8"
redirectPort="443"/>
maxThreads="150"SSLEnabled="true" scheme="https" secure="true"
clientAuth="false"sslProtocol="TLS"keystoreFile="D:/jcy/Tomcat7/conf/server.jks" keystoreType="PKCS12"keystorePass="123456" />
resourceName="UserDatabase"/>
unpackWARs="true">
prefix="localhost_access_log."suffix=".txt"
pattern="%h%l %u %t "%r" %s %b" />
联系客服