Páginas

viernes, 7 de febrero de 2014

Encriptar con geli FreeBSD

Encriptar disco duro usb con geli:

Geli es una clase GEOM criptográfica que utiliza el framework crypto y entre otras características, soporta múltiples algoritmos criptográficos (AES, Blowfish y 3DES).

Conectar un disco duro externo a un puerto usb, se creará el dispositivo /dev/da0.

Habilitar soporte para geli en del kernel de FreeBSD

options    GEOM_ELI
device     crypto

Recompilar el kenel y reiniciar con el nuevo kernel.

Cargar el nuevo múdulo geli en el arranque añadiendo la siguiente línea al archivo /boot/loader.conf

geom_eli_load="YES"

Generar la clave maestra

Generar una archivo un archivo de clave que se utilizará como parte de la clave maestra para el proveedor de cifrado montado en /private. El archivo de clave algunos datos aleatorios que se utilizan para encriptar la clave maestra. La clave principal también estará protegida por una contraseña. El tamaño del sector del proveedor /dev/da0.eli será de 4kb

# dd if=/dev/random of=/root/safe/da0.key bs=64 count=1

Inicializar el proveedor que necesita ser encriptado. Aquí se puede
configurar el algoritmo criptográfico a usar, longitud de la clave, etc:

# geli init -s 4096 -K /root/safe/da0.key bs=64 count=1

Comprobar el sistema de archivos:


Conectar el proveedor con la clave generada:
# geli atach -k /root/safe/da0.key /dev/da0

# ls /dev/da0*
da0 da0.eli

Crear un nuevo sistema de archivos:

# dd if=/dev/random of=/dev/da0.eli bs=1m
# newfs /dev/da0.eli


# mount /dev/da0.eli /private

El sistema de archivos cifrado ahora es visible y disponible para su uso

# df -h


Desmontar y desconectar del proveedor:
Una vez terminado el trabajo sobre la partición cifrada, es prudente desmontar y separar la partición cifrada geli del kernel (en este caso desconectar el disco duro usb):

# umount /private/
# geli detach da0.eli

Conectar de nuevo:
# geli attach -k /root/safe/da0.key /dev/da0
Enter passphrase:

# umount /private
# geli detach da0.eli

Utilizar solo password:

Es más conveniente para cifrar una memoria USB o una imagen de archivo basada sólo en una fase de contraseña sin clave. En este caso no es necesario llevar el archivo de clave adicional para acceder al contenido del disco. El procedimiento es en gran medida el mismo que el anterior, sólo sin el archivo de clave. Vamos a encriptar un archivo basado en imagen /cryptedfile de 1 GB.

# dd if=/dev/zero of=/cryptedfile bs=1M count=1000
# mdconfig -at vnode -f /cryptedfile


# geli init /dev/da0
# geli attach /dev/da0

# newfs -U -m 0 /dev/da0.eli
# mount /dev/da0.eli /private
# geli detach da0.eli

Ahora es posible mountar esta imagen en otro sistema de solo con el password:
# mdconfig -at vnode -f /cryptedfile
# geli attach /dev/ad0
# mount /dev/da0.ali /private


Fuente:
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/disks-encrypting.html
http://bsdtutorial.org/
http://cb.vu/unixtoolbox_pt.xhtml

Unix es genial!.

martes, 4 de febrero de 2014

pure-ftpd FreeBSD

Configuración de un servidor FTP Pure-ftpd con usuarios virtuales

Pure-ftpd es un país libre (BSD), con calidad de producción segura y servidor FTP estándar conforme.

Esta guía proporciona instrucciones para utilizar el sistema de usuario virtual para gestionar y controlar a los usuarios. Mediante el uso de usuarios virtuales, cuentas FTP se pueden administrar sin afectar las cuentas del sistema.

Iniciar la instalación de Pure-ftpd:

# portsnap
# cd /usr/ports/ftp/pure-ftpd
# make config-recursive

