lunes, 21 de agosto de 2017

Instalar JBoss Application Server en Linux



1.- Descarga de JBoss Application Server (JBoss AS)

wget http://download.jboss.org/jbossas/7.1/jboss-as-7.1.1.Final/jboss-as-7.1.1.Final.zip

2.- Instalación de JAVA JDK

Nota: CentOS por defecto en su instalación base trae Java instalado. se puede verificar con el siguiente comando

# java -version

# rpm -qa | grep jdk

Si no lo tiene instalado se realiza la instalación de la siguiente manera

# yum install java-1.7.0-openjdk

3.- Instalación de JBoss

La intalación a partir del paquete precompilado (binary.zip) es sencilla y se realiza de la siguiente manera

# mv jboss-as-7.1.1.Final.zip /opt
# cd /opt/ && unzip jboss-as-7.1.1.Final.zip
# ln -s /opt/jboss-as-7.1.1.Final /opt/jboss
# ls -l /opt/

4.- Configuración de JBoss

El servidor de aplicaciones no va correr como root, se deben crear usuarios especificos para la ejecución de JBoss

# adduser jboss
# passwd jboss

Configuramos las variables de entorno necesarias para que se pueda ejecutar el servidor de aplicaciones

# su - jboss
$ vi ~/ .bashrc

Las variables necesarias son JAVA_HOME , PATH (Añadir el path de java y de JBoss) y JBOSS_HOME


# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

# User specific aliases and functions

export JAVA_HOME=/usr/lib/jvm/jre-1.7.0-openjdk
export PATH=$PATH:$JAVA_HOME/bin
        
export JBOSS_HOME=/opt/jboss
export PATH=$PATH:$JBOSS_HOME/bin

Se puede recargar las variables de entorno ejecutando

$ bash



source .bashrc

como root, se debe cambiar el propietario del directorio JBoss al nuevo usuario creado

# chown -R jboss.jboss /opt/jboss-as-7.1.1.Final

5.- Iniciar el JBoss

Hay varias modalidades de arrancar el JBoss, se puede inicar una unica instancia en modo (standalone) o como (managed domain)

El standalone: permite una instancia local unica
El managed domain: permite controlar y configurar multiples instancias de JBoss de varias maquinas.


Para arrancar el modo standalone ejecutamos el siguiente comando.
standalone:
# su - jboss
$ $JBOSS_HOME/bin/standalone.sh

managed domain
# su - jboss
$ $JBOSS_HOME/bin/domain.sh

Si todo ha salido bien, la ejecución mostrará lo siguiente:

=========================================================================

  JBoss Bootstrap Environment

  JBOSS_HOME: /opt/jboss

  JAVA: /usr/lib/jvm/jre-1.7.0-openjdk/bin/java

  JAVA_OPTS:  -server -XX:+TieredCompilation -Xms64m -Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Djboss.server.default.config=standalone.xml

=========================================================================

21:46:04,082 INFO  [org.jboss.modules] JBoss Modules version 1.1.1.GA
21:46:06,487 INFO  [org.jboss.msc] JBoss MSC version 1.0.2.GA
21:46:07,130 INFO  [org.jboss.as] JBAS015899: JBoss AS 7.1.1.Final "Brontes" starting
21:46:18,898 INFO  [org.xnio] XNIO Version 3.0.3.GA
21:46:18,951 INFO  [org.jboss.as.server] JBAS015888: Creating http management service using socket-binding (management-http)
21:46:19,451 INFO  [org.xnio.nio] XNIO NIO Implementation Version 3.0.3.GA
21:46:19,638 INFO  [org.jboss.remoting] JBoss Remoting version 3.2.3.GA
21:46:20,265 INFO  [org.jboss.as.configadmin] JBAS016200: Activating ConfigAdmin Subsystem
21:46:20,310 INFO  [org.jboss.as.logging] JBAS011502: Removing bootstrap log handlers
21:46:20,635 INFO  [org.jboss.as.security] (ServerService Thread Pool -- 44) JBAS013101: Activating Security Subsystem
21:46:20,630 INFO  [org.jboss.as.naming] (ServerService Thread Pool -- 38) JBAS011800: Activating Naming Subsystem
21:46:20,632 INFO  [org.jboss.as.osgi] (ServerService Thread Pool -- 39) JBAS011940: Activating OSGi Subsystem
21:46:20,899 INFO  [org.jboss.as.webservices] (ServerService Thread Pool -- 48) JBAS015537: Activating WebServices Extension
21:46:22,029 INFO  [org.jboss.as.security] (MSC service thread 1-2) JBAS013100: Current PicketBox version=4.0.7.Final

[...]
21:46:31,249 INFO  [org.jboss.as.remoting] (MSC service thread 1-2) JBAS017100: Listening on /127.0.0.1:4447
21:46:31,836 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-2) JBAS010400: Bound data source [java:jboss/datasources/ExampleDS]
21:46:32,138 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015951: Admin console listening on http://127.0.0.1:9990
21:46:32,145 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015874: JBoss AS 7.1.1.Final "Brontes" started in 30736ms - Started 133 of 208 services (74 services are passive or on-demand)


