SlideShare una empresa de Scribd logo
1 de 4
Descargar para leer sin conexión
POLICYD: INSTALACION y CONFIGURACION
INTRODUCCIÓN
Policyd v2 (también llamado cluebringer) es un servicio multi-plataforma que permite implementar
políticas de seguridad anti-spam para servidores MTA.
INSTALACION Y CONFIGURACION DEL POLICYD
1.- REQUISITOS
PolicyD:
• MySQL, PostgreSQL or SQLite
• Net::Server >= 0.96
• Net::CIDR
• Config::IniFiles (debian: libconfig-inifiles-perl, rpm: perl-Config-IniFiles)
• Cache::FastMap (debian: libcache-fastmmap-perl, rpm: perl-Cache-FastMmap)
• Mail::SPF (required for CheckSPF module)
WebUI - Para la parte web del Policyd (opcional):
• PHP v5+ (compiled with PDO support for your database)
2.- INSTALACIÓN
• Descargamos la última versión desde http://devlabs.linuxassist.net/projects/policyd/files y
extraemos los ficheros:
tar -xvvzf cluebringer-v2.1.x-201211111115.tar.gz
• Entramos en el directorio database y creamos la estructura de la base de datos, para ello
ejecutamos:
for i in core.tsql access_control.tsql quotas.tsql amavis.tsql checkhelo.tsql checkspf.tsql greylisting.tsql accounting.tsql
do
./convert-tsql mysql $i
done > policyd.sql
• Ejecutamos el sql que acabamos de crear, en el servidor que vaya a tener la base de datos del
policyd y creamos el usuario que va a acceder a la base de datos:
mysql -u root -p -e "create database policyd"
mysql -u root -p policyd < policyd.sql
mysql -u root -p -e "grant select, insert, update, delete on policyd.* to usuarioBD@'servidorCorreoPolicyd' identified by 'passwordDelUsuarioBD';"
mysql -u root -p -e "flush privileges;"
• Creamos el usuario y grupo con el que se va a ejecutar el demonio del policyd:
/usr/sbin/groupadd cbpolicyd
/usr/sbin/useradd -s /sbin/nologin -g cbpolicyd cbpolicyd
• Creamos el directorio /etc/cbpolicyd y movemos el cluebringer.conf a dicho directorio:
mkdir /etc/cbpolicyd
mv cluebringer.conf /etc/cbpolicyd/
• Modificamos las siguientes líneas en el /etc/cbpolicyd/cluebringer.conf, sobretodo hay que
especificar el puerto y los datos de la base de datos:
vi /etc/cbpolicyd/cluebringer.conf
# Preforking configuration
#
# min_server - Minimum servers to keep around
# min_spare_servers - Minimum spare servers to keep around ready to
# handle requests
# max_spare_servers - Maximum spare servers to have around doing nothing
# max_servers - Maximum servers alltogether
# max_requests - Maximum number of requests each child will serve
min_servers=4
min_spare_servers=4
max_spare_servers=12
max_servers=25
max_requests=1000
# Log level:
# 2 - Notices, warnings, errors
log_level=2
log_file=/var/log/cbpolicyd/cbpolicyd.log
# Things to log in extreme detail
log_detail=modules,tracking,policies,protocols
proto=tcp
# IP to listen on, * for all. Blank for unix sockets
host=*
port=10031
# Timeout in communication with clients
# Idle timeout in postfix defaults to 1015s (active connection)
timeout_idle=1015
# Busy sockets in postfix defaults to 100s
timeout_busy=115
# cidr_allow/cidr_deny
# Comma, whitespace or semi-colon separated. Contains a CIDR block to
# compare the clients IP to. If cidr_allow or cidr_deny options are
# given, the incoming client must match a cidr_allow and not match a
# cidr_deny or the client connection will be closed.
cidr_allow=0.0.0.0/0
cidr_deny=
# DATOS DE NUESTRA BASE DE DATOS: nombre, usuario y password correspondiente
[database]
#DSN=DBI:SQLite:dbname=policyd.sqlite
DSN=DBI:mysql:database=policyd;host=localhost
Username=usuarioBD
Password=passwordDelUsuarioBD
• Movemos los directorios cbp/ y awitpt/ a /usr/local/lib/cbpolicyd-2.1:
mkdir /usr/local/lib/cbpolicyd-2.1
mv cbp /usr/local/lib/cbpolicyd-2.1/
mv awitpt/awitpt /usr/local/lib/cbpolicyd-2.1/
• Movemos los servicios cbpolicyd y cbpadmin a /usr/local/sbin y /usr/local/bin respectivamente:
mv cbpadmin /usr/local/bin/
mv cbpolicyd /usr/local/sbin/
• Creamos los directorios /var/log/cbpolicyd y /var/run/cbpolicyd y asignamos los permisos
adecuados:
mkdir /var/log/cbpolicyd
mkdir /var/run/cbpolicyd
chown cbpolicyd.cbpolicyd /var/log/cbpolicyd /var/run/cbpolicyd
• Si queremos gestionar las políticas vía web, movemos el contenido del directorio webui/* a un
directorio que vea el apache y modificamos los parámetros del includes/config.php con los datos
de nuestra base de datos (nombre, usuario y password).
• Creamos un script de inicio para arrancar y parar el servicio del cbpolicyd
(/usr/local/sbin/cbpolicyd):
• Tenemos un modelo de script de inicio para debian (en el directorio debian) y otro para
Fedora (en el directorio contrib/initscripts/Fedora). Como nuestra distribución es
debian, hacemos una copia del que viene de ejemplo para debian:
cp -prf debian/cluebringer.init /etc/init.d/cbpolicyd
• Modificamos los siguientes parámetros:
DAEMON="/usr/local/sbin/cbpolicyd"
NAME="cbpolicyd"
PATH="/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin"
LOGFILE="/var/log/cbpolicyd/cbpolicyd.log"
RUNDIR="/var/run/cbpolicyd"
• Damos permiso de ejecución:
chmod +x /etc/init.d/cbpolicyd
• Lo configuramos en el arranque de la máquina. En debian, por defecto, no tenemos
el chkconfig (se puede instalar pero instala más cosas críticas), como equivalente
tenemos el update-rc.d:
update-rc.d cbpolicyd defaults
Note
• Habilitar servicio --> update-rc.d servicio defaults --> Crea enlaces
que inician el servicio en los runlevels 2345 y enlaces que lo
terminan en los runlevels 016 con la prioridad 20. Equivale a
update-rc.d servicio start 20 2 3 4 5 . stop 20 0 1 6
• Dehabilitar servicio --> update.rc.d -f servicio remove--> Borra todos
los enlaces en los directorios rc.?.d.
• Configuramos la rotación del log. Tenemos un fichero de ejemplo para debian, hacemos una copia
y modificamos los parámetros que necesitemos:
cp debian/cluebringer.logrotate /etc/logrotate.d/cbpolicyd
vi /etc/logrotate.d/cbpolicyd
/var/log/cbpolicyd/cbpolicyd.log {
weekly
rotate 7
copytruncate
compress
notifempty
missingok
}
• Para que el Postfix use el cbpolicyd, debemos añadir las directiva check_policy_service
inet:127.0.0.1:10031 en los parámetros smtpd_recipient_restrictions y
smtpd_end_of_data_restrictions del main.cf:
vi /etc/postfix/main.cf
smtpd_recipient_restrictions=
check_policy_service inet:127.0.0.1:10031,
....
permit
smtpd_end_of_data_restrictions =
check_policy_service inet:127.0.0.1:10031,
permit
BIBLIOGRAFíA
http://wiki.policyd.org/
http://www.policyd.org/

Más contenido relacionado

La actualidad más candente

Instalación DHCP en CentOS 6.2
Instalación DHCP en CentOS 6.2Instalación DHCP en CentOS 6.2
Instalación DHCP en CentOS 6.2camilaml
 
Firewall Casero con gnu/linux (Ubuntu Server 14.04)
Firewall Casero con gnu/linux (Ubuntu Server 14.04)Firewall Casero con gnu/linux (Ubuntu Server 14.04)
Firewall Casero con gnu/linux (Ubuntu Server 14.04)Remigio Salvador Sánchez
 
Laboratorio packet tracer dhcp-dns-http
Laboratorio packet tracer dhcp-dns-httpLaboratorio packet tracer dhcp-dns-http
Laboratorio packet tracer dhcp-dns-httphhlezana
 
InstalacióN Del Servidor De Correo Zimbra
InstalacióN Del Servidor De Correo ZimbraInstalacióN Del Servidor De Correo Zimbra
InstalacióN Del Servidor De Correo ZimbraDianaBermeo2009
 
Samba fabianmestre
Samba fabianmestreSamba fabianmestre
Samba fabianmestresamy171731
 
Configuración servidores DCHP, DNS y HTTP - Cisco Packet Tracer
Configuración servidores DCHP, DNS y HTTP - Cisco Packet TracerConfiguración servidores DCHP, DNS y HTTP - Cisco Packet Tracer
Configuración servidores DCHP, DNS y HTTP - Cisco Packet TracerŘỉgö VẻGầ
 
Configuracion dhcp ubuntu12.04
Configuracion dhcp ubuntu12.04Configuracion dhcp ubuntu12.04
Configuracion dhcp ubuntu12.04Yerlin Delgado
 
Servicio dhcp gnu linux-centos ::: http://leymebamba.com
Servicio dhcp gnu linux-centos  ::: http://leymebamba.comServicio dhcp gnu linux-centos  ::: http://leymebamba.com
Servicio dhcp gnu linux-centos ::: http://leymebamba.com{|::::::. ELDAVAN .:::::::|}
 
Protocolos de configuracion dns bootp_y_dhcp
Protocolos de configuracion dns bootp_y_dhcpProtocolos de configuracion dns bootp_y_dhcp
Protocolos de configuracion dns bootp_y_dhcpAndreo Taipe Llancari
 
Instalación y Configuración de NIS server en Ubuntu server 14.04 lts
Instalación y Configuración de NIS server en Ubuntu server 14.04 ltsInstalación y Configuración de NIS server en Ubuntu server 14.04 lts
Instalación y Configuración de NIS server en Ubuntu server 14.04 ltsDiego Montiel
 
Instalación servidor dhcp en ubuntu server 14
Instalación servidor dhcp en ubuntu server 14Instalación servidor dhcp en ubuntu server 14
Instalación servidor dhcp en ubuntu server 14Luis Carlos Silva Dias
 

La actualidad más candente (20)

Dhcp_
Dhcp_Dhcp_
Dhcp_
 
servidor dhcp en ubuntu 12
servidor dhcp en ubuntu 12servidor dhcp en ubuntu 12
servidor dhcp en ubuntu 12
 
Instalación DHCP en CentOS 6.2
Instalación DHCP en CentOS 6.2Instalación DHCP en CentOS 6.2
Instalación DHCP en CentOS 6.2
 
Servidores web, dhcp, correo, dns
Servidores web, dhcp, correo, dnsServidores web, dhcp, correo, dns
Servidores web, dhcp, correo, dns
 
Firewall Casero con gnu/linux (Ubuntu Server 14.04)
Firewall Casero con gnu/linux (Ubuntu Server 14.04)Firewall Casero con gnu/linux (Ubuntu Server 14.04)
Firewall Casero con gnu/linux (Ubuntu Server 14.04)
 
Laboratorio packet tracer dhcp-dns-http
Laboratorio packet tracer dhcp-dns-httpLaboratorio packet tracer dhcp-dns-http
Laboratorio packet tracer dhcp-dns-http
 
InstalacióN Del Servidor De Correo Zimbra
InstalacióN Del Servidor De Correo ZimbraInstalacióN Del Servidor De Correo Zimbra
InstalacióN Del Servidor De Correo Zimbra
 
Samba fabianmestre
Samba fabianmestreSamba fabianmestre
Samba fabianmestre
 
Configuración servidores DCHP, DNS y HTTP - Cisco Packet Tracer
Configuración servidores DCHP, DNS y HTTP - Cisco Packet TracerConfiguración servidores DCHP, DNS y HTTP - Cisco Packet Tracer
Configuración servidores DCHP, DNS y HTTP - Cisco Packet Tracer
 
Configuracion del servidor dns en linux
Configuracion del servidor dns en linuxConfiguracion del servidor dns en linux
Configuracion del servidor dns en linux
 
Configuracion dhcp ubuntu12.04
Configuracion dhcp ubuntu12.04Configuracion dhcp ubuntu12.04
Configuracion dhcp ubuntu12.04
 
Servicio dhcp gnu linux-centos ::: http://leymebamba.com
Servicio dhcp gnu linux-centos  ::: http://leymebamba.comServicio dhcp gnu linux-centos  ::: http://leymebamba.com
Servicio dhcp gnu linux-centos ::: http://leymebamba.com
 
Seguridad de las Redes
Seguridad de las RedesSeguridad de las Redes
Seguridad de las Redes
 
Protocolos de configuracion dns bootp_y_dhcp
Protocolos de configuracion dns bootp_y_dhcpProtocolos de configuracion dns bootp_y_dhcp
Protocolos de configuracion dns bootp_y_dhcp
 
Instalando una LAMP en debian 6
Instalando una LAMP en debian 6Instalando una LAMP en debian 6
Instalando una LAMP en debian 6
 
FTP en centos 7
FTP en centos 7FTP en centos 7
FTP en centos 7
 
Instalación y Configuración de NIS server en Ubuntu server 14.04 lts
Instalación y Configuración de NIS server en Ubuntu server 14.04 ltsInstalación y Configuración de NIS server en Ubuntu server 14.04 lts
Instalación y Configuración de NIS server en Ubuntu server 14.04 lts
 
Instalacion dhcp ubuntu
Instalacion dhcp ubuntuInstalacion dhcp ubuntu
Instalacion dhcp ubuntu
 
Samba en Centos 7
Samba en Centos 7Samba en Centos 7
Samba en Centos 7
 
Instalación servidor dhcp en ubuntu server 14
Instalación servidor dhcp en ubuntu server 14Instalación servidor dhcp en ubuntu server 14
Instalación servidor dhcp en ubuntu server 14
 

Similar a Configuración del Policyd

Similar a Configuración del Policyd (20)

Honeypotsprácticas2006
Honeypotsprácticas2006Honeypotsprácticas2006
Honeypotsprácticas2006
 
Fail2ban instalacion configuracion
Fail2ban instalacion configuracionFail2ban instalacion configuracion
Fail2ban instalacion configuracion
 
Configuracion de cent os
Configuracion de cent osConfiguracion de cent os
Configuracion de cent os
 
Entorno PHP
Entorno PHPEntorno PHP
Entorno PHP
 
Snort 2006
Snort 2006Snort 2006
Snort 2006
 
Servidor DHCP en Centos 6.5
Servidor DHCP en Centos 6.5Servidor DHCP en Centos 6.5
Servidor DHCP en Centos 6.5
 
Guia postfix
Guia postfixGuia postfix
Guia postfix
 
Servidores linux
Servidores linuxServidores linux
Servidores linux
 
How to tickets - Protocolos de Comunicación
How to tickets - Protocolos de ComunicaciónHow to tickets - Protocolos de Comunicación
How to tickets - Protocolos de Comunicación
 
Zimbra
ZimbraZimbra
Zimbra
 
Actividad No. 5.5: Aseguramiento de servidores GNU/Linux
Actividad No. 5.5: Aseguramiento de servidores GNU/LinuxActividad No. 5.5: Aseguramiento de servidores GNU/Linux
Actividad No. 5.5: Aseguramiento de servidores GNU/Linux
 
Trabajo zabbix
Trabajo zabbixTrabajo zabbix
Trabajo zabbix
 
Manual ldap
Manual ldapManual ldap
Manual ldap
 
Manual de Instalación y configuración Zimbra
Manual de Instalación  y configuración Zimbra Manual de Instalación  y configuración Zimbra
Manual de Instalación y configuración Zimbra
 
Manual de instalacion servicios en red hat
Manual de instalacion servicios en red hatManual de instalacion servicios en red hat
Manual de instalacion servicios en red hat
 
Unidad iii seguridad de redes
Unidad iii seguridad de redes Unidad iii seguridad de redes
Unidad iii seguridad de redes
 
20080123131703
2008012313170320080123131703
20080123131703
 
Zimbra
ZimbraZimbra
Zimbra
 
Servidores Web en GNU/Linux
Servidores Web en GNU/LinuxServidores Web en GNU/Linux
Servidores Web en GNU/Linux
 
SEGURIDAD DE LAS REDES
SEGURIDAD DE LAS REDES SEGURIDAD DE LAS REDES
SEGURIDAD DE LAS REDES
 

Configuración del Policyd

  • 1. POLICYD: INSTALACION y CONFIGURACION INTRODUCCIÓN Policyd v2 (también llamado cluebringer) es un servicio multi-plataforma que permite implementar políticas de seguridad anti-spam para servidores MTA. INSTALACION Y CONFIGURACION DEL POLICYD 1.- REQUISITOS PolicyD: • MySQL, PostgreSQL or SQLite • Net::Server >= 0.96 • Net::CIDR • Config::IniFiles (debian: libconfig-inifiles-perl, rpm: perl-Config-IniFiles) • Cache::FastMap (debian: libcache-fastmmap-perl, rpm: perl-Cache-FastMmap) • Mail::SPF (required for CheckSPF module) WebUI - Para la parte web del Policyd (opcional): • PHP v5+ (compiled with PDO support for your database) 2.- INSTALACIÓN • Descargamos la última versión desde http://devlabs.linuxassist.net/projects/policyd/files y extraemos los ficheros: tar -xvvzf cluebringer-v2.1.x-201211111115.tar.gz • Entramos en el directorio database y creamos la estructura de la base de datos, para ello ejecutamos: for i in core.tsql access_control.tsql quotas.tsql amavis.tsql checkhelo.tsql checkspf.tsql greylisting.tsql accounting.tsql do ./convert-tsql mysql $i done > policyd.sql • Ejecutamos el sql que acabamos de crear, en el servidor que vaya a tener la base de datos del policyd y creamos el usuario que va a acceder a la base de datos: mysql -u root -p -e "create database policyd" mysql -u root -p policyd < policyd.sql mysql -u root -p -e "grant select, insert, update, delete on policyd.* to usuarioBD@'servidorCorreoPolicyd' identified by 'passwordDelUsuarioBD';" mysql -u root -p -e "flush privileges;" • Creamos el usuario y grupo con el que se va a ejecutar el demonio del policyd: /usr/sbin/groupadd cbpolicyd /usr/sbin/useradd -s /sbin/nologin -g cbpolicyd cbpolicyd
  • 2. • Creamos el directorio /etc/cbpolicyd y movemos el cluebringer.conf a dicho directorio: mkdir /etc/cbpolicyd mv cluebringer.conf /etc/cbpolicyd/ • Modificamos las siguientes líneas en el /etc/cbpolicyd/cluebringer.conf, sobretodo hay que especificar el puerto y los datos de la base de datos: vi /etc/cbpolicyd/cluebringer.conf # Preforking configuration # # min_server - Minimum servers to keep around # min_spare_servers - Minimum spare servers to keep around ready to # handle requests # max_spare_servers - Maximum spare servers to have around doing nothing # max_servers - Maximum servers alltogether # max_requests - Maximum number of requests each child will serve min_servers=4 min_spare_servers=4 max_spare_servers=12 max_servers=25 max_requests=1000 # Log level: # 2 - Notices, warnings, errors log_level=2 log_file=/var/log/cbpolicyd/cbpolicyd.log # Things to log in extreme detail log_detail=modules,tracking,policies,protocols proto=tcp # IP to listen on, * for all. Blank for unix sockets host=* port=10031 # Timeout in communication with clients # Idle timeout in postfix defaults to 1015s (active connection) timeout_idle=1015 # Busy sockets in postfix defaults to 100s timeout_busy=115 # cidr_allow/cidr_deny # Comma, whitespace or semi-colon separated. Contains a CIDR block to # compare the clients IP to. If cidr_allow or cidr_deny options are # given, the incoming client must match a cidr_allow and not match a # cidr_deny or the client connection will be closed. cidr_allow=0.0.0.0/0 cidr_deny= # DATOS DE NUESTRA BASE DE DATOS: nombre, usuario y password correspondiente [database] #DSN=DBI:SQLite:dbname=policyd.sqlite DSN=DBI:mysql:database=policyd;host=localhost Username=usuarioBD Password=passwordDelUsuarioBD • Movemos los directorios cbp/ y awitpt/ a /usr/local/lib/cbpolicyd-2.1: mkdir /usr/local/lib/cbpolicyd-2.1 mv cbp /usr/local/lib/cbpolicyd-2.1/
  • 3. mv awitpt/awitpt /usr/local/lib/cbpolicyd-2.1/ • Movemos los servicios cbpolicyd y cbpadmin a /usr/local/sbin y /usr/local/bin respectivamente: mv cbpadmin /usr/local/bin/ mv cbpolicyd /usr/local/sbin/ • Creamos los directorios /var/log/cbpolicyd y /var/run/cbpolicyd y asignamos los permisos adecuados: mkdir /var/log/cbpolicyd mkdir /var/run/cbpolicyd chown cbpolicyd.cbpolicyd /var/log/cbpolicyd /var/run/cbpolicyd • Si queremos gestionar las políticas vía web, movemos el contenido del directorio webui/* a un directorio que vea el apache y modificamos los parámetros del includes/config.php con los datos de nuestra base de datos (nombre, usuario y password). • Creamos un script de inicio para arrancar y parar el servicio del cbpolicyd (/usr/local/sbin/cbpolicyd): • Tenemos un modelo de script de inicio para debian (en el directorio debian) y otro para Fedora (en el directorio contrib/initscripts/Fedora). Como nuestra distribución es debian, hacemos una copia del que viene de ejemplo para debian: cp -prf debian/cluebringer.init /etc/init.d/cbpolicyd • Modificamos los siguientes parámetros: DAEMON="/usr/local/sbin/cbpolicyd" NAME="cbpolicyd" PATH="/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin" LOGFILE="/var/log/cbpolicyd/cbpolicyd.log" RUNDIR="/var/run/cbpolicyd" • Damos permiso de ejecución: chmod +x /etc/init.d/cbpolicyd • Lo configuramos en el arranque de la máquina. En debian, por defecto, no tenemos el chkconfig (se puede instalar pero instala más cosas críticas), como equivalente tenemos el update-rc.d: update-rc.d cbpolicyd defaults Note • Habilitar servicio --> update-rc.d servicio defaults --> Crea enlaces que inician el servicio en los runlevels 2345 y enlaces que lo terminan en los runlevels 016 con la prioridad 20. Equivale a update-rc.d servicio start 20 2 3 4 5 . stop 20 0 1 6
  • 4. • Dehabilitar servicio --> update.rc.d -f servicio remove--> Borra todos los enlaces en los directorios rc.?.d. • Configuramos la rotación del log. Tenemos un fichero de ejemplo para debian, hacemos una copia y modificamos los parámetros que necesitemos: cp debian/cluebringer.logrotate /etc/logrotate.d/cbpolicyd vi /etc/logrotate.d/cbpolicyd /var/log/cbpolicyd/cbpolicyd.log { weekly rotate 7 copytruncate compress notifempty missingok } • Para que el Postfix use el cbpolicyd, debemos añadir las directiva check_policy_service inet:127.0.0.1:10031 en los parámetros smtpd_recipient_restrictions y smtpd_end_of_data_restrictions del main.cf: vi /etc/postfix/main.cf smtpd_recipient_restrictions= check_policy_service inet:127.0.0.1:10031, .... permit smtpd_end_of_data_restrictions = check_policy_service inet:127.0.0.1:10031, permit BIBLIOGRAFíA http://wiki.policyd.org/ http://www.policyd.org/