Un menú emergente contiene opciones de compilación de Pure-ftpd. Es posible incluir y excluir opciones. En mi caso, he optado por dejar estas opciones en sus valores por defecto.

# ee /var/db/ports/pure-ftpd/options
WITH_UTF8=true
WITH_LARGEFILE=true

# make install clean distclean
# rehash

Al finalizar el proceso de instalación empezaremos copiando el archivo
de configuración de ejemplo y establecer los permisos adecuados:

# cd /usr/local/etc
# cp pure-ftpd.conf.sample pure-ftpd.conf
# chmod 444 pure-ftpd.conf

Ajustar valores net.inet.ip.portrange.{first,last} en /etc/sysctl.conf


Fase de configuración:

# ee pure-ftpd.conf
# Rango de puertos para conexiones de respuestas pasivas. - Para los
# cortafuegos.
PassivePortRange 30000 30900

# Dirección IP/puerto para escuchar (default = todas IP y puerto 21).
# Bind 127.0.0.1,21

# Si desea registrar todos los comandos del cliente, ajústelo a "sí".
# Esta directiva puede ser duplicado para también registrar
# las respuestas del servidor.
VerboseLog yes

# PureDB base de datos de usuario (see README.Virtual-Users)
PureDB /usr/local/etc/pureftpd.pdb

# Crear un archivo de registro adicional con transferencias
# registradas en el estándar W3C Formato # (compatible con
# la mayoría de los analizadores de registros comerciales)
AltLog w3c:/var/log/pureftpd.log

# Creación automática de los directorios de inicio si se han perdido
CreateHomeDir yes

# No permitir conexiones anónimas. Sólo permitirá a los usuarios autenticados.
NoAnonymous yes

# No permitir a los usuarios anónimos para subir nuevos archivos
# (no = se permite cargar)
AnonymousCantUpload yes

# Número máximo de clientes sim con la misma dirección IP
MaxClientsPerIP  5

# Máximo numero de usuarios simultaneos
MaxClientsNumber  50

# Máscara de creación de archivos. : . 
# 177:077 si se siente paranoico.
Umask  022:022

# UID mínimo para un usuario autenticado que entrar
MinUID  100

La opción CreateHomeDir permite añadir usuarios virtuales más fácil mediante la creación del directorio principal de un usuario al iniciar sesión por primera vez.

Existe la posibilidad de importar usuarios con cuentas en el sistema (definidos en /etc/master.passwd) a la vez o crear nuevos usuarios de forma manual. Para importar los usuarios que ya existen en el sistema a usuarios virtuales FTP con la herramienta pure-pwconvert:

# pure-pwconvert >> /usr/local/etc/pureftpd.passwd
# chmod 600 /usr/local/etc/pureftpd.passwd
# pure-pw mkdb

No olvidemos que la pure-pwconvert sólo importa las cuentas que tienen
acceso a una consola. Las cuentas con la shell establecida a nologin
se tienen que añadir de forma manual.

Para agregar usuarios a la base de datos de usuarios virtual Pure-FTPd
manualmente, tenemos que crear una cuenta a nivel de sistema que se
asociará con los usuarios virtuales. Crear un nuevo usuario llamado ftp:

Crear una cuenta a nivel de sistema:
# pw useradd -n ftp -s /sbin/nologin -w no -d /home/ftp -c "FTP user" -m

Nota: Al instalar pureftp, se crea un grupo de ftp, pero ningún usuario ftp, lo que da como resultado el error "mail pure-ftpd:(?:?) [ERROR] Unable to find the 'ftp' account". So we need to manually create the ftp user.

Llegados a esta punto, ahora podemos agregar usuarios a la base de datos de usuarios virtuales utilizando los siguientes comandos:

Agregar usuarios a la base de datos de usuarios virtuales:
# pure-pw useradd ftpuser1 -u ftp -g ftp -d /home/ftp/ftpuser1
# pure-pw mkdb

