Intalación de un Servidor ( SSH + Apache Web+ tomcat + Postgres)
Instalación de un servidor.
- Instalamos los repositorios universe
sudo gedit /etc/apt/sources.list
- Instalamos ssh
- Instalamos Java 1.5
Instalo las herramientas para empaquetar los deb
apt-get install java-package
fakeroot make-jpkg jre-1_5_0_06-linux-i586.bin
Instalo el paquete recien creado
dpkg -i sun-j2re1.5_1.5.0+update06_i386.deb
otra posiblidad es vajarlo directamente del apt-get
sudo apt-get install sun-java5-jdk
Configuramos esta versión de java como versión por defecto:
sudo update-alternatives --config java
Configuramos la variable de entorno JAVA_HOME ( es opcional para el tomcat, ya que este puede configurar su provia JAVA_HOME en /etc/default/tomcat5
sudo vi /etc/profile
export JAVA_HOME= /usr/lib/j2sdk1.5-sun/
- Instalamos apache
- Instalamos tomcat
Al terminar el apt-get muestra lo siguiente
Configurando tomcat5 (5.0.30-9) ...
Añadiendo usuario del sistema tomcat5...
Adding new user `tomcat5' (109) with group `nogroup'.
Not creating home directory `/usr/share/tomcat5'.
Installing /var/lib/tomcat5/webapps/ROOT/WEB-INF/web.xml.
Installing /var/lib/tomcat5/conf/tomcat-users.xml.
Installing /var/lib/tomcat5/conf/jk2.properties
Starting Tomcat 5 servlet engine using Java from /usr/lib/kaffe: tomcat5.
Por defecto el script de instalación utiliza Kaffe en vez de JDK 1.5. el script de inicio del servicio utiliza el fichero /etc/default/tomcat5 para recuperar las variables de entorno por defecto, aqui modidifamos el JAVA_JOME y el uso de memoria y el renderizado sin utilizar las X.
sudo vi /etc/default/tomcat5
en mi caso
JAVA_HOME=/usr/lib/j2sdk1.5-sun
CATALINA_OPTS="-Djava.awt.headless=true -Xmx128M -server"
reinicio tomcat para comprobar
sudo /etc/init.d/tomcat5 stop
sudo /etc/init.d/tomcat5 start
Cuando se inicia por defecto escucha en el puerto 8180
- Integración tomcat apache.
sudo apt-get install libapache2-mod-jk
y su documentación
sudo apt-get install libapache-mod-jk-doc
reiniciamos apache para que se lean los cambios
sudo /etc/init.d/apache2 force-reload
Deberiamos de tener modulo en /usr/lib/apache2/modules/mod_jk.so
- Configuración de Apache para que utilice Tomcat
Vamos a utilzar la instalación que genera automáticamente tomcat, aunque necesitamos editar elfichero worker.properties
sudo vi /etc/apache2/mods-enabled/workers.properties
workers.tomcat_home=/usr/share/tomcat5
workers.java_home=/usr/local/tools/java
ps=/worker.list=default
worker.default.port=8009
worker.default.host=localhost
worker.default.type=ajp13
worker.default.lbfactor=1
Lo siguiente es añadir las opciones apropiadas al modjk.
Para ello editamos el fichero
sudo vi /etc/apache2/mods-enabled/jk.load
LoadModule jk_module /usr/lib/apache2/modules/mod_jk.so
## Opciones de mod_jk#
JkWorkersFile "mods-enabled/workers.properties"
JkLogFile "/var/log/apache2/mod_jk.log"
JkLogLevel error
JkMount /ejemplo default
JkMount /ejemplo/* default
Con esto hacemos que apache redireccione a tomcat la aplicación ejemplo.
verificamos que la configturación funciona correctamente
./apachectl configtest
sudo ./apachectl start o /etc/init.d/apache2 start
- Instalación de Postgres
Nos descargamos e instalamos los binarios.
sudo apt-get install postgresql-8.1
sudo apt-get install postgresql-contrib-8.1 ( para solucionar poblemas con versiones anteriores)
sudo apt-get install pgadmin3 pgadmin3-data
- Configuración de Postgres
Configuramos el acceso de almenos un usuario ej :"iad" ( con permisos para todo)
sudo su postgres -c createuser iad
sudo su postgres -c createdb iad_cursos
Entramos en la base de datos recien creada y le cambiamos el password al usuario
sudo su postgres -c psql iad_cursos
ALTER USER iad WITH PASSWORD 'qwerty.iad';
\q
Para poder acceder al postgress desde otras máquinas:
sudo vi /etc/postgresql/8.0/main/postgresql.conf
#listen_addresses = 'localhost' por
listen_addresses = '*'
#password_encryption = on por
password_encryption = on
( el puerto al que hay que conectarse sera el 5433 )
Por ultimo determinamos que ips estan admintidas, configuramos para que puedan entrar todos los ordenadores que esten en la misma subred
sudo vi /etc/postgresql/8.1/main/pg_hba.conf
# Configuracion para que pueda acceder cualquier maquina de la subred
host all all 192.168.1.0/24 md5
Reinicio la base de datos
sudo /etc/init.d/postgresql-8.1 restart
font>y el sistema ya esta listo para admitir conexiones remotas.
