Mostrando las entradas con la etiqueta FreeBSD. Mostrar todas las entradas
Mostrando las entradas con la etiqueta FreeBSD. Mostrar todas las entradas

miércoles, 6 de julio de 2011

Instalación MySQL 5.5 en FreeBSD 8.x

Instalando MySQL 5.5:

  1. ingresamos a la carpeta: /usr/ports/databases/mysql55-server
  2. ejecutamos: make install
  3. luego de la instalación procederemos a crear la clave del root de mysql
    1. corremos mysql en modo seguro: /usr/local/etc/rc.d/mysql-server onestart
    2. conectamos por medio del cliente mysql: mysql -u root mysql
    3. actualizamos la clave:
      update user set Password=PASSWORD('clave') where User='root';
    4. borramos usuarios en blanco que resultan luego de la instalación:
      delete from user where user='';
    5. actualizamos privilegios:
      flush privileges;
    6. salimos del cliente mysql:
      quit
  4. editamos el archivo /etc/rc.conf para permitir que MySQL cargue al inicio del sistema agregando la siguiente línea:
    mysql_enable="YES"
  5. reiniciar el sistema y realizar las pruebas de MySQL.

domingo, 21 de noviembre de 2010

Squid Dual Wan con Freebsd + PF

Cada vez es más común tener problemas de anchos de banda, y poco a poco las líneas a Internet proveidas por las operadoras no son suficiente, lo que a continuación se muestra es una alternativa de distribuir entre dos conexiones a Internet el tráfico de una sola red lan utilizando FreeBSD, Packet Filter PF y SQUID.

Escenario:
Conexion a Internet A:
   IP del Router  : 192.168.1.1,
   IP del servidor:192.168.1.2.
Conexion a Internet B:

  IP del Router  : 192.168.2.1,
  IP del servidor: 192.168.2.2.
Conexion a RedLocal
  Ip del servidor 192.168.0.1
  Ip RedLocal 192.168.0.0/24

Configurando PF:
(La instalación de PF sobre FreeBSD se encuentra detallada en este enlace del blog: "Configurar un firewall en freebsd con pf")
En /etc/pf.conf
#definir la primera interfaz externa junto a su puerta de enlace gw
ext_if1="em0"
ext_gw1="192.168.1.1"
#definir la segunda Interfaz externa junto a su puerta de enlace
ext_if2="em1"

ext_gw2="192.168.2.1"
#definir la interfaz Interna:
int_if="em2"
#definir la redLocal
redlocal="192.168.0.1/24"
#definir reglas de Nateo para las dos conexiones externas
nat on $ext_if1 from $redlocal to any ->($ext_if1)
nat on $ext_if2 from $redlocal to any ->($ext_if2)
#definir las reglas de redirección para SQUID Transparenterdr on $int_if inet proto tcp from $redlocal to any port 80 ->127.0.0.1 port 3128
#para https transparente se enviará directamente al sitio sin pasar por squid
#definir reglas de acceso
block all
pass quick on lo0 all
pass in quick on $int_if proto tcp from $redlocal to $int_if port 3128 flags S/SA modulate state
pass in quick on $int_if proto tcp from $redlocal to 127.0.0.1 port 3128 flags S/SA modulate state
#definir reglas de enrutado para TCP (muy importante!!)
pass in on $int_if route-to \

{($ext_if1 $ext_gw1),($ext_if2 $ext_gw2)} round-robin \
proto tcp from $redlocal to any flags S/SA modulate state

pass out on $ext_if1 route-to \
($ext_if2 $ext_gw2) from $ext_if2 to any

pass out on $ext_if2 route-to \
($ext_if1 $ext_gw1) from $ext_if1 to any

Hasta aqui PF, puede enrutar cualquier paquete que provenga desde la redlan por medio de las dos puertas de salida utilizando el método RoundRobin para el balanceo de las conexiones entre las dos líneas.
 
en SQUID:
((la Instalación de SQUID en FreeBSD se encuentra detallada en: Squid en FreeBSD))
Squid incluye el parametro tcp_outgoing_address, el cual te permitirá indicar desde que IP debe conectarse Squid. en este caso se deben colocar las dos IP's externas del servidor del servidor, por ejemplo que se desea segmentar en dos bloques de 100 ip's para cada conexión externa, en
/usr/local/etc/squid/squid.conf:
acl localnet_A src 192.162.0.1-192.162.0.100/24
acl localnet_B src 192.162.0.101-192.162.0.200/24