# pure-pw useradd ftpuser2 -u ftp -g ftp -d /home/ftp/ftpuser2
# pure-pw mkdb

Permitir direcciones IP de clientes:
# pure-pw usermod remote_user -r 95.21.88.35
# pure-pw mkdb

Restablecer la contraseña del usuario ftpuser2: 
# pure-pw passwd fptuser2
# pure-pw mkdb

Ver información acerca del usuario ftpuser1
# pure-pw show fptuser1

Para ver una lista de los usuarios: 
# pure-pw list

Eliminar el usuario ftpuser2
# pure-pw userdel fptuser2
# pure-pw mkdb

Iniciar Pure-FTPd: 
# /usr/local/etc/rc.d/pure-ftpd onestart

Determinar si pure-ftpd se está ejecutando:


Probando el servidor FTP:

 

Para que Pure-FTPd se inicie durante el arranque:
# echo 'pureftpd_enable="YES"' >> /etc/rc.conf

Reiniciar pure-ftpd
# /usr/local/etc/rc.d/pure-ftpd restart


Rotar archivo de registro pure-ftpd: 
# vim /etc/newsyslog.conf
/var/log/pureftpd.log 600 7 100000 * JC /var/run/pure-ftpd.pid

# /etc/rc.d/newsyslog restart

Pure-ftpd proporciona características útiles para los usuarios personales, así como los proveedores de alojamiento. Esta es solo una configuración básica, para más opciones de configuración visite la página web del proyecto.

Fuente:
http://download.pureftpd.org/pub/pure-ftpd/doc/FAQ
http://www.pureftpd.org/project/pure-ftpd/doc
http://forums.freebsd.org/showthread.php?t=591


Unix es genial!.

lunes, 16 de diciembre de 2013

Instalar y congurar Samba FreeBSD

Samba en servidor FreeBSD 9.1

Samba fue creado para proveer servicios de archivos e impresión para todo tipo de clientes SMB/CIFS, incluyendo las diferentes versiones de los sistemas operativos windows. Andrew Tridgell desarrollo Samba en 1992 utilizando ingerieria-inversa.

# cd /usr/ports/net/samba3
# make config

En el menú que aparece deseleccione LDAP presionando la barra espaciadora.

Instalar samba
# make install clean
# rehash

Archivo de configuración:
# ee /usr/local/etc/smb.conf

[global]
workgroup = FREEBSD
server string = Unix Servidor de Archivos
security = user
hosts allow = 192.168.1. 192.168.3. 127.

log file = /var/log/samba/log.%m
max log size = 50

display charset = ISO8859-15
unix charset = ISO8859-15
dos charset = 850

[homes]
comment = Home Directories
browseable = no
writable = yes

[compartido]
comment = Compartido Unix Windows
path = /compartido
valid users = compartido
public = no
writable = yes

Ejecutar demonios desde inetd:


Releer archivo de confiuración

# killall -1 inetd


Comprobar errores de sintaxis:
# testparm

Usar el comando adduser para añadir usuario unix:

# adduser
Username: compartido
Full name: compartidou
Uid (Leave empty for default):
Login group [compartido]:
Login group is compartido. Invite compartido into other groups? []:
Login class [default]:
Shell (sh csh tcsh bash rbash nologin) [sh]:
Home directory [/home/compartido]:
Home directory permissions (Leave empty for default):
Use password-based authentication? [yes]:
Use an empty password? (yes/no) [no]:
Use a random password? (yes/no) [no]:
Enter password:
Enter password again:
Lock out the account after creation? [no]:
Username   : compartido
Password   : *****
Full Name  : compartidou
Uid        : 1009
Class      :
Groups     : compartido
Home       : /home/compartido
Home Mode  :
Shell      : /bin/sh
Locked     : no
OK? (yes/no): yes
adduser: INFO: Successfully added (compartido) to the user database.
Add another user? (yes/no): no
Goodbye!

