martes 23 de diciembre de 2008

[kr08] Verificar el estado de los puertos TCP-UDP

Equipo de pruebas
Debian GNU Linux Etch 4
Laptop DELL Vostro 1400 Intel Celeron 540 1.8G6Hz/1GB

Tenía la necesidad de iniciar el softphone Twinkle para hacer unas pruebas en Asterisk, pero me salía un mensaje informando que otra aplicación estaba ocupando en puerto SIP 5060. Debido a esto, fue necesario verificar qué aplicación estaba haciendo uso de dicho puerto.
# netstat -lnp | grep 5060
tcp 0 0 192.168.117.44:5060 0.0.0.0:* LISTEN 2534/ser
tcp 0 0 127.0.0.1:5060 0.0.0.0:* LISTEN 2534/ser
udp 0 0 192.168.117.44:5060 0.0.0.0:* 2534/ser
udp 0 0 127.0.0.1:5060 0.0.0.0:* 2534/ser

Terminar la aplicación o proceso que hace uso del puerto, una vez se haya verificado cuál era; en este caso, es el SIP server SER.
# ps aux | grep "ser"
root 131 0.0 0.0 0 0 ? S< 14:57 0:00 [kseriod]
ser 2534 0.0 0.2 36916 2880 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2537 0.0 0.0 36916 672 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2538 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2539 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2540 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2541 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2542 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2543 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2544 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2545 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2546 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2547 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2548 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2549 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2550 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2551 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2552 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2553 0.0 0.0 36916 492 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2554 0.0 0.0 36916 524 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2555 0.0 0.0 36916 476 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2556 0.0 0.0 36916 476 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2557 0.0 0.0 36916 476 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2558 0.0 0.0 36916 476 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2559 0.0 0.0 36916 476 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2560 0.0 0.0 36916 476 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2561 0.0 0.0 36916 476 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2562 0.0 0.0 36916 476 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
ser 2563 0.0 0.0 36916 488 ? S 14:58 0:00 /usr/sbin/ser -P /var/run/ser/ser.pid -u ser -g ser
krtapas 2926 0.0 0.3 31940 3100 ? Ssl 14:59 0:00 /usr/lib/bonobo-activation/bonobo-activation-server --ac-activate --ior-output-fd=16
krtapas 2968 0.0 0.6 75624 6996 ? Sl 14:59 0:00 /usr/lib/evolution/evolution-data-server-2.22 --oaf-activate-iid=OAFIID:GNOME_Evolution_DataServer_CalFactory:1.2 --oaf-ior-fd=21
root 3040 0.0 0.2 15556 3016 ? Ssl 14:59 0:00 /usr/lib/bonobo-activation/bonobo-activation-server --ac-activate --ior-output-fd=17

Puesto que estaba corriendo como un servicio, es posible detenerlo con la siguiente línea de comandos.
# /etc/init.d/ser stop
Stopping ser: ser

Finalmente se verifica que el puerto haya sido liberado
# netstat -lnp | grep 5060
#

Enlaces relacionados

Read More......

[kr07] Configurar múltiples interfaces de red

Equipo de pruebas
Linux CentOS Server 5.2
Servidor Proliant ML115 AMD Opteron 2.6Ghz/64b

El servidor funciona como un IP-PBX con Asterisk y posee dos interfaces de red. La eth0 se encuentra en la red privada del proveedor y tiene asociadas dos VLAN; la eth1 se encuentra en la red privada del cliente y no presenta ninguna configuración especial.

Inicialmente se configura la interfaz eth0 para soportar las VLANs con ID=8 e ID=202. Primero la VLAN con ID=8.
# cd /etc/sysconfig/network-scripts
# cp ifcfg-eth0 ifcfg-eth0.8
# vim ifcfg-eth0.8

Se agrega la información correspondiente a la subinterfaz de red; realizar los cambios de acuerdo con su configuración.
# Broadcom Corporation NetXtreme BCM5721 Gigabit Ethernet PCI Express
DEVICE=eth0.8
VLAN=yes
BOOTPROTO=static
IPADDR=172.30.12.20
NETMASK=255.255.248.0
ONBOOT=yes

Para la VLAN con ID=202.
# cd /etc/sysconfig/network-scripts
# cp ifcfg-eth0 ifcfg-eth0.202
# vim ifcfg-eth0.202

Se agrega la información correspondiente a la subinterfaz de red
# Broadcom Corporation NetXtreme BCM5721 Gigabit Ethernet PCI Express
DEVICE=eth0.202
BOOTPROTO=static
IPADDR=10.172.1.1
NETMASK=255.255.255.0
VLAN=yes
ONBOOT=yes

Posteriormente se procede con la configuración de la interfaz eth1 para tener gestión a través de la red privada del cliente
# vim /etc/sysconfig/network-scripts/ifcfg-eth1
# Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+
DEVICE=eth1
BOOTPROTO=static
IPADDR=10.5.100.94
NETMASK=255.255.0.0
ONBOOT=yes

Una vez configuradas las interfaces se reinicia el servicio de red y se verifica su asignación con el comando ifconfig. Para CentOs basta con un
service network restart

Luego de tener el direccionamiento asignado, se crean las tablas de enrutamiento para las redes que se desean alcanzar con cada una de las interfaces.
Interfaz para telefonía IP
# echo 1 VOIP >> /etc/iproute2/rt_tables

Interfaz para administración del proveedor
# echo 2 ADMIN >> /etc/iproute2/rt_tables

Red local del cliente
# echo 3 LAN >> /etc/iproute2/rt_tables

Agregar a las tablas las reglas de enrutamiento y las rutas. El camino por defecto es el enrutador en cada red; las reglas agregadas son las redes a las cuales se quiere llegar a través del enrutador por defecto.
Para la red de telefonía IP.
# ip route add default via 10.172.1.2 dev eth0.202 table VOIP
# ip rule add from 10.172.1.0/24 table VOIP

Para la red de administración del proveedor no se establece una ruta por defecto puesto que esta red no necesita salir a otras redes.

Para la red local del cliente
# ip route add default via 10.5.100.106 dev eth1 table LAN
# ip rule add from 10.5.0.0/16 table LAN

Crear el script para ejecución automática en CentOS agregando la entrada en el archivo /etc/rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local
sh /root/scripts/iptables.sh


Enlaces relacionados

Read More......
 
Template design by Amanda @ Blogger Buster
Template improved by cartapas@gmail.com