La consola de administración y el servicio sólo estan disponibles en local:

21:46:31,249 INFO  [org.jboss.as.remoting] (MSC service thread 1-2) JBAS017100: Listening on /127.0.0.1:4447
21:46:32,138 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015951: Admin console listening on http://127.0.0.1:9990

Para modificar y que escuche por otras IP de la maquina se debe realizar el cambio en el siguiente archivo:

# nano /opt/jboss-as-7.1.1.Final/standalone/configuration/standalone.xml

<interface name="management">
 <inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
 </interface>
 <interface name="public">
 <inet-address value="${jboss.bind.address:127.0.0.1}"/>
 </interface>

Si queremos que escuche por todas las IP:

<interface name="management">
 <inet-address value="${jboss.bind.address.management:0.0.0.0}"/>
 </interface>
 <interface name="public">
 <inet-address value="${jboss.bind.address:0.0.0.0}"/>
 </interface>


miércoles, 12 de julio de 2017

Hyperterminal en Linux


Para las personas que manejan los dispositivos de hardware, tales como el almacenamiento, routers y muchos más utilizando Microsoft Windows, el hiper terminal plazo es una cosa familiar. Ellos usan hiper terminal para conectarse a todos los dispositivos mencionados anteriormente, utilizando un cable serie. Pero lo que si usted tiene que manejar todos los dispositivos usando linux? 

La respuesta es, linux tiene 2 alternativas a la hiper terminal; uno es de línea de comandos basada en y el otro es basado en GUI. Permítanme empezar con la herramienta de línea de comandos primero. Se llama minicom. Puede instalar esta herramienta utilizando el gestor de paquetes de su máquina Linux. En Fedora / RedHat / Debian / CentOS:

 # yum install minicom

Aquí es donde puede configurar la velocidad de transmisión, el dispositivo de serie que desee utilizar, etc Después de terminar con el ajuste, guardarla para que usted no tiene que hacerlo todo el tiempo. Usted puede guardar por defecto. Dfl archivo, con el nombre de. Minirc.dfl en la carpeta de inicio, o puede especificar el nombre y ubicación ustedes mismos. Para cambiar la configuración guardada, sólo tiene que utilizar el comando anterior de nuevo. 

La segunda herramienta se llama cutecom, un terminal serie gráfica. Para instalarlo en Fedora, CentOS, Debian o redhat:

 # yum install cutecom

Es más fácil de usar ya que cuenta con interfaz gráfica de usuario. La imagen siguiente muestra cutecom pantalla principal, donde se puede configurar el dispositivo, paridad, velocidad de transmisión, etc

martes, 27 de junio de 2017

Evitar que wordpress solicite datos ftp al instalar plugin / template / widget



Cuando vamos a instalar varios temas para probar, varios plugins y widgets nos ralentiza bastante el tener que estar introduciendo los datos de ftp para cada uno de los componentes a instalar, para evitarlo podemos probar lo sigiuente.

Editamos el fichero wp-config.php y añadimos esta línea:

define('FS_METHOD', 'direct');



Reinicias el servicio web y listo

Listar conexiones TCP y UDP establecidas


Utilizando la herramienta netstat es posible listar las conexiones TCP y UDP establecidas en un sistema GNU/Linux. De esta manera es posible tener una noción del número de clientes conectados con nuestro servidor. Aunque, jugando un poco con la salida de netstat, también es posible determinar exactamente el número total de conexiones establecidas y el número de clientes únicos por IP.

Listar todas las conexiones TCP y UDP
# netstat -tun


Listar todas las conexiones TCP y UDP con sus procesos y nombre del programa
# netstat -tun -p


Listar todas las conexiones TCP y UDP con sus procesos, nombre del programa y si es establecida
netstat -tun -p | grep EST


Para mostrar solo la cantidad de conexiones establecidas
# netstat -tun -p | grep EST | wc -l



Un cliente puede establecer varias conexiones simultáneamente. Por ejemplo, al momento de cargar una página Web, cada cliente establece varias conexiones en simultáneo con el servidor HTTP, para descargar los recursos de la página en paralelo (y de esta forma acelerar la descarga de la página).
Eliminando los espacios en blanco repetidos y cortando la IP remota (Foreign Address), es posible obtener el listado de clientes únicos (por IP)
# netstat -tun | grep EST | tr -s '[:space:]' | cut -d':' -f2 | cut -d' ' -f2 | sort | uniq

Con la opción -e es posible visualizar información adicional como el ID de usuario y número de i-nodo



Con -s, netstat muestra estadísticas para cada protocolo. Por ejemplo, para ver las estadísticas del protocolo ICMP



miércoles, 14 de junio de 2017

Tipos de Sitemap