Crear el directorio a compartir por Samba:
# mkdir /compartido

Agregando el grupo Samba smbprivate y el usuario compartido:
root@freebsdsvr # pw groupadd smbprivate -M compartido

Cambiar permisos sobre el directorio Samba:
root@freebsdsvr # chgrp smbprivate /compartido
root@freebsdsvr # chmod 770 /compartido

root@freebsdsvr # ls -ld /compartido/
drwxrwx---  2 root  smbprivate  512 May 15 08:58 /compartido/

Ahora es el momento de establecer la contraseña:
root@freebsdsvr # smbpasswd -a compartido
New SMB password:
Retype new SMB password:
Added user compartido.

Reiniciar el servicio Samba:
root@freebsdsvr # service samba restart
Removing stale Samba tdb files: . done
Starting nmbd.
Starting smbd.

Comprobar el servidor:
root@freebsdsvr: # smbclient -U compartido -L localhost


Iniciar el servidor Samba automáticamente con el sistema.
# ee /etc/rc.conf
samba_enable="YES"

guardar y salir, reiniciar Samba:
# /usr/local/etc/rc.d/samba restart
# /usr/local/etc/rc.d/samba status

Montar directorio compartido en cliente FreeBSD:
# mkdir /media/samba
# cd /media

Configurar permisos directorio cliente:
# chown root:carles samba/
# chmod 770 samba/

$ ls -ld samba/ drwxrwx  ---  1 root  carles  16384  1 ene  1970 samba

root@freebsd:/ # mount_smbfs -I 192.168.3.1 //compartido@freebsdsvr/compartido /media/samba/

Crear el fichero /root/.nsmbrc, permisos 600:


Agregar el directorio compartido al fichero /etc/fstab. La opción -N significa que no pregunte por la contraseña, la leerá del fichero /root/.nsmbrc



Acceder desde cliente Windows 7

Para conectar a las unidades de red;

Inicio, Panel de control, Herramientas administrativas, Directivas locales, Opciones de seguridad, cambiar lo siguiente:

- seguridad de red: nivel de autenticación de lan manager: enviar lm y ntlm: usar la seguridad de sesion ntlmv2 si se negocia
- Seguridad de red: seguridad de sesión minima para clientes NTLM basados en SSP: Sin mínimo
- Seguridad de red: seguridad de sesión minima para servidores NTLM basados en SSP: Sin mínimo

\\192.168.3.1\compartido








Gestionar usuarios:
pdbedit es la utilidad que gestiona la base de datos de usuarios de Samba.

Agregar usuarios
# pdbedit -a

Eliminar usuario
# pdbedit -x nombreusuario

Por ejemplo para agregar al usuario Liliam Junqueras a la base de datos Samba con el nombre de usuario lili:
# pdbedit -a -u lili -f "Liliam Junqueras"

Listar usuarios en la base de datos en detalle
# pdbedit -L -v

Mostrar la política de cuenta, longitud mínima de la contraseña
# pdbedit -P "min password length"

Cambiar la longitud mínima de la contraseña a 8 caracteres:
# pdbedit -P "min password length" -C 8

Más información
# man pdbedit

Unix es genial!.

domingo, 1 de diciembre de 2013

FreeBSD ddns apache mysql drupal

Si en un momento determinado tenemos la intención de habilitar un servidor web o acceder remotamente a nuestra red, nos encontramos con el tema de que nuestro ISP nos proporciona una ip dinámica (diferente) cada vez que nos conectamos. Por esto se hace necesario registrar una cuenta ddns.

En este caso y a modo de laboratorio realizaremos todo el proceso desde el registro ddns hasta la instalación y puesta en funcionamiento del CMS Drupal.

Dinamic DNS

Configurar ddns en el router vdsl Comtrend VR-3025u 30MB Jazztel