tcp_outgoing_address 192.168.1.2 localnet_A
tcp_outgoing_address 192.168.2.2 localnet_B

de esta manera las computadoras con ip's entre 1y 100 pasarán por una conexión mientras que desde 101 hasta 200 pasarán por otra.

viernes, 19 de noviembre de 2010

Error syntax rc.conf freebsd filesystem readonly

Este error se presenta si existe algún error sintactico en el archivo rc.conf, dado el orden en el que se produce la carga del sistema operativo FREEBSD el arranque se detiene quedando solo montada la partición raiz "/" y en solo lectura, esto dificulta la corrección del archivo rc.conf.

Para realizar la corrección primero se debe habilitar la escritura en la raiz utilizando el comando:
mount -uw /
Luego se puede utilizar el editor de texto para realizar la corección en el archivo rc.conf y despues reiniciar el equipo para que todo vuelva a funcionar con normalidad.

Tener muy en cuenta el hecho de que solo se ha montado la raíz /, por lo que si se requiere utilizar algún software que recide en otras particiones deberá montarse estas particiones manualmente.

lunes, 9 de agosto de 2010

Link Aggregation en FreeBSD

Link Aggregation, nos permite agrupar dos o más tarjetas de red para que respondan como una sola tarjeta lógica, lo cual nos permite tolerancia a error, (es decir si un enlace cae automáticamente el otro se activa) o balanceo de trafico lo cual nos permite mejorar velocidad de atención a los clientes (protocolo lacp).

para Configurar un equipo con LinkAggregation en FreeBSD se debe tener encuenta que hay que personalizar el KERNEL para que agregue el dispositivo lagg:
 
Personalizando el KERNEL
  • ingresar a: /usr/src/sys/amd64/conf ( si es a 32bits /usr/src/sys/i386/conf)
  • Editar el Archivo GENERIC (el nombre puede cambiar si cuentan con otro personalizado)
    agregar la línea:
    device lagggrabar y salir
  • Ejecutar: config GENERIC
  • ingresar a ../compile/GENERIC y ejecutar
    make cleandepend && make depend
    make
    make install
  • finalmente Reiniciar
Crear la Agregación de Enlaces
  • Ejecutar:
    ifconfig -a
    para determinar los nombres de las tarjetas de red que tenemos disponibles, por ejemplo em0 y em1.
  • Editar el archivo /etc/rc.conf
    agregar las siguientes líneas:
    ifconfig_em0="up" #damos de alta la tarjeta 0
    ifconfig_em1="up" #damos de alta la tarjeta 1
    #Definimos la interfaz agregada:
    cloned_interfaces="lagg0"
    # si se desean crear más de una hay que enumerarlas separadas por espacio ejemplo: "lagg0 lagg1"
    ##
    ##agregamos las interfaces em0 y em1 al lagg0
    ifconfig_lagg0="laggproto lacp laggport em0 laggport em1"##asignamos una IP a la interfaz agregada
    ipv4_addrs_lagg0="192.168.1.2"
Reiniciamos y deberemos poder contar con nuestra interfaz agregada.
Pueden vistar para más información:
http://www.freebsd.org/doc/handbook/network-aggregation.html
http://www.cyberciti.biz/faq/freebsd-network-link-aggregation-trunking/

Para que funcione correctamente, es necesario contar con un switch administrable que soporte agregación de enlaces (lacp), debemos configurar primero los puertos de este switch y luego conectar los puertos de nuestro servidor para que pueda atender con estos enlaces.

domingo, 11 de julio de 2010

Instalar y Configurar SQUID en FreeBSD con PF

Para Instalar SQUID:
  1. Ingresar a /usr/ports/www/squid (puede ser squid, squid30, squid31)
  2. make config (elegir las opciones de instalación)
  3. make (realiza la compilación)
  4. make instal (realiza la instalación en el sistema)
una vez instalado se prosigue con la instalación.

