Lunes Feb 28, 2011
En este post, vamos a instalar Tomcat 7, el nuevo JDK 7, configurar Tomcat como un servicio, cree un inicio / parada guión, y (opcionalmente) configurar Tomcat para funcionar bajo un usuario no root.También vamos a configurar el acceso básico al Administrador de Tomcat y echar un vistazo rápido a la gestión de memoria utilizando JAVA_OPTSPara esta instalación, usaremos Tomcat 7.0.23, la versión estable actual de Tomcat 7.Para empezar, tendrá que instalar el Java Development Kit (JDK) 7JDK 1.6 es la versión mínima de JDK para Tomcat 7.
Paso 1: Instale el JDK 1.7.0
Puede descargar la última versión del JDK aquí: http://www.oracle.com/technetwork/java/javase/downloads/index.html
Otra Pagina de Java: Java Rockit
Vamos a instalar la última versión del JDK, que es JDK 7, Update 1. El JDK es específico de 32 y 64 bits.Mi caja de CentOS es de 64 bits, así que voy a necesitar: jdk-7u2-linux-x64.tar.gz.Si usted está en 32 bits, necesitará: jdk-7u2-linux-i586.tar.gzDescargar el JDK y guárdelo en un directorio. Lo estoy guardando en / root.Crear un nuevo directorio / usr / java.
- [root@srv6 ~]# mkdir /usr/java
Cambie al directorio / usr / java directorio que hemos creado
- [root@srv6 ~]# cd /usr/java
- [root@srv6 java ]#
Mover o copiar jdk-7u2-linux-x64.tar.gz al directorio / usr / java:
- [root@srv6 java]# mv jdk-7u2-linux-x64.tar.gz /usr/java/jdk-7u2-linux-x64.tar.gz
Desepaquete Jdk-7u2-linux-x64.tar.gz en el directorio / usr / java archivo con tar-xzf:
- [root@srv6 java]# tar -xzf jdk-7u2-linux-x64.tar.gz
- [root@srv6 ~]# cd /usr/java
- [root@srv6 java]# ls
- jdk1.7.0_02
Establecer la ruta JAVA_HOME. Aquí es donde tenemos instalado nuestro JDK anterior.Para su instalación para la sesión actual, puede dictar lo siguiente de la CLI:
- [root@srv6 java]# JAVA_HOME=/usr/java/jdk1.7.0_02
- [root@srv6 java]# export JAVA_HOME
- [root@srv6 java]# PATH=$JAVA_HOME/bin:$PATH
- [root@srv6 java]# export PATH
Para establecer el JAVA_HOME permanentemente, añadir a continuación a cualquiera de los ~ /. Bashrc o ~ /. Bash_profile del usuario (en este caso, la raíz).También podemos añadir que el archivo / etc / profile y luego a dar origen a todos los usuarios.
- JAVA_HOME=/usr/java/jdk1.7.0_02
- export JAVA_HOME
- PATH=$JAVA_HOME/bin:$PATH
- export PATH
- [root@srv6 ~]# echo $JAVA_HOME
- /usr/java/jdk1.7.0_02
Paso 2: Descargar y descomprimir Tomcat 7.0.23
Descargar apache-tomcat-7.0.23.tar.gz Desde esta URL
Guarde el archivo en un directorio. Me estoy guardando a / root/apache-tomcat-7.0.23.tar.gzAntes de continuar, debe verificar la suma de comprobación MD5 para la descarga Tomcat (o cualquier otra descarga).Como nos salvó la descarga Tomcat / root/apache-tomcat-7.0.23.tar.gz, vamos a ir al directorio / root y utilice el comando md5sum
- [root@srv6 ~]# md5sum apache-tomcat-7.0.23.tar.gz
- d8dcd5fb07dd1769d571fdabade9cc68 *apache-tomcat-7.0.23.tar.gz
Comparar la salida anterior a la suma de verificación MD5 Revisar desde aqui para Apache Tomcat MD5 y asegurarse de que coinciden exactamente
Ahora, mueva (mv) o copia (cp) el archivo en el directorio / usr / share:
- [root@srv6 ~]# mv apache-tomcat-7.0.23.tar.gz /usr/share/apache-tomcat-7.0.23.tar.gz
- [root@srv6 ~]# cd /usr/share
- [root@srv6 share ]# tar -xzf apache-tomcat-7.0.23.tar.gz
Paso 3: Configurar Tomcat para ejecutar como un servicio.
Ahora vamos a ver cómo ejecutar Tomcat como un servicio y crear un inicio simple / Parar / Reiniciar secuencia de comandos, así como para iniciar Tomcat en el arranque.Cambie al directorio / etc / init.d y crear un script llamado 'gato', como se muestra a continuación.
- [root@srv6 share]# cd /etc/init.d
- [root@srv6 init.d]# vi tomcat
- #!/bin/bash
- # description: Tomcat Start Stop Restart
- # processname: tomcat
- # chkconfig: 234 20 80
- JAVA_HOME=/usr/java/jdk1.7.0_02
- export JAVA_HOME
- PATH=$JAVA_HOME/bin:$PATH
- export PATH
- CATALINA_HOME=/usr/share/apache-tomcat-7.0.23
- case $1 in
- start)
- sh $CATALINA_HOME/bin/startup.sh
- ;;
- stop)
- sh $CATALINA_HOME/bin/shutdown.sh
- ;;
- restart)
- sh $CATALINA_HOME/bin/shutdown.sh
- sh $CATALINA_HOME/bin/startup.sh
- ;;
- esac
- exit 0
- [root@srv6 init.d]# chmod 755 tomcat
- [root@srv6 init.d]# chkconfig --add tomcat
- [root@srv6 init.d]# chkconfig --level 234 tomcat on
- [root@srv6 init.d]# chkconfig --list tomcat
- tomcat 0:off 1:off 2:on 3:on 4:on 5:off 6:off
- [root@srv6 ~]# service tomcat start
- Using CATALINA_BASE: /usr/share/apache-tomcat-7.0.23
- Using CATALINA_HOME: /usr/share/apache-tomcat-7.0.23
- Using CATALINA_TMPDIR: /usr/share/apache-tomcat-7.0.23/temp
- Using JRE_HOME: /usr/java/jdk1.7.0_02
- Using CLASSPATH: /usr/share/apache-tomcat-7.0.23/bin/bootstrap.jar:/usr/share/apache-tomcat-7.0.23/bin/tomcat-juli.jar
- [root@srv6 ~]# service tomcat stop
- Using CATALINA_BASE: /usr/share/apache-tomcat-7.0.23
- Using CATALINA_HOME: /usr/share/apache-tomcat-7.0.23
- Using CATALINA_TMPDIR: /usr/share/apache-tomcat-7.0.23/temp
- Using JRE_HOME: /usr/java/jdk1.7.0_02
- Using CLASSPATH: /usr/share/apache-tomcat-7.0.23/bin/bootstrap.jar:/usr/share/apache-tomcat-7.0.23/bin/tomcat-juli.jar
- [root@srv6 ~]# service tomcat restart
- Using CATALINA_BASE: /usr/share/apache-tomcat-7.0.23
- Using CATALINA_HOME: /usr/share/apache-tomcat-7.0.23
- Using CATALINA_TMPDIR: /usr/share/apache-tomcat-7.0.23/temp
- Using JRE_HOME: /usr/java/jdk1.7.0_02
- Using CLASSPATH: /usr/share/apache-tomcat-7.0.23/bin/bootstrap.jar:/usr/share/apache-tomcat-7.0.23/bin/tomcat-juli.jar
- Using CATALINA_BASE: /usr/share/apache-tomcat-7.0.23
- Using CATALINA_HOME: /usr/share/apache-tomcat-7.0.23
- Using CATALINA_TMPDIR: /usr/share/apache-tomcat-7.0.23/temp
- Using JRE_HOME: /usr/java/jdk1.7.0_02
- Using CLASSPATH: /usr/share/apache-tomcat-7.0.23/bin/bootstrap.jar:/usr/share/apache-tomcat-7.0.23/bin/tomcat-juli.jar
- [root@srv6 init.d]# more /usr/share/apache-tomcat-7.0.23/logs/catalina.out
http://sudominio.com:8080 o http://suip:8080 y deberíamos ver la página de inicio de Tomcat.
Paso 4: Configuración de Access Manager Tomcat.
Tomcat 7 contiene una serie de cambios que ofrecen un grano más fino-roles.Por razones de seguridad, ningún usuario ni contraseñas se crean para las funciones del gestor de Tomcat de forma predeterminada. En un despliegue de producción, siempre es mejor para quitar la aplicación Manager.Para definir roles, nombre de usuario (s) y contraseña (s), tenemos que configurar el archivo tomcat-users.xml ubicado en $ CATALINA_HOME / conf / tomcat-users.xml.En el caso de nuestra instalación, $ CATALINA_HOME se encuentra en / usr/share/apache-tomcat-7.0.23.Por defecto, el Tomcat 7 tomcat-users.xml tendrá los elementos entre las etiquetas y comentada. .Nuevas funciones para Tomcat 7 oferta de grano fino de acceso y las funciones siguientes están disponibles:
manager-gui
manager-status
manager-jmx
manager-script
admin-gu
admin-script.
Podemos definir el rol manager-gui, por ejemplo, de la siguiente manera
- <tomcat-users>
- <role rolename="manager-gui"/>
- <user username="tomcat" password="secret" roles="manager-gui"/>
- </tomcat-users>
Se debe tener precaución en la concesión, para no varias funciones a la seguridad bajo-mente.
Paso 5 (Oprtional): Administrar el uso de memoria Uso de JAVA_OPTS.
Obtención de los valores de almacenamiento dinámico de memoria adecuados para su instalación dependerá de un número de factores.Para simplificar, vamos a configurar nuestro tamaño de la pila inital, Xms y nuestro tamaño máximo de almacenamiento dinámico, Xmx, con el mismo valor de 128 MbSimliarly, hay varios enfoques que puede tomar en cuanto a dónde y cómo establecer sus JAVA_OPTSUna vez más, para simplificar, vamos a añadir nuestros parámetros de memoria JAVA_OPTS en nuestro fichero Catalina.sh.Por lo tanto, abra el archivo Catalina.sh encuentra en / usr/share/apache-tomcat-7.0.23/bin con un editor de texto o vi.Ya que estamos usando 128 Mb por tanto el tamaño de almacenamiento dinámico inicial y máximo, añada la siguiente línea a Catalina.sh
- JAVA_OPTS="-Xms128m -Xmx128m"
Por lo general sólo tiene que añadir esto en la segunda línea del archivo para que se vea como tal:
- #!/bin/sh
- JAVA_OPTS="-Xms128m -Xmx128m"
- # Licensed to the Apache Software Foundation (ASF) under one or more
- # contributor license agreements. See the NOTICE file distributed with
- # this work for additional information regarding copyright ownership.
- # The ASF licenses this file to You under the Apache License, Version 2.0
- # (the "License"); you may not use this file except in compliance with
- # the License. You may obtain a copy of the License at
Paso 6 (Opcional): Cómo ejecutar Tomcat utilizando mínimamente Priviligaiado (no root) del usuario.En nuestra configuración Tomcat anterior, se está ejecutando Tomcat como referencia.Por razones de seguridad, siempre es mejor correr con los servicios sólo los permisos que sean necesarios.Hay algunos que hacer un caso fuerte de que esto no es necesario, pero siempre es mejor errar en el lado de la precaución.Para ejecutar Tomcat como usuario no root, hay que hacer lo siguiente:1. Crear 'tomcat' del grupo:
- [root@srv6 ~]# groupadd tomcat
- [root@srv6 ~]# useradd -s /bin/bash -g tomcat tomcat
- [root@srv6 ~]# useradd -g tomcat -d /usr/share/apache-tomcat-7.0.23/tomcat tomcat
- [root@srv6 ~]# chown -Rf tomcat.tomcat /usr/share/apache-tomcat-7.0.23/
- #!/bin/bash
- # description: Tomcat Start Stop Restart
- # processname: tomcat
- # chkconfig: 234 20 80
- JAVA_HOME=/usr/java/jdk1.7.0_02
- export JAVA_HOME
- PATH=$JAVA_HOME/bin:$PATH
- export PATH
- CATALINA_HOME=/usr/share/apache-tomcat-7.0.23/bin
- case $1 in
- start)
- /bin/su tomcat $CATALINA_HOME/startup.sh
- ;;
- stop)
- /bin/su tomcat $CATALINA_HOME/shutdown.sh
- ;;
- restart)
- /bin/su tomcat $CATALINA_HOME/shutdown.sh
- /bin/su tomcat $CATALINA_HOME/startup.sh
- ;;
- esac
- exit 0
Paso 7 (Opcional): Cómo ejecutar Tomcat en el puerto 80 como usuario no root.
Nota: el siguiente es aplicable cuando se está ejecutando Tomcat en "stand alone" con Tomcat Tomcat ejecutando bajo el usuario mínimamente privilegiado que hemos creado en el paso anterior.Para ejecutar servicios por debajo del puerto 1024 como un usuario distinto de root, puede añadir lo siguiente a las tablas de PI:
- [root@srv6 ~]# iptables -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080
- [root@srv6 ~]# iptables -t nat -A PREROUTING -p udp -m udp --dport 80 -j REDIRECT --to-ports 8080
Asegúrese de guardar y reiniciar tu IP Tables.Puestos relacionados con Tomcat
URL - Relacionadas con TOMCAT
Más información sobre Apache Tomcat7 Apache Tomcat Foundation Tomcat 7
2 comentarios:
Y funciona ??
Jorge
Y funciona ?
Seguro que si !!!!
Gracias por el detalle.
Resulta que tengo una app compilada con jdk 1.7.0_9 en mi equipo, en cambio en el servidor tiene jdk 1.6.0_22 y estoy buscando como actualizar la versión de jdk en el server con 1.7_xx
Jorge
Publicar un comentario