Les presento dnsdynamic.org un ddns gratuito y según dice siempre lo será. Durante el registro nos pedirá una cuenta de correo válida y un password que serán utilizados posteriormente, también hay que elegir un dominio. El password me lo invento por lo tanto no traten de entrar en dnsdynamic.org con esta cuenta, solo serviría para cargar el servidor:

login=nombreusuario@gmail.com # correo registrado
password=26Ac9yodLK4jzH48== # password registrado (inventado)
carlescamilo.dnsdynamic.com # dominio registrado

Ahora vamos a nuestro servidor FreeBSD e instalamos ddclient utilizado para actualizar automáticamente dynamic DNS:
$ ssh -l carlos -p 3434 192.168.3.1
password

$ hostname
$ freebsdsvr.linux.bcn

# cd /usr/ports/dns/ddclient
# make install clean
# rehash

# cd /usr/local/etc
# cp ddclient.conf.sample ddclient.conf
# ee ddclient.conf
# Archivo de configuración /usr/local/etc/ddclient.conf


Guardar y salir.

ddclient.conf contiene el password de su proveedor DNS dinámico, hágalo legible solo por root:
# chmod 600 /usr/local/etc/ddclient.conf

y agregue las siguientes líneas de inicio:
# ee /etc/rc.conf

ddclient_enable="YES"
ddclient_flags="-daemon 600" # comprobar cada 600 segundos

Guardar los cambios y levantar el demonio:

# /usr/local/etc/rc.d/ddclient start
Confirmar que ddclient se está ejecutando:


Si repite el comando ps comprobará el estado de ddclient en cualquier momento. Después de que el tiempo de sueño expire, ddclient
debe comprobar su IP pública y hacer los cambios apropiados a su proveedor DNS dinámico.

El archivo /var/tmp/ddclient.cache guarda la última dirección IP pública conocida del sistema y los mensajes de estado de los registros ddclient, así como errores los guarda en /var/log/messages


Correos electrónicos de estado se enviarán a la dirección de correo electrónico de la cuenta root. (Si configura el reenvío de correo electrónico del usuario root en el archivo /etc/aliases), configure la dirección de correo electrónico a la que desea que lleguen los mensajes agregando esta línea:
# ee /etc/aliases

root: localuser, nombreusuario@gmail.com # su cuenta

Guardar y salir

Nota: El puerto 25 es utilizado por mail para el envío de email por lo tanto el firewall debe permitir su paso y no olvide abrir el puerto 587 en su router ADSL si utiliza gmail, por ejemplo en este caso el 587 abierto para la dirección IP 192.168.1.250)

Adicionalmente debe configurar dnsdynamic en su router de acceso a Internet. Un ejemplo para el Comtrend vr3025u Multi-DSL 30 Megas de Jazztel:

hostname: carlescamilo.dnsdynamic.com # dominio dnsdynamic
username: nombreusuario@gmail.com # mail registro dnsdynamic
password=26Ac9yodLK4jzH48== # password, me lo invento
service: dyndns
interface: ppp1.1

Depurar ddclient. Trate de ejecutar el comando siguiente:

# ddclient -daemon=0 -noquiet -debug
DEBUG:    proxy  =
DEBUG:    url    = myip.dnsdynamic.com
DEBUG:    server = myip.dnsdynamic.com
DEBUG:    get_ip: using web, myip.dnsdynamic.com reports 96.27.155.98
DEBUG:   
DEBUG:     nic_dyndns2_update -------------------
DEBUG:    proxy  =
DEBUG:    url    = http://www.dnsdynamic.org/nic/update?system=custom&hostname=carlescamilo.dnsdynamic.com&myip=96.27.155.98
DEBUG:    server = www.dnsdynamic.org

Apache HTTP Server

Instalar el servidor Apache

Comprobar el archivo /etc/hosts
ee /etc/hosts