Para Realizar la Configuración Inicial:
  1. Es necesario crear los directorios de intercambio /var/squid/cache
    /usr/local/sbin/squid -z
  2. Para realizar un test de la instalación se puede usar:
    /usr/local/sbin/squid -NCd1
    aqui Squid nos mostará una salida que indica el número del proceso, inicializa la cache, entre otros. este test se puede cortar con CTRL+Pausa. durante el test podemos conectar un Cliente al proxy por medio del puerto 3128 para comprobar que existe conectividad.
  3. Si durante el test con el cliente de prueba no se logra conexión, es probable que deba definir en las reglas de squid la subred local:
    editar /usr/local/etc/squid/squid.confagregar:
    acl localnet src ipredlocal/bitsmascara ejemplo:
    acl localnet src 190.100.0.0/16
    (aqui colocar la ip de la red de los clientes)
  4. para permitir el inicio automático agregar la siguiente línea a /etc/rc.conf
    squid_enable="YES"
  5. para configurar PF y habilitar la característica de Proxy Transparente de SQUID hay que editar /etc/pf.conf y agregar las siguientes líneas:
    rdr on $int_if  inet proto tcp from any to any port 80 -> 127.0.0.1 port 3128
    con estas líneas se redirigirán las conexiónes http al puerto 3128 de Squid.
    pass on $int_if inet proto tcp from any to 127.0.0.1 port 3128
    para permitir el acceso al puerto.
  6. Squid no trabaja conexiones https de manera transparente, por lo que debemos dejarlas pasar directamente. (por medio de proxy si trabaja https)
  7. para habilitar el proxy transparente en Squid hay que modificar o agregar las siguientes líneas en /usr/local/etc/squid/squid.conf :
    http_port 127.0.0.1:3128 transparent
    http_port ip_local_del_server:3128

    la primera línea habilta el proxy transparente en la ip localhost, la segunda línea habilita la ip local del servidor para atender como proxy tradicional.
  8. hay que darle permiso al grupo squid al archivo /dev/pf:
    chown root:squid /def/pf
  9. luego de los cambios de los dos pasos previos hay que reiniciar los servicios PF y SQUID
    /etc/rc.d/pf restart
    /usr/local/etc/rc.d/squid restart
No olvidar realizar las pruebas del caso.

viernes, 2 de julio de 2010

Configurar un Firewall en FreeBSD PF + ALTQ

FreeBSD se perfila con uno de los sistemas opertativos basados en BSD (Unix) con mejores prestaciones, en este caso se muestra la manera de configurarlo como un Firewall para nuestra red (incluyendo la posibilidad de NAT), utilizando un modulo denominado PF (packe Filter) nativo de Open BSD que puede ser utilizado desde FreeBSD, para hacerlo es necesario realizar algunos cambios en el Kernel, por lo que se muestran los pasos de como realizar este trabajo.
He considerado ir agregando los enlaces a las páginas a la cuales he recurrido para encontrar la información dado que existen algunos puntos que ustedes pueden detallar directamente.

Habilitando PF (Packet Filter)
  1. Editar /etc/rc.conf para actualizar o agregar las siguientes líneas:
    gateway="YES"
    pf_enable="YES"
    pflog_enable="YES"
Habilitar ALTQ (habilita QoS)
  1. ingresar a: /usr/src/sys/amd64/conf  ( si es a 32bits /usr/src/sys/i386/conf)
  2. crear una copia de GENERIC por ejemplo K_ALTQ
    cp GENERIC K_ALTQ
  3. Editar K_ALTQ y agregar las siguientes líneas:
    Los siguientes pasos hablitarán algunas opciones en el KERNEL por lo que debe recompilarse:
    device pf
    device pflog
    device pfsync
    options ALTQ
    options ALTQ_CBQ
    options ALTQ_RED
    options ALTQ_RIO
    options ALTQ_HFSC
    options ALTQ_PRIQ
    options ALTQ_NOPCC
    Grabar y salir.

  4. config K_ALTQ
        responderá: Kernel build directory is ../compile/K_ALTQ, Don´t forget to ''make cleandepend && make depend''
       

  5. ingresar a ../compile/K_ALTQ
    make cleandepend && make depend
    make
    make install

  6. luego reiniciar el equipo para que se active el nuevo kernel con la configuración de PF+ALT