Los mapas del sitio no sólo ayudan a los buscadores a encontrar simples páginas, sino también videos, imágenes, noticias y contenidos para móviles.

La extensión del protocolo de Sitemaps admite:

Sitemaps de vídeo – Puedes aumentar las posibilidades de que tus videos sean descubiertos por los buscadores si los incluyes en un mapa del sitio. Los Sitemaps de vídeo te permiten incluir la URL donde se encuentra el video, pero también el título, la descripción la localización del thumbnail.

Sitemaps de imágenes – Al igual que ocurre con los Sitemaps de vídeo, también puedes mejorar la indexación de tus imágenes si las añades a un Sitemap.

Sitemaps de noticias – Permiten controlar el contenido que envías a Google Noticias.

Sitemaps de móviles – Indica la ruta donde se encuentran los contenidos para móviles de tu sitio.

Qué es un Sitemap XML


Sitemap es un archivo escrito en el lenguaje de marcas extensible (extensible Markup Language o XML) que proporciona una lista de las páginas del sitio junto con otros datos. Esta información ayuda a los buscadores a identificar las páginas que pueden rastrear y los caminos que conducen a ellas.

Por ello, cuando tienes problemas para indexar ciertas páginas, un Sitemap hace más probable que el buscador las encuentre y pase a visitarlas, aunque no lo garantiza.

Matt Cutts, jefe del departamento de web spam de Google, lo explica así:

Imagina que tienes en tu sitio las páginas A, B, y C. Nosotros encontramos las páginas A y B mediante el seguimiento natural de tus enlaces. Entonces creas un mapa del sitio con las páginas B y C. Ahora hay una posibilidad (pero no una promesa) de que exploremos la página C. No eliminaremos la página A sólo porque no esté listada en tu Sitemap. Y sólo porque incluiste una página que no conocíamos tampoco garantiza que la vayamos a rastrear.

viernes, 14 de abril de 2017

20 de los comandos imprescindibles para un Sysadmin

/PROC: Como podréis comprobar no es un comando, sí, está en la lista de los 20 que he comentado pero veo muy interesante comentar que aquí se encuentran archivos muy interesantes para el sistema como 'meminfo' o 'cpuinfo' por mencionar un par de ellos, que nos mostrarán información muy relevante sobre los componentes de nuestro equipo. Un simple 'cat' a estos archivos y podremos ver toda la información que contienen sin salir del prompt de la consola.

CACTI: Realizará gráficas de rendimiento en los diferentes dispositivos que envíen información vía SNMP.

FREE: Este comando mostrará el estado y uso de la memoria de nuestro equipo o sistema.

GNOME SYSTEM MONITOR: Monitoriza el rendimiento de nuestro sistema, y nos lo muestra en una interfaz muy amigable.

IOSTAT: Informa de los datos en entrada/salida de nuestra CPU y discos.

IPTRAF: Monitoriza todo el tráfico que entra y sale de nuestro equipo (interfaces, puertos, etc...). Es algo más que un comando, en realidad se trata de una aplicación muy lograda.

JFFNMS: Genera gráficas para monitorizar equipos a gran escala.

MPSTAT: Muy útil para procesadores Multi-Core, ya que permite ver el rendimiento de cada núcleo del procesador de forma independiente. 

NAGIOS: Sistema de monitorización muy versátil, puesto que por la cantidad de comandos que acompañan a la aplicación, y la infinidad de plugins existentes para la misma, se puede llevar el seguimiento de grandes cantidades de equipos, servidores y redes. Además mediante un SMS gateway podremos configurar el sistema para que nos alerte al móvil de cualquier incidencia.

NETSTAT: Muestra las conexiones abiertas en nuestro equipo.

PMAP: Informa sobre el rendimiento de la memoria del sistema, tanto en general como la memoria que consume un proceso concreto.

PS: Muestra los procesos que se están ejecutando en nuestro sistema, y según los parámetros que le pasemos al comando, también el consumo de memoria y procesador de cada uno de los listados.

SAR: Realiza reportes de la actividad del sistema.

SS: Muestra diferentes estadísticas de los sockets de nuestro equipo. Su función es similar a Netstat.

STRACE: Realiza debugs de servidores web, Apache, Httpd, lighthttp, entre otros.

TCPDUMP: Muestra todo el tráfico que circula por un puerto concreto en tiempo real.

TOP: Nos informa en tiempo real del estado de nuestro servidor. Por defecto si no le pasamos ningún parámetro nos mostrará el uso de CPU, con un muestreo cada 5 segundos.

UPTIME: Muestra información similar a la del comando TOP, además de otros datos interesantes como el tiempo que lleva encendido el equipo, la carga de procesos, el número de usuarios, etc.

VMSTAT: Informa del estado del equipo o sistema, tanto el hardware como los procesos que se están ejecutando, y todo en tiempo 'casi' real.

W: Muestra qué usuarios están conectados al equipo y además, podremos saber qué están haciendo en ese momento.