#
::1 localhost freebsdsvr.linux.bcn
127.0.0.1 localhost freebsdsvr.linux.bcn
192.168.3.1 freebsdsvr freebsdsvr.linux.bcn
#

Instalar el Servidor Apache
# cd /usr/ports/www/apache22
# make config ; make install clean
# rehash

Agregar las siguientes líneas a httpd.conf
# ee /usr/local/etc/apache22/httpd.conf

ServerAdmin mailvalido@gmail.com
ServerName freebsdsvr.linux.bcn:80

Comprobar errores de sintaxis en el archivo de configuración
# apachectl configtest
Performing sanity check on apache22 configuration:
Syntax OK

Después agregar las siguientes lineas en /etc/rc.conf:
apache22_enable="YES"
apache22_http_accept_enable="YES"

# /usr/local/etc/rc.d/apache22 start


El comando GET es case sensitive. Asegúrese de presionar enter dos veces y fíjese que antes y después del primer slash hay espacio.

Si puede ver el texto it works! en la última línea de salida quiere decir que Apache funciona.

Con el navegador lynx puede hacerse lo mismo
# lynx http://freebsdsvr.linux.bcn:



o desde un cliente de la red invocando freebsdsvr.linux.bcn ó la dirección IP 192.168.3.1:


Archivos LOG de Apache:

/var/log/httpd-access.log
Contiene un log de las direcciones IP, hora, y la actividad enn el servidor HTTP.
/var/log/httpd-error.log
Contiene un log de los mensajes de error producidos opr el seridor HTTP.

PHP5

# cd /usr/ports/lang/php52
# make config ; make install clean
# rehash

Un menú de opciones para php5 diríjase hasta Apache y presione la barra espaciadora para instalar el módulo Apache, luego OK para empezar la instalación.

PHP5-5.4-29

El module requerido para el soporte de aplicaciones PHP  sobre Apache debe instalarse:
# cd /usr/ports/www/mod_php5
make install clean

Antes de construir este puerto vamos a añadir soporte para MySQL y MySQLi (una interfaz mejorada para MySQL) con el fin de comunicarse con el servidor MySQL.
# cd /usr/ports/lang/php5-extensions/
make config

En el menú correspondiente tiene seleccione “MySQL database support” y “MySQLi database support,” luego proceda a construir el puerto:
# make install clean

Ha llegado el momento de configurar PHP para utilizarlo en su sistema insertando en DirectoryIndex declaración index.php:

# ee /usr/local/etc/apache22/httpd.conf

DirectoryIndex index.php index.html

y agregar estas líneas:

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

En el caso de PHP5-5.4_29 al final del archivo http.conf agregamos:


Copiar el archivo php.ini-production php.ini que son las opciones recomendadas para entornos de servidores en producción.

# cp /usr/local/etc/php.ini-production /usr/local/php.ini

La directiva session.save_path le dice a PHP donde almacenar los archivos temporales de sesión.

# ee /usr/local/php.ini

session.save_path = "/tmp"

Guardar y salir.

# /usr/local/etc/rc.d/apache22 restart

Para comprobar la instalación de PHP crearemos un archivo llamado phpinfo.php en el directorio raíz del servidor web:

# ee /usr/local/www/apache22/data/phpinfo.php
Añadir estas líneas:

Guardar y salir.

Solicite phpinfo.php de su servidor Apache desde un navegador web. Si lynx está instalado este es el aspecto para el hostname freebsdsvr.linux.bcn:

PHP5-5.4_29




Suprimir el archivo phpinfo.php después de la prueba.
# rm /usr/local/www/apache22/data/phpinfo.php

MySQL junto a PHP es utilizado para crear sitios web dinámicos.
Asegúrese de que el nombre de host de su servidor puede resolverse localmente:
 Comprobar el archivo /etc/hosts
ee /etc/hosts