Configurar PF
  1. editar /etc/pf.conf
  2. definir los valores de: ext_if y  int_if, para el caso que estoy trabajando la tarjeta Externa es em0 y la Interna es em1, con ifconfig se puede determinar estos valores, la tarjeta de red que da cara al exterior de la red (puede ser internet) tiene puerta de enlace definida, mientras que la tarjeta interna que da cara a la red LAN, carece de puerta de enlace
    para este caso:
      ext_if="em0"
      int_if="em1"
  3. Para habilitar el NAT desde PF se declara la siguiente regla:nat on $ext_if from ($int_if:network) -> ($ext_if:0)
    Para permitir el funcionamiento de NAT previamente hay que activar esta funcion a nivel del FreeBSD editando el archivo /etc/sysctl.conf (requiere reinicio)
    hay que agregar la siguiente línea:
    net.inet.ip.forwarding=1
  4. una regla básica puede ser: por defecto bloquear toda la entrada y toda la salida
    block in all    
    block out  all 
  5. Luego hay que permitir la comunicción hacia loopback
    pass quick on lo0 all
  6. Permitir la comunicación con la red lan
    pass in on $int_if from ($int_if:network) to any
    pass out on $int_if from any to ($int_if:network
    )
  7. Luego se puede habilitar las reglas de acceso según la necesidad que se tenga:
    pass out on $ext_if proto tcp all modulate state flags S/SA#por ejemplo permitir todo el tcp de salida
Más referencia sobre filtrado de paquetes y sintaxis de las reglas las puede encontrar en:
http://www.openbsd.org/faq/pf/es/index.html

lunes, 22 de febrero de 2010

Instalación de RedMine en FreeBSD

RedMine es un sistema OpenSource HelpDesk altamente configurable, publicado en http://www.redmine.org/.

los pasos para su instalación en FreeBSD son:
  1. Es recomendable tener instalado y configurado el Apache, PHP y el MySQL antes de la instalación de este programa.
  2. acceder a la carpeta de instalación
    cd /usr/ports/www/redmine
  3. proceder con la instalación:
    make installEn este paso se instalarán todas las dependencias necesarias para el funcionamiento de este programa.
    El proceso de instalación puede tomar algún tiempo y debemos estar al tanto de las ventanas de configuración de las dependencias.
  4. El instalador crea la carpeta redmine en la ruta /usr/local/www/redmine hay que ingresar a esta carpeta:
    cd /usr/local/www/redmine
  5. Crear la base y el usuario en MySQL:
    create database redmine character set utf8;
    create user 'redmine'@'localhost' identified by 'my_password';
    grant all privileges on redmine.* to
    'redmine'@'localhost';
  6. en la carpeta /usr/local/www/redmine, copiar el siguiente archivo:
    cp config/database.yml.example config/database.yml
  7. luego editar el archivo config/database.yml para completar las siguientes líneas:
    database: escribir el nombre de la base de datos de esta aplicación, normalmente redmine
    username: escribir el usuario de mysql para esta aplicación
    password: escribir el password del usuario de esta aplicación
    Revisar que adapter esté en mysql y encoding esté en utf8.
  8. Ejecutar las siguientes líneas:
    rake config/initializers/session_store.rb (solo si la versión del redmine es previa a la 0.8.x)
    rake db:migrate RAILS_ENV="production"
    rake redmine:load_default_data RAILS_ENV="production"
    hay que escoger el idioma por defecto, en mi caso ES
  9. se deben crear algunas carpeta y cambiar sus derechos:
    mkdir tmp public/plugin_assets
    chown -R www:www files log tmp public/plugin_assets
    chmod -R 755 files log tmp public/plugin_assets
    Aunque este paso es recomendado, en la instalación de prueba que he realizado ya se encontraban creadas las carpetas y con sus derechos preestablecidos.
  10. Se puede realizar un test de la instalación con el siguiente comando:
    ruby script/server webrick -e productionVerificar en la pantalla de resultados el puerto que se asigna a la aplicación, normalmente es 3000, luego se puede ingresar via un explorador de internet con el formato http://ipservidor:3000, si tienes respuesta es porque la instalación ha sido correcta.
    Por defecto el usuario es admin y la clave admin, se recomienda cambiar esta clave.

lunes, 7 de diciembre de 2009

Montar Unidad Compartida vía Cliente Samba - FreeBSD

Si deseas acceder a una carpeta compartida de un equipo con Windows o un disco duro externo NAS, desde FreeBSD primero se debe instalar el Cliente SAMBA, los siguientes pasos realizarán esta tarea:
  • cd /usr/ports/net/samba-smbclient
  • make install
luego hay que editar el archivo /etc/nsmb.conf, en este archivo se registran las configuraciones por defecto para las conexiones hacia carpetas compartidas, de esta forma podemos guardar la IP del equipo que comparte la carpeta (si lo cree necesario) además el nombre del usuario y contraseña para evitar escribir la contraseña y luego poder montar la carpeta por medio de un scrip:
En el archivo /etc/nsmb.conf se escriben secciones de la siguiente forma:
[SERVIDOR]       # nombre del servidor
addr=192.168.1.5 #direccion del servidor que comparte la carpeta
[SERVIDOR:USUARIO] #nombre de un usuario, de aquel que se desea guardar la clave
password=claveusuario     #clave del usuario para acceder a la carpeta compartida

Luego para montar la carpeta compartida crear una carpeta que sea el punto de montaje:
mkdir /carpetaremota
usar el comando mount_smbfs para realizar la conexión:
mount_smbfs -I 192.168.1.5 -N //usuario@servidor/carpetacompartida /carpetaremota

si el archivo /etc/nsmb.conf no fue editado, se pedirá la contraseña, luego de ingresarla se realizar la conexión hacia la carpeta compartida.
-I sirve para indicar la IP del servidor en caso no se resuelva el nombre NETBIOS.
-N sirve para indicar que la contraseña se lea del archivo /etc/nsmb.conf

para desconectar la unidad, basta con desmontar la carpeta:
umount /carpetaremota

jueves, 17 de septiembre de 2009

SAMBA - Instalación - FreeBSD

Samba es un servicio que le permite a equipos con plataformas Unix o Linux compartir carpetas e impresoras con equipos bajo plataforma windows. El proceso de instalación en FreeBSD es el siguiente:
  1. Ingresar a:
    /usr/ports/net/samba33
  2. Escoger las opciones de configuración:
    make configse recomienda activar el entorno web de administración de SAMBA llamado SWAT, y si se cuenta con un dominio windows puede activarse las opciones de LDAP y ADS.
  3. Proceder con la instalación:
    make install
    debemos estar pendientes de las ventanas de configuración para la instalación de las dependencias.
  4. Copiar el archivo de ejemplo smb.conf.sample a la carpeta /usr/local/etc
    cp /usr/local/share/examples/samba/smb.conf.sample /usr/loca/etc/smb.conf
  5. editamos el archivo /usr/conf/etc/smb.conf y podemos cambiar algunos valores como:
    workgroup = NombreGrupoTrabajo
    server string= Descripción del equipo
    ...
  6. Editar el archivo /etc/rc.conf para activar las siguientes líneas que permitirán activar los servicios de SAMBA:
    nmbd_enable="YES"
    smbd_enable="YES"
  7. Editar el archivo /etc/inetd.conf para habilitar la línea de activación del servicio swat:
    swat stream tcp nowait/400 root /usr/local/sbin/swat swat
  8. si luego del reinicio del equipo el servicio swat no se ha habilitado, verificar que el servicio inetd se encuentre activo en /etc/rc.conf (inetd_enable="YES").
  9. luego de reiniciar el equipo se puede acceder al servicio de configuración web de samba SWAT por medio de la dirección http://ipdelservidor:901/

  10. para crear carpetas compartidas también se puede realizar manualmente editando el archivo:
    /usr/local/etc/smb.conf
    agregar por cada carpeta compartida lo siguiente:
    [nombreCarpetaCompartida]
      path=/ruta/carpeta/endisco
      valid users= usuario01
      public=yes
      writable=yes (si se concede escritura)
    El usuario debe está definido previamente según el sistema de validación de usuarios, por ejemplo si es un usuario definido en el mismo freebsd, es decir un usuario local, en este archivo se debe declarar en [global] la variable security =user.
    y el usuario debería declararse con pw adduser
    además, verificar que la carpeta predefinida le conceda derechos a este usuario.

  11. Realizar las pruebas para verificar la configuración.

martes, 15 de septiembre de 2009

Pure-Ftpd - FreeBSD

PureFTPD es un servicio FTP que permite multiples formas de autenticar a un usuario, entre las cuales tenemos, usuarios LDAP, usuarios registrados en MySQL, usuarios PAM, usuarios propios del PureFTPD, para poder realizar su instalación en FreeBSD se pueden seguir estos pasos:
  1. Ingresar a:
    /usr/ports/ftp/pure-ftpd
  2. Configurar la instalación:
    make config
    Elegir las opciones de instalación, por ejemplo soporte para autenticación LDAP, PAM o MySQL, también se puede elegir soporte para archivos de más de 2GB.
  3. Proceder con la instalación:
    make install
  4. Crear el archivo pure-ftpd.conf:
    cp /usr/local/etc/pure-ftpd.conf.sample /usr/local/etc/pure-ftpd.conf
  5. Editar el archivo /usr/local/etc/pure-ftpd.conf, se pueden cambiar los valores según la configuración que se desee tener, por ejemplo:
    MaxClientsPerIP 8 (limita la cantidad de conexiones desde una misma IP, evita que los usuarios puedan sobrecargar el servidor ftp).
    NoAnonymous yes (para prevenir el acceso anonimo al servidor)
    etc.
    Además, según el tipo de autenticación se debe habilitar la línea que corresponde al archivo de configuración, por ejemplo:
    #LDAPConfigFile /etc/pureftpf-ldap.conf (si se permitirán accesos a usuarios LDAP)
    #MySQLConfigFile /etc/pureftpd-mysql.conf (si se permitirán accesos a usuarios registrados en  MySQL)
    #PureDB /etc/pureftpd.pdb (si se crearán usuarios virtuales del mismo PureFTP).
  6. Para este caso trabajaremos con autenticación PureFTP, usuarios virtuales
    PureDB /usr/local/etc/pureftpd.pdb
    hay que cambiar la carpeta por defecto y redireccionarla a /usr/local/ en esta línea.
  7. Se debe crear un grupo y un usuario:
    pw groupadd ftpgroup
    pw useradd -g ftpgroup -d /dev/null -s /etc ftpuser
  8. Para crear un usuario, se utilizar el comando pure-pw,
    pure-pw useradd NOMBREUSUARIO -u ftpuser -d /CARPETA/DE/USUARIO
  9. En la carpeta del propietario se debe establecer el usuario ftpuser como propietario asi mismo el grupo ftpgroup, estas credenciales serán asumidas por los usuarios virtuales de Pure-Ftpd.
  10. Para que se apliquen los cambios luego de crear los usuarios hay que ejecutar:
    pure-pw mkdb
    Con esto se construirá nuevamente el archivo de passwords de pureftpd.
  11. Para iniciar automáticamente este servicio, editar el archivo /etc/rc.conf y agregar la línea:
    pureftpd_enable="YES"
  12. Para Detener, Iniciar o Reiniciar el servicio se puede utilizar:
    /usr/local/etc/rc.d/pure-ftpd stop
    /usr/local/etc/rc.d/pure-ftpd start
    /usr/local/etc/rc.d/pure-ftpd restart
Recomiendo, verificar bien la creación de los archivos pureftp.passswd y pureftp.db y estar seguros de la ruta que se está colocando en el archivo de configuración /usr/local/etc/pure-ftpd.conf

domingo, 13 de septiembre de 2009

Apache - PHP - Instalación

Instalación de Apache:
  1. ingresar a: /usr/ports/www/apache22
  2. realizar la configuración de la instalación, eligiendo bien las opciones que se instalarán: Soporte para Threads, para MySQL, LDAP, CGI, Autenticación, entre otros.
  3. luego proceder con la instalación:
    make install
  4. como parte de la configuración hay que agregar una línea en /etc/rc.conf:
    apache22_enable="YES"
  5. Para habilitar el filtro http y obtimizar la velocidad de respuesta de APACHE, hay que agregar estas líneas en el archivo /boot/loader.conf:
    accf_http_load="YES"
    accf_data_load="YES"
  6. Reiniciamos el servidor para hacer las pruebas sobre el servicio APACHE.
Instalación de PHP
  1. Ingresar a:
    /usr/ports/lang/php5
  2. configurar la instalación de PHP:
    make config
    aqui recomiendo activar la opción FASTCGI, además de las recomendadas por la pantalla de configuración.
  3. proceder con la instalación:
    make install
  4. luego de la instalación modificar el archivo:
    /usr/local/etc/apache22/httpd.conf
    activar el modulo:
    LoadModule php5_module  libexec/apache22/libphp5.so
  5. En:

      DirectoryIndex index.php index.html
  6. En:
            AddType application/x-httpd-php .php
            AddType application/x-httpd-php-source .phps 
  7.  reiniciar el servicio:
    httpd -k restart
  8. realizar las pruebas de php.

MySQL - Instalación en FreeBSD

Instalando MySQL

  1. Verificar si tenemos la última lista de ports en nuestro sistema,
  2. Ingresar a la carpeta del instalador de MySQL, verificar que sea la última versión estable de MySQL:
    cd /usr/ports/databases/mysql51-server
  3. Iniciar la instalación:
    make install
  4. Luego de concluida la instalación se debe proceder con la configuración:
    ejecutar: 
       /usr/local/bin/mysql_install_db
  5. Según la configuración del hardware y la utilidad del servidor se debe escoger un archivo de configuración, se pueden ver usando:
    ls /usr/local/share/mysql/*.cnf
    para el caso que estoy simulando, se usaría el my-medium.cnf (para equipos hasta de 128MB y que tiene los servicios web instalados), para servidores dedicados a Bases de Datos se sugiere my-large.cnf.
    hay que copiar el archivo seleccionado:

    cp /usr/local/share/mysql/my-medium.cnf  /usr/local/etc/my.cnf
  6. El proceso de instalación crea el grupo mysql y el usuario mysql, con estos dos hay que actualizar el acceso de seguridad a la carpeta /var/db/mysql:
    chown -R mysql:mysql /var/db/mysql
  7. Se inicia el motor de BD con la configuración inicial para establecer la contraseña root de MySQL:
    /usr/local/bin/mysqld_safe --user=mysql  &   (iniciando MySQL)

    /usr/local/bin/mysqladmin -u root password 'rootpassword'   (Estableciendo clave de root)
  8. Para que MySQL inicie automaticamente junto con el sistema operativo hay que modificar el archivo:
    /etc/rc.conf
    y agregar la línea:
    mysql_enable="YES"
  9. Reiniciar el servidor y realizar las pruebas.

Opciones del Servicio MySQL:
Para Detener el servicio:
/usr/local/etc/rc.d/mysql-server stop

Para Iniciar el servicio:

/usr/local/etc/rc.d/mysql-server start

Para Reiniciar el servicio:
/usr/local/etc/rc.d/mysql-server restart

miércoles, 9 de septiembre de 2009

MySQL - Cambiar la ruta de los archivos de Bases de datos

por defecto en un sistema UNIX, por ejemplo FreeBSD, los archivos que conforman las bases de datos de MySQL se almacenan en /var/db/mysql si se requiere cambiar esta ubicación se pueden seguir estos pasos:

  1. Detener el servicio MySQL:
    /etc/rc.d/mysql.server stop
  2. Mover el contenido de la carpeta /var/db/mysql a la nueva ubicación:
    mv /var/db/mysql /nuevaubicacion/
    en este caso mysql quedará dentro de /nuevaubicacion
  3. Crear un enlace simbolico dentro de /var/db que direccione a la ubicación de la carpeta mysql:
    ln -s /nuevaubicacion/mysql /var/db/mysql
  4. Verificar que el propietario de la carpeta /nuevaubicacion/mysql siga siendo mysql, caso contrario ejecutar:
    chown mysql:mysql /nuevaubicacion/mysql
  5. Luego se puede iniciar nuevamente el servicio:
    /etc/rc.d/mysql.server start

con estos pasos no es necesario cambiar la configuración de MySQL pero si la ubicación de los archivos de la base de datos.

FreeBSD - Ports

Los Ports, es el un sistema de instalación, actualización y desinstalación de paquetes para freeBSD.
Algunos de sus comandos que se utilizan son:

portsnap fetch :
Permite consultar la base de datos de paquetes actualizada de programas instalables en FreeBSD.

portsnap extract:
Permite desempaquetar la base en la ruta /usr/ports luego de esto podemos realizar la instalación de los paquetes desde esta ruta.