Snort: Consultas a la base de datos

Abrimos conexión con la base de datos

mysql -u root -p

En la base de datos de snort,

use snort;

Para ver el diagrama entidad relación de la base de datos:

Buscamos el identificador del evento que necesitamos:

select sig_id,sig_name from signature;

En mi caso, es

223 | COMMUNITY WEB-MISC mod_jrun overflow attempt

Seleccionamos los eventos de mi  signature:

select * from event where signature = 223;

En la tabla de eventos, tenemos las alertas con origen y destino

SELECT timestamp, inet_ntoa(ip_dest), inet_ntoa(ip_src) FROM iphdr WHERE  inet_ntoa(ip_src)="192.168.5.125";

 

Finalmente, hacemos el join entre ambas tablas, y ya podemos sacar el resultado a un fichero de texto:

select inet_ntoa(ip_src), inet_ntoa(ip_dst) from event,iphdr  where iphdr.cid=event.cid and event.sid=iphdr.sid and event.signature = 223  and inet_ntoa(ip_dst)="195.23.2.123" GROUP BY ip_src ORDER BY ip_src  INTO OUTFILE '/tmp/res.txt';

Sobre el acceso a snort a través de la base de datos, tienen un post estupendo en everything about nothing.

Configurando un servidor propio de owncloud

Interfaz web owncloud
Interfaz web oncloud

Instalación del servidor

CentOS: CentOS release 6.5 (Final)

Paquetes instalados:

owncloud-3rdparty.noarch                  6.0.4-8.1                     @isv_ownCloud_community
 owncloud-httpd.noarch                     4.5.13-3.el6                  epel
 owncloud-mysql.noarch                     4.5.13-3.el6                  epel
 owncloud-nginx.noarch                     4.5.13-3.el6                  epel
 owncloud.noarch                           6.0.4-8.1                     @isv_ownCloud_community
 owncloud-postgresql.noarch                4.5.13-3.el6                  epel
 owncloud-sqlite.noarch                       4.5.13-3.el6                  epel

Repositorios de paquetes:

yum repolist
repo id                repo name                                          status
base                   CentOS-6 - Base                                     6.367
epel                   Extra Packages for Enterprise Linux 6 - x86_64     10.947
extras                 CentOS-6 - Extras                                      14
isv_ownCloud_community Latest stable community release of ownCloud (CentO      3
puppetlabs-deps        Puppet Labs Dependencies El 6 - x86_64                 63
puppetlabs-products    Puppet Labs Products El 6 - x86_64                    403
updates                CentOS-6 - Updates

En este punto, ya deberíamos poder acceder a nuestro servidor de owncloud mediante el interfaz web:

https://my-server/owncloud/index.php/apps/files

Interfaz web owncloud

Archivos: Conexión desde clientes linux

Comenzamos las pruebas conectando un cliente linux y una carpeta. Igual que haríamos con un servicio como dropbox.

El pc cliente es un debian 7.5.

Si fuera debian 7.0, podríamos seguir las indicaciones de owncloud añadimos a las fuentes el repositorio de owncloud para debian:

newkey=977C43A8BA684223
   gpg --keyserver pgpkeys.mit.edu --recv-key $newkey
   gpg -a --export $newkey| sudo apt-key add -
   echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/Debian_7.0/ /' >> /etc/apt/sources.list.d/owncloud-client.list 
   apt-get update
   apt-get install owncloud-client

Al tratarse de debian 7.5, hemos usado el repositorio  wheezy-backports:

echo 'deb http://http.debian.net/debian wheezy-backports main' >> /etc/apt/sources.list
apt-get update
 apt-get install owncloud-client

Podemos abrir ya el cliente y configurarlo en el interfaz gráfico:

owncloud
owncloud

En el propio cliente, podemos verificar los datos de la cuenta y pausar el tráfico en un momento dado:

Owncloud02

 

También podemos poner rutas para que no se baje todo nuestro repositorio en el PC, o que ignore rutas en concreto:

Owncloud03
Owncloud03

Instalación del cliente en MAC

Accedemos a la página de owncloud, y descargamos el cliente de MAC

 

Backup de wordpress sobre Cpanel y mysql.

Para crear un backup de nuestra instancia de wordpress tenemos que salvaguardar dos partes:

  • Base de datos.
  • Archivos propios de wordpress (en carpeta servida por apache)

Nosotros tenemos la instancia de WP, instalada sobre un gestor de CPANEL, que es el que vamos a usar para sacar el backup de la base de datos.

Buscamos mysql; abrimos phpmyadmin,

Exportar con phpmyadmin:

En el caso de los archivos de wordpress, basta con acceder a la ruta y crear un tar.gz:

tar -cvzf  backup/public_doms_$(date -I).tar.gz public_doms/

Instalación phpmyadmin

Instalación sobre Debian 7:

La instalación sobre debian es bastante trivial, ya que no suele haber problemas con paquetes y librerías de php.

apt-get install phpmyadmin -y

Os pongo también nuestro sources.list

cat /etc/apt/sources.list | grep -v '#'
deb http://ftp.es.debian.org/debian/ wheezy main contrib non-free
deb-src http://ftp.es.debian.org/debian/ wheezy main contrib non-free
deb http://security.debian.org/ wheezy/updates main contrib non-free
deb http://security.debian.org/ wheezy/updates main contrib non-free
deb-src http://security.debian.org/ wheezy/updates main contrib non-free
deb http://ftp.es.debian.org/debian/ wheezy-updates main contrib non-free
deb-src http://ftp.es.debian.org/debian/ wheezy-updates main contrib non-free

A diferencia de la instalación sobre centos, en este caso tampoco hay que editar a mano la clave secret del fichero config.inc.php.

Instalación  sobre CentOS 6.5

Para ver la versión:
cat /etc/centos-release
CentOS release 6.5 (Final)

Instalar paquetes de phpmyadmin mediante yum:

[root@server~]# yum list installed | grep php
php.x86_64              5.3.3-27.el6_5  @updates
php-cli.x86_64          5.3.3-27.el6_5  @updates
php-common.x86_64       5.3.3-27.el6_5  @updates
php-devel.x86_64        5.3.3-27.el6_5  @updates
php-gd.x86_64           5.3.3-27.el6_5  @updates
php-ldap.x86_64         5.3.3-27.el6_5  @updates
php-mbstring.x86_64     5.3.3-27.el6_5  @updates
php-mysql.x86_64        5.3.3-27.el6_5  @updates
php-pdo.x86_64          5.3.3-27.el6_5  @updates
php-pear.noarch         1:1.9.4-4.el6   @anaconda-CentOS-201303020151.x86_64/6.4
php-xml.x86_64          5.3.3-27.el6_5  @updates
phpmyadmin.noarch       2.11.11.3-2.el6.rf

Si preferís usar pear, aquí os dejo un enlace para configurar pear

 

Instalar mcrypt:

yum install php-mcrypt

Cambiar clave para cookies:

Recién instalado, da un error de configuración:

phpMyAdmin indicates  “configuration files now needs a secret passphase (blowfish_secret)”.

Es necesario editar el fichero de configuración, añadiendo una clave para las cookies.

[root@server~]# cat /usr/share/phpmyadmin/config.inc.php | grep blow
$cfg[‘blowfish_secret’] = ‘mypass’; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

 

Mysql. Olvidé la contraseña de root

Olvidé contraseña de root

Este tutorial está hecho sobre una máquina centos 6.4. Es posible que en otras distribuciones, las rutas absolutas no sean las mismas.

He olvidado la contraseña del usuario root en mysql.

Paramos el servicio de mysql, y arrancamos de nuevo con el flag “skip-grant-tables”:
service mysqld stop
/usr/bin/mysqld_safe --skip-grant-tables --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --pid-file=/var/run/mysqld/mysqld.pid --basedir=/usr --user=mysql

 

En la consola de mysql, abrimos sin contraseña, y actualizamos el valor de la contraseña de la tabla users:
mysql -u root mysql

Problema socket mysql

Tras un reinicio, al aplicar actualizaciones, no se puede encender la base de datos:

[root@server~]# service mysqld start
Another MySQL daemon already running with the same unix socket.
Iniciando mysqld: [FALLÃ]

Para buscar el nombre del socket

cat /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

Siguiendo este tutorial, salvaguardamos el socket de mysql, y hacemos un apagado ordenado con shutdown -r.


[root@server~]# ls -la /var/lib/mysql/mysql.sock
srwxrwxrwx. 1 mysql mysql 0 ene 15 13:16 /var/lib/mysql/mysql.sock
[root@server~]# mv /var/lib/mysql/mysql.sock /var/lib/mysql/mysql.sock.old
[root@server~]# shutdown -r now

También hay que verificar que se pueda crear el archivo .pid

[root@server~]# tail /var/log/mysqld.log | grep -i error
140115 13:18:49 [ERROR] /usr/libexec/mysqld: Can't create/write to file '/var/run/mysqld/mysqld.pid' (Errcode: 2)
140115 13:18:49 [ERROR] Can't start server: can't create PID file: No such file or directory
[root@server~]# mkdir /var/run/mysqld/
[root@server~]# chown mysql:mysql /var/run/mysqld
[root@server~]# service mysqld restart