::1 localhost freebsdsvr.linux.bcn
127.0.0.1 localhost freebsdsvr.linux.bcn
192.168.3.1 freebsdsvr freebsdsvr.linux.bcn

Instalar MySQL Server
# cd
/usr/ports/databases/mysql55-server
# make -D BUILD_OPTIMIZED install clean
# rehash

Ejecute el script de mysql_install_db para establecer las tablas de permisos necesarios para MySQL. Almacenan información acerca privilegios, Permisos de usuario de MySQL y otras opciones de seguridad.

# mysql_install_db --user=mysql

Iniciar el demonio MySQL y configurar la contraseña de root de MySQL:

# mysqld_safe &
# mysqladmin -u root password 'localpassword'

MySQL incluye ejemplos de configuración ubicados en el directorio /usr/local/share/mysql, cada uno de los cuales configurado para un sistema determinado:

my-medium.cnf

Sistemas con más de 128MB de RAM (recomendado para servidores web)

# cp /usr/local/share/mysql/my-medium.cnf /var/db/mysql/my.cnf

Si MySQL va a utilizarse para aplicaciones PHP basadas en la web desactivar las redes TCP hará la instalación MySQL más segura.

Se aplica si el servidor web y la base de datos MySQL funcionan en el mismo ordenador. Descomentar la línea skip-networking del archivo /var/db/mysql/my.cnf

# ee /var/db/mysql/my.cnf
skip-networking

Configurar MySQL para iniciarse automáticamente con el sistema

# ee /etc/rc.conf
mysql_enable="YES"

Aplicar los cambios reiniciando MySQL:

# /usr/local/etc/rc.d/mysql-server restart

Para ver los mensajes de log error si los hubieran, el path es /var/db/mysql/freebsdsvr.linux.bcn.err y su nombre coincide con su hostname.


También hay que asegurarse que los permisos del directorio /tmp son los correctos:

# ls -ld /tmp
drwxrwxrwt  6 root  wheel  512 Nov 26 10:03 /tmp

Si no fuera así root puede corregirlos:

# chown root:whell /tmp
# chmod 777 /tmp
# chmod =t /tmp

Instalar el gestor de contenidos (CMS) Drupal7:

Primero hay que crear la base de datos.

# mysql -u root -p
Enter password: 
mysql> create database drupal;
mysql> grant all on drupal.* to
    -> drupal@localhost identified by 'password';
mysql> quit

Sustituya password por la contraseña de su elección. Esta contraseña la necesitará más adelante, no la olvide!.

Instalar Drupal7

# cd /usr/ports/www/drupal7
# make config; make install clean


Configurar Drupal para utilizarlo en su sistema:

Este archivo indica a apache la ubicación correcta de los archivos de Drupal y hace la administración más fácil. De forma predeterminada Apache busca en el directorio /usr/local/apache22/Includes para los archivos de configuración. Crear un archivo para Drupal:

# ee /usr/local/etc/apache22/Includes/drupal.conf

Agregue las líneas siguientes:


Guardar y salir. Reiniciar Apache.

# /usr/local/etc/rc.d/apache22 restart

Crontab es un servicio del sistema que permite la ejecución automática de scripts o programas de acuerdo con un calendario establecido en el archivo /etc/crontab. Hay que añadir una línea a /etc/crontab para permitir las tareas de mantenimiento de Drupal.

# ee /etc/crontab

45 */4 * * * root /usr/local/bin/lynx http://freebsdsvr.linux.bcn/drupal/cron.php

Abrir http://freebsdsvr.linux.bcn/drupal/install.php en su navegador sustituyendo su hostname y directorio, si lo ha modificado.

Introducir los datos utilizados previamente en la creación de la base de datos, nombre, nombre de usuario y contraseña. Guardar los cambios.


Seguir el asistente y al finalizar clic en su new site.


Desde fuera de nuestra red, he configurado soporte SSL para Apache::




Desde nuestra propia red:


Unix es genial!.