El Network Manager es el administrador de las conexiones de Ubuntu
Su fichero de configuracion se encuentra en la ruta /etc/NetworkManager/NetworkManager.conf
----
[main]
plugins=ifupdown,keyfile
[ifupdown]
managed=false
[device]
wifi.scan-rand-mac-address=no
----
Cada dispositivo que el Network Manager administra es configurado mediante una conexión cuyo archivo es guarda en /etc/NetworkManager/system-connections/[nombre de la conexion]
/etc/NetworkManager/system-connections/LAN en PC Cliente para la iface enp0s3
----
[connection]
id=LAN
uuid=150ada1a-6db9-3c62-b7cd-e934bc979568
type=ethernet
autoconnect-priority=-999
interface-name=enp0s3
permissions=
timestamp=1538758218
[ethernet]
mac-address=08:00:27:00:03:01
mac-address-blacklist=
[ipv4]
address1=192.168.100.11/24,192.168.100.254
dns=192.168.100.11;192.168.100.254;8.8.8.8;8.8.4.4;
dns-search=aulaser.com
method=manual
----
Configurado de manera manual con
IP 192.168.100.11
mascara /24
puerta de enlace 192.168.100.254
servidores DNS locales y de google
y dominio de busqueda el dominio local de la entidad: aulaser.com
En el caso de que se hubieran definido rutas apareceria en la seccion [ipv4] la variable routeX=bloque_IPs,via,metrica
Ejemplo: route1=10.0.116.0/24,192.168.100.116,100
Para una interfaz configurada de manera automatica por DHCP
method=auto
Y si solo queremos que nos propociones IP mascara y gateway pero no servidores DNS ademas:
ignore-auto-dns=true
Dispone de una interfaz de linea de comandos NMCLI
Servicios de Red y de Internet
miércoles, 14 de noviembre de 2018
El comando ip
Nuevo comando para obtener informacion de nuestras interfaces.
Para ver nuestras intefaces de red y su MAC
>ip link
>ip link show enp0s3
Para ver las direcciones de red configuradas en las interfaces (links)
>ip address
>ip address show dev enp0s3
>ip address show scope link
Para ver las rutas
>ip route
>ip route list dev enp0s3
Junto con el comando tracepath
>tracepath servidor.aulaser.com
>tracepath 192.168.112.13
Para ver nuestras intefaces de red y su MAC
>ip link
>ip link show enp0s3
Para ver las direcciones de red configuradas en las interfaces (links)
>ip address
>ip address show dev enp0s3
>ip address show scope link
Para ver las rutas
>ip route
>ip route list dev enp0s3
Junto con el comando tracepath
>tracepath servidor.aulaser.com
>tracepath 192.168.112.13
martes, 13 de noviembre de 2018
Configuracion mediante ficheros de las intefaces de red
Archivo /etc/network/interfaces
iface eth1 inet static
address 192.168.1.41
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255 gateway 192.168.1.1
dns-nameserver 8.8.8.8
dns-search [dominio local]
Archivo /etc/resolv.conf (no se edita, se escribe por el programa resolvconf)
search [dominio local]
nameserver [IP servidor DNS]
Aplicar la configuración reiniciando la red:
/etc/init.d/networking restart
En version 18
editar el fichero /etc/netplan/01-network-manager-all.yaml
-----------
network:
version: 2
renderer: networkd
ethernets:
enp0s3:
dhcp4: no
dhcp6: no
addresses: [192.168.100.123/24]
gateway4: 192.168.100.254
nameservers:
addresses: [192.168.100.254,8.8.8.8]
-------------
Ejecutar
>sudo netplan apply
y comprobar
>systemctl status systemd-networkd
>ip address show dev enp0s3
Para comprobar servidores DNS
>systemd-resolve --status
Se guardan en el archivo /run/systemd/resolve/resolv.conf
Aunque en /etc/resolv.conf indica 127.0.0.53 que luego hace forward a estos primeros
Fuentes:
https://www.solusan.com/etcnetworkinterfaces-de-un-plumazo.html
https://www.todavianose.com/configurar-interface-de-red-en-versiones-de-ubuntu-17-10-o-superiores/
https://askubuntu.com/questions/1031709/ubuntu-18-04-switch-back-to-etc-network-interfaces
https://www.administradortotal.net/sistemas/linux/configurar-la-red-ubuntu-18-04-derivados/
https://aprendiendoavirtualizar.com/configurar-ip-estatica-en-ubuntu-server/
https://aprendiendoavirtualizar.com/configurar-ip-estatica-en-ubuntu-server-18-04/
https://websiteforstudents.com/configure-static-ip-addresses-on-ubuntu-18-04-beta/
https://www.techrepublic.com/article/how-to-set-dns-nameservers-in-ubuntu-server-18-04/
iface eth1 inet static
address 192.168.1.41
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255 gateway 192.168.1.1
dns-nameserver 8.8.8.8
dns-search [dominio local]
Archivo /etc/resolv.conf (no se edita, se escribe por el programa resolvconf)
search [dominio local]
nameserver [IP servidor DNS]
Aplicar la configuración reiniciando la red:
/etc/init.d/networking restart
En version 18
editar el fichero /etc/netplan/01-network-manager-all.yaml
-----------
network:
version: 2
renderer: networkd
ethernets:
enp0s3:
dhcp4: no
dhcp6: no
addresses: [192.168.100.123/24]
gateway4: 192.168.100.254
nameservers:
addresses: [192.168.100.254,8.8.8.8]
-------------
Ejecutar
>sudo netplan apply
y comprobar
>systemctl status systemd-networkd
>ip address show dev enp0s3
Para comprobar servidores DNS
>systemd-resolve --status
Se guardan en el archivo /run/systemd/resolve/resolv.conf
Aunque en /etc/resolv.conf indica 127.0.0.53 que luego hace forward a estos primeros
Fuentes:
https://www.solusan.com/etcnetworkinterfaces-de-un-plumazo.html
https://www.todavianose.com/configurar-interface-de-red-en-versiones-de-ubuntu-17-10-o-superiores/
https://askubuntu.com/questions/1031709/ubuntu-18-04-switch-back-to-etc-network-interfaces
https://www.administradortotal.net/sistemas/linux/configurar-la-red-ubuntu-18-04-derivados/
https://aprendiendoavirtualizar.com/configurar-ip-estatica-en-ubuntu-server/
https://aprendiendoavirtualizar.com/configurar-ip-estatica-en-ubuntu-server-18-04/
https://websiteforstudents.com/configure-static-ip-addresses-on-ubuntu-18-04-beta/
https://www.techrepublic.com/article/how-to-set-dns-nameservers-in-ubuntu-server-18-04/
Network Manager Comand Line Interface - nmcli
Terminos:
Dispositivo: Interfaz de red (link o device)
Conexión: Conjunto de opciones de configuración establecidas (connection)
Ver informacion general de las intefaces de red
>nmcli
>nmcli device show [nombre de interfaz]
>nmcli device show enp0s3
Averiguar las conexiones disponibles
>nmcli connection show
Obtener detalles de una conexión especifica
>nmcli connection show [nombre_conexión]
Obtener información del estado de los dispositivos (si están administrador o no por networkmanager)
>nmcli device status
Añadir una conexión
1. Automatica por DHCP
nmcli connection add con-name "[nombre-conexión]" type [ethernet | loopback] ifname [nombre_dispositivo]
2. Estatica
nmcli connection add con-name "[nombre-conexión]" type [ethernet | loopback] ifname [nombre_dispositivo] autoconect no ip4 x.y.z.w gw4 x.y.z.w
Modificar una conexión
1. Indicar un DNS
nmcli connection modify "[nombre_conexion] ipv4.dns 8.8.8.8
Aplicar los cambios en una configuración de una conexión
nmcli connection update [nombre_conexion]
Ejemplos:
1. Modificar el hostname de una conexión enp0s3 (nombre de con y de dispositivo)
nmcli con modify enp0s3 ipv4.dhcp-hostname 'hostname'
ffvfvf
Fuentes:
https://www.unixmen.com/basics-networkmanager-command-line-tool-nmcli/
https://bbs.archlinux.org/viewtopic.php?id=195388
Dispositivo: Interfaz de red (link o device)
Conexión: Conjunto de opciones de configuración establecidas (connection)
Ver informacion general de las intefaces de red
>nmcli
>nmcli device show [nombre de interfaz]
>nmcli device show enp0s3
Averiguar las conexiones disponibles
>nmcli connection show
Obtener detalles de una conexión especifica
>nmcli connection show [nombre_conexión]
Obtener información del estado de los dispositivos (si están administrador o no por networkmanager)
>nmcli device status
Añadir una conexión
1. Automatica por DHCP
nmcli connection add con-name "[nombre-conexión]" type [ethernet | loopback] ifname [nombre_dispositivo]
2. Estatica
nmcli connection add con-name "[nombre-conexión]" type [ethernet | loopback] ifname [nombre_dispositivo] autoconect no ip4 x.y.z.w gw4 x.y.z.w
Modificar una conexión
1. Indicar un DNS
nmcli connection modify "[nombre_conexion] ipv4.dns 8.8.8.8
1. Añadir un DNS (ademas del que había)
nmcli connection modify "[nombre_conexion] +ipv4.dns 8.8.4.4
3. Añadir otra dirección IP
-ip4.addresses x.y.z.w
Aplicar los cambios en una configuración de una conexión
nmcli connection update [nombre_conexion]
Ejemplos:
1. Modificar el hostname de una conexión enp0s3 (nombre de con y de dispositivo)
nmcli con modify enp0s3 ipv4.dhcp-hostname 'hostname'
ffvfvf
Fuentes:
https://www.unixmen.com/basics-networkmanager-command-line-tool-nmcli/
https://bbs.archlinux.org/viewtopic.php?id=195388
Evitar que NM controle una interfaz de red
El NetworkManager es un servicio que se encarga de administrar las conexiones de red del equipo. Pero solamente se encargá de aquellas que le dejemos que administre.
Cuando una conexión de red está administrada por NetworkManager su configuración no se obtiene de los ficheros de configuración estándares del sistema. Para configurar la tarjeta de red tendremos que hacerlo mediante el applet del NetworkManager, o es su defecto mediante la CLI con el comando nmcli
Existen varias maneras para indicar al NetworkManager que no queremos que una conexión sea administrada por este.
Una de ellas consiste en definir la configuración de la interfaz en el fichero de configuración de las interfaces de red /etc/network/interfaces
Fuentes:
https://websetnet.net/disable-network-manager-linux/
http://support.qacafe.com/knowledge-base/how-do-i-prevent-network-manager-from-controlling-an-interface/
https://askubuntu.com/questions/266767/how-to-stop-networkmanager
https://people.freedesktop.org/~lkundrak/nm-docs/nmcli-examples.html
https://enavas.blogspot.com/2016/07/evitar-que-network-manager-controle.html
Cuando una conexión de red está administrada por NetworkManager su configuración no se obtiene de los ficheros de configuración estándares del sistema. Para configurar la tarjeta de red tendremos que hacerlo mediante el applet del NetworkManager, o es su defecto mediante la CLI con el comando nmcli
Existen varias maneras para indicar al NetworkManager que no queremos que una conexión sea administrada por este.
Una de ellas consiste en definir la configuración de la interfaz en el fichero de configuración de las interfaces de red /etc/network/interfaces
Fuentes:
https://websetnet.net/disable-network-manager-linux/
http://support.qacafe.com/knowledge-base/how-do-i-prevent-network-manager-from-controlling-an-interface/
https://askubuntu.com/questions/266767/how-to-stop-networkmanager
https://people.freedesktop.org/~lkundrak/nm-docs/nmcli-examples.html
https://enavas.blogspot.com/2016/07/evitar-que-network-manager-controle.html
Cliente de DHCP
El cliente de DHCP se invoca mediante la orden dhclient.
El comportamiento del cliente de DHCP se puede configurar mediante el fichero de configuración /etc/dhcp/dhclient.conf.
Si comentamos con un # la linea
#send host-name = gethostname();
El cliente no enviará su hostname y será la configuración del servidor DHCP la que tendrá que proporcionarlo.
>sudo dhclient -v
>sudo dhclient -r
No obstante, NetworkManager creará un archivo en /var/lib/NetworkManager con nombre dhclient-enp0sN.conf con una mezcla de sus opciones más las de el fichero estandar.
El archivo /var/lib/dhcp/dhclient.leases contiene la informacion de las últimas concesiones realizadas por el servidor para que el que cuando el cliente se inicia pida renovarlas al servidor.
El network manager no usa este achivo de configuracion directamente, usa sin embargo este otro:
/var/lib/NetworkManager/dhclient-[conection.uuid]-enp0sN.lease
Mediante este comando podremos hacer que se envie el hostname o no si estamos usando Networkmanager
>nmcli con modify "LAN" ipv4.dhcp-send-hostname FALSE
y con este ver los resultados
Si no queremos que el nm administre nuestra interfaz debemos editar el archivo de configuración de las interfaces de red /etc/network/interfaces.
Si lo que queremos es que la configuración de red sea automática por dhcp entonces el archivo debe contener la siguiente línea:
iface enp0s3 inet dhcp
Además debemos reiniciar el servicio network-manager mediante el comando
/etc/init.d/network-manager restart
Fuentes:
https://askubuntu.com/questions/151958/how-to-make-dhclient-forget-its-last-dhcp-lease
https://wiki.gnome.org/Projects/NetworkManager
https://bbs.archlinux.org/viewtopic.php?id=195388
El comportamiento del cliente de DHCP se puede configurar mediante el fichero de configuración /etc/dhcp/dhclient.conf.
Si comentamos con un # la linea
#send host-name = gethostname();
El cliente no enviará su hostname y será la configuración del servidor DHCP la que tendrá que proporcionarlo.
>sudo dhclient -v
>sudo dhclient -r
No obstante, NetworkManager creará un archivo en /var/lib/NetworkManager con nombre dhclient-enp0sN.conf con una mezcla de sus opciones más las de el fichero estandar.
El archivo /var/lib/dhcp/dhclient.leases contiene la informacion de las últimas concesiones realizadas por el servidor para que el que cuando el cliente se inicia pida renovarlas al servidor.
El network manager no usa este achivo de configuracion directamente, usa sin embargo este otro:
/var/lib/NetworkManager/dhclient-[conection.uuid]-enp0sN.lease
Mediante este comando podremos hacer que se envie el hostname o no si estamos usando Networkmanager
>nmcli con modify "LAN" ipv4.dhcp-send-hostname FALSE
y con este ver los resultados
Si no queremos que el nm administre nuestra interfaz debemos editar el archivo de configuración de las interfaces de red /etc/network/interfaces.
Si lo que queremos es que la configuración de red sea automática por dhcp entonces el archivo debe contener la siguiente línea:
iface enp0s3 inet dhcp
Además debemos reiniciar el servicio network-manager mediante el comando
/etc/init.d/network-manager restart
Fuentes:
https://askubuntu.com/questions/151958/how-to-make-dhclient-forget-its-last-dhcp-lease
https://wiki.gnome.org/Projects/NetworkManager
https://bbs.archlinux.org/viewtopic.php?id=195388
Configurar Webmin para la version 4.4.3 del servidor DHCP de ISC
El boton de start del módulo de configuración para DHCP de Webmin parece no funcionar, pero en realidad el problema está en que en el módulo no está bien configurada la ruta al fichero PID del proceso dhcpd
Por lo tanto, hay que cambiarlo por
/run/dhcp-server/dhcpd.pid
Podemos averiguar el estado actual en el que se encuentra el servicio DHCP mediante el comando
/etc/inid.d/isc-dhcp-server status
y comprobar si el servicio se encuentra en ejecución o por el contrario, se encuentra detenido.
Por lo tanto, hay que cambiarlo por
/run/dhcp-server/dhcpd.pid
Podemos averiguar el estado actual en el que se encuentra el servicio DHCP mediante el comando
/etc/inid.d/isc-dhcp-server status
y comprobar si el servicio se encuentra en ejecución o por el contrario, se encuentra detenido.
jueves, 18 de octubre de 2018
Reenvio de puertos (Port forwarding) en Ubuntu mediante iptables
El reenvío de puertos permite acceder a equipos que están situados detrás de la interfaz LAN o interna de un router. Este router está realizando traducción de direcciones IP origen (NAT) porque las direcciones IP del segmento interno usan direccionamiento IP privado. Gracias a ello los equipos con dirección IP privado pueden establecer conexiones con equipos externos en la Internet, dado que el equipo remoto contactado responde a la IP Publica de la interfaz WAN o externa del router.
La finalidad del Port Forwarding es justo la contraria, permitir que sea un equipo exterior el que pueda contactar con algún servicio de un equipo del segmento interno de la red. Para ello, el equipo externo intentará establecer una conexión usando la IP publica del router y especificando un puerto (externo). El router debe redirigir este trafico que ha recibido en dicho puerto. Esto se hará especificando la IP del equipo donde está el servicio y el puerto (interno) en el que escucha el servicio dentro de esa máquina.
Para configurar el equipo que hace de router en un sistema Linux se realiza mediante IP Tables.
La regla se debe aplicar a la tabla NAT en la cadena PREROUTING. La condición de los paquetes es que lleguen por la interfaz WAN y que vengan dirigidos al puerto externo que queremos redirigir. La acción a realizar se especifican mediante una acción de tipo DNAT indicando la IP destino (la del equipo destino de la redirección) y el puerto de destino.
Ejemplo:
Permitir una conexión a Webmin de un equipo interno que tiene IP 192.168.1.2
Redirigir el trafico que llegue al puerto 3000 del router al puerto 10000 (Webmin) de la maquina con IP 192.168.1.2
Explicar con iptables
Tambien se puede hacer mediante ssh
Asi:
https://help.ubuntu.com/community/SSH/OpenSSH/PortForwarding
Fuentes:
https://askubuntu.com/questions/751467/forward-port-to-local-ip-port
Esta podria ser util tambien
https://askubuntu.com/questions/320121/simple-port-forwarding
La finalidad del Port Forwarding es justo la contraria, permitir que sea un equipo exterior el que pueda contactar con algún servicio de un equipo del segmento interno de la red. Para ello, el equipo externo intentará establecer una conexión usando la IP publica del router y especificando un puerto (externo). El router debe redirigir este trafico que ha recibido en dicho puerto. Esto se hará especificando la IP del equipo donde está el servicio y el puerto (interno) en el que escucha el servicio dentro de esa máquina.
Para configurar el equipo que hace de router en un sistema Linux se realiza mediante IP Tables.
La regla se debe aplicar a la tabla NAT en la cadena PREROUTING. La condición de los paquetes es que lleguen por la interfaz WAN y que vengan dirigidos al puerto externo que queremos redirigir. La acción a realizar se especifican mediante una acción de tipo DNAT indicando la IP destino (la del equipo destino de la redirección) y el puerto de destino.
Ejemplo:
Permitir una conexión a Webmin de un equipo interno que tiene IP 192.168.1.2
Redirigir el trafico que llegue al puerto 3000 del router al puerto 10000 (Webmin) de la maquina con IP 192.168.1.2
Explicar con iptables
Tambien se puede hacer mediante ssh
Asi:
https://help.ubuntu.com/community/SSH/OpenSSH/PortForwarding
Fuentes:
https://askubuntu.com/questions/751467/forward-port-to-local-ip-port
Esta podria ser util tambien
https://askubuntu.com/questions/320121/simple-port-forwarding
viernes, 19 de enero de 2018
Instalación de Apache Web Server
Podemos instalar el servidor web Apache desde webmin. Para ello, desplegaremos la opción Unused modules>Apache Webserver
y hacemos click en el enlace para iniciar la instalación
o desde la linea de comandos
>sudo apt-get update
>sudo apt-get install apache2
Al instalar se crean:
- Los archivos de configuración.
- El usuario www-data dentro del grupo tambien llamado www-data.
- La carpeta /var/www
Comprobar que se ha creado el usuario www-data y el grupo del mismo nombre.
>cat /etc/passwd | grep www-data
y el grupo
>cat /etc/group| grep www-data
Mediante el usuario y el grupo www-data se ejecutan los procesos hijos de apache que se encargan de atender peticiones.
Comprobar que
Se ha creado el directorio /var/www
Su propietario es root y grupo root
Este es el directorio raiz del "servidor virtual por defecto".
>ls -l /var/www
Iniciar el servidor apache
Para iniciar el servicio, como cualquier otro servicio de ubuntu utlizamos el siguiente comando:
>/etc/init.d/apache2 start (o service apache2 start)
y para comprobar el estado
>>/etc/init.d/apache2 status
El servidor se iniciará correctamente, podemos comprobarlo leyendo el fichero de registro de eventos des sistema, aunque nos dará un pequeño error, el cual consiste en que no puede determinar el nombre del equipo.
>cat /var/log/syslog | grep apache2
La opción Others>System and Server Status de Webmin también nos permite saber el estado en que se encuentran nuestros servicios, entre ellos Apache.
Para iniciar y detener el servidor apache tambien podemos usar el script apachectl de la siguiente manera
>sudo apachectl start
>sudo apachectl stop
Haciendolo de esta manera obtenemos información que apache envia al syslog, pues también no saca esta misma infomacion directamente por el terminal.
Podemos apreciar el error antes comentado y la forma de solucionarlo (más tarde)
Comprobamos que se han creado los directorios y archivos de configuración en la carpeta /etc/apache2
Consultamos su contenido
/etc/apache2/apache2.conf
/etc/apache2/ports.conf
/etc/apache2/envars
Comprobar los subdirectorios
Directorios de configuración de módulos disponibles y habilitados
/etc/apache2/mod-available
/etc/apache2/mods-enabled
Directorios de configuración de sitios (o servidores) virtuales
/etc/apache2/sites-available
/etc/apache2/sites-enabled
Directorios de configuraciones
/etc/apache2/conf-available
/etc/apache2/conf-enabled
Comprobar que el proceso está en ejecución, es decir, que el servidor esta iniciado.
>ps -ef \ grep apache
Las opciones utilizadas corresponden a:
-e para ver todos los procesos
-f (full) para ver la informacion completa de cada proceso
Desde Webmin también podemos visualizar procesos en ejecución desde la opción System>Running Processes
Para buscar procesos tenemos varias opciones dependiendo de la caja de texto que seleccionemos marcado el boton de radio a su lado.
Por ejemplo, matching y escribiendo "apache" o Using Port y escribiendo 80.
Observar que existen varios procesos iniciados por apache2
Uno de ellos es el proceso padre cuyo propietario es root, y el resto son los procesos hijos o trabajadores, creados para atender peticiones y su propietario es www-data.
Podemos saber que son procesos hijos fijandonos en la tercera columna, que nos dice su PPID, el ID de proceso del proceso padre y vemos que coincide con el PID del primero proceso de la lista.
Tambien mediante Wemin podemos hacer click en el PID de un proceso hijo para ver una pagina de detalle del proceso y fijarnos donde dice parent process. A continuación, hacer click en este enlace y ver que nos lleva a lainfo del proceso padre.
Comprobar que el servidor está escuchando en el puerto TCP 80.
>netstat -ltn
En este caso las opciones utilizadas son las siguientes:
-l para mostrar los sockets que estan a la escucha (listening)
-t para quedanos con aquellos que usan el protocolo TCP
-n para que no resuelva nombres y nos muestre numeros (IPs, puertos, etc)
Podemos ver la diferencia entre el uso de la opcion -n o no.
En este caso, como webmin no tiene una opción específica para ver esta información debemos hacer uso de la opción general que permite ejecutar un comando en el servidor. La opcion está ubicada en Others>Command Shell. Una vez ahí, introducir los comandos.
Hasta aqui todas las comprobaciones necesarias.
---
y hacemos click en el enlace para iniciar la instalación
o desde la linea de comandos
>sudo apt-get update
>sudo apt-get install apache2
Al instalar se crean:
- Los archivos de configuración.
- El usuario www-data dentro del grupo tambien llamado www-data.
- La carpeta /var/www
Comprobar que se ha creado el usuario www-data y el grupo del mismo nombre.
>cat /etc/passwd | grep www-data
y el grupo
>cat /etc/group| grep www-data
Mediante el usuario y el grupo www-data se ejecutan los procesos hijos de apache que se encargan de atender peticiones.
Comprobar que
Se ha creado el directorio /var/www
Su propietario es root y grupo root
Este es el directorio raiz del "servidor virtual por defecto".
>ls -l /var/www
Iniciar el servidor apache
Para iniciar el servicio, como cualquier otro servicio de ubuntu utlizamos el siguiente comando:
>/etc/init.d/apache2 start (o service apache2 start)
y para comprobar el estado
>>/etc/init.d/apache2 status
El servidor se iniciará correctamente, podemos comprobarlo leyendo el fichero de registro de eventos des sistema, aunque nos dará un pequeño error, el cual consiste en que no puede determinar el nombre del equipo.
>cat /var/log/syslog | grep apache2
La opción Others>System and Server Status de Webmin también nos permite saber el estado en que se encuentran nuestros servicios, entre ellos Apache.
Para iniciar y detener el servidor apache tambien podemos usar el script apachectl de la siguiente manera
>sudo apachectl start
>sudo apachectl stop
Haciendolo de esta manera obtenemos información que apache envia al syslog, pues también no saca esta misma infomacion directamente por el terminal.
Podemos apreciar el error antes comentado y la forma de solucionarlo (más tarde)
Comprobamos que se han creado los directorios y archivos de configuración en la carpeta /etc/apache2
Consultamos su contenido
/etc/apache2/apache2.conf
/etc/apache2/ports.conf
/etc/apache2/envars
Comprobar los subdirectorios
Directorios de configuración de módulos disponibles y habilitados
/etc/apache2/mod-available
/etc/apache2/mods-enabled
Directorios de configuración de sitios (o servidores) virtuales
/etc/apache2/sites-available
/etc/apache2/sites-enabled
Directorios de configuraciones
/etc/apache2/conf-available
/etc/apache2/conf-enabled
Comprobar que el proceso está en ejecución, es decir, que el servidor esta iniciado.
>ps -ef \ grep apache
Las opciones utilizadas corresponden a:
-e para ver todos los procesos
-f (full) para ver la informacion completa de cada proceso
Desde Webmin también podemos visualizar procesos en ejecución desde la opción System>Running Processes
Para buscar procesos tenemos varias opciones dependiendo de la caja de texto que seleccionemos marcado el boton de radio a su lado.
Por ejemplo, matching y escribiendo "apache" o Using Port y escribiendo 80.
Observar que existen varios procesos iniciados por apache2
Uno de ellos es el proceso padre cuyo propietario es root, y el resto son los procesos hijos o trabajadores, creados para atender peticiones y su propietario es www-data.
Podemos saber que son procesos hijos fijandonos en la tercera columna, que nos dice su PPID, el ID de proceso del proceso padre y vemos que coincide con el PID del primero proceso de la lista.
Tambien mediante Wemin podemos hacer click en el PID de un proceso hijo para ver una pagina de detalle del proceso y fijarnos donde dice parent process. A continuación, hacer click en este enlace y ver que nos lleva a lainfo del proceso padre.
Comprobar que el servidor está escuchando en el puerto TCP 80.
>netstat -ltn
En este caso las opciones utilizadas son las siguientes:
-l para mostrar los sockets que estan a la escucha (listening)
-t para quedanos con aquellos que usan el protocolo TCP
-n para que no resuelva nombres y nos muestre numeros (IPs, puertos, etc)
Podemos ver la diferencia entre el uso de la opcion -n o no.
En este caso, como webmin no tiene una opción específica para ver esta información debemos hacer uso de la opción general que permite ejecutar un comando en el servidor. La opcion está ubicada en Others>Command Shell. Una vez ahí, introducir los comandos.
Hasta aqui todas las comprobaciones necesarias.
---
Suscribirse a:
Entradas (Atom)