Cómo instalar Apache, MariaDB y PHP (FAMP) Stack en FreeBSD

Cómo instalar Apache, MariaDB y PHP (FAMP) Stack en FreeBSD

Esta guía describirá cómo instalar y configurar FBAMP. en el sistema operativo FreeBSD, que es similar a una pila LAMP. en Linux. FBAMP. es un acrónimo que significa una colección de software basado en el sistema operativo FreeBSD, servidor Apache HTTP. el servidor web de código abierto más popular en Internet, MariaDB. sistema de gestión de bases de datos relacionales ( RDBMS. , una bifurcación del motor de base de datos MySQL. y PHP. del lado del servidor.

Requisitos

  1. Una nueva instalación de FreeBSD
  2. Configuraciones iniciales de FreeBSD
  3. Acceso directo a la consola o SSH en caso de una conexión remota a FreeBSD.
  4. Una dirección IP estática configurada en una interfaz de red.

Paso 1: Instale Apache en FreeBSD

1.. El primer servicio que instalaremos es el servidor Apache HTTP. Por defecto, FreeBSD ofrece múltiples versiones con diferentes módulos de trabajo en tiempo de ejecución para el servidor web Apache.

Las versiones están precompiladas en un paquete binario y provistas por los repositorios FreeBSD PORTS. Para mostrar todos los paquetes binarios de Apache proporcionados por PORTS. ejecute el siguiente comando.

# ls/usr/ports/www/| grep apache  Lista de paquetes de Apache en FreeBSD  Lista de paquetes de Apache en FreeBSD Lista de paquetes de Apache en FreeBSD

También puede buscar paquetes de Apache precompletados disponibles en FreeBSD por emitiendo el siguiente comando.

# pkg search apache2 Buscar paquetes de Apache en FreeBSD  Buscar paquetes de Apache en FreeBSD Buscar paquetes de Apache en FreeBSD

2.. A continuación, instale la última versión del servidor HTTP Apache con todos los módulos necesarios emitiendo el siguiente comando.

# pkg install apache24  Instalar Apache en FreeBSD  Instalar Apache en FreeBSD Instalar Apache en FreeBSD freestar.config.enabled_slots.push (LocationName:” tecmint_incontent “, slotId: “tecmint_incontent”);

3. Después de instalar el servidor web Apache en el sistema, ejecute el siguiente comando para habilitar el demonio en todo el sistema en FreeBSD.

# sysrc apache24_enable = “yes”

Un método alternativo para habilitar el demonio Apache sería para editar y agregar manualmente la línea apache24_enable = “yes” en el archivo /etc/rc.conf. como se ilustra en la siguiente captura de pantalla.

 Habilitar Apache System Wide en FreeBSD  Habilitar Apache System Wide en FreeBSD Habilitar Apache System Wide en FreeBSD

4.. Finalmente, para probar si el servidor web es funcionando correctamente, inicie el demonio Apache emitiendo el siguiente comando y visite la página web predeterminada apuntando un navegador a la dirección IP de su servidor de FQDN (http://IP-orFQDN) como se muestra en la siguiente captura de pantalla.

# service apache24 start  Iniciar servicio Apache  Iniciar el servicio Apache Iniciar el servicio Apache  Verificar página de Apache  Verificar página de Apache Verificar página Apache

T El directorio webroot predeterminado del servidor web Apache en FreeBSD 11.x. se encuentra en/usr/local/www/apache24/data/system path. Allí encontrará un pequeño archivo index.html. que puede editar como prefiera.

 Apache DocumentRoot en FreeBSD  Apache DocumentRoot en FreeBSD Apache DocumentRoot en FreeBSD

Paso 2: Instale PHP en FreeBSD

5.. FreeBSD 11.x. ofrece múltiples versiones de PHP. interpretó el lenguaje del lado del servidor empaquetado en binarios precompletados. Para obtener una lista de todos los paquetes de versiones de PHP disponibles proporcionados por los repositorios de FreeBSD Ports, emita el siguiente comando.

# ls/usr/ports/lang/| grep php  Lista de versiones de PHP en FreeBSD  Lista de versiones de PHP en FreeBSD Lista de versiones de PHP en FreeBSD

Un método alternativo de búsqueda todas las versiones disponibles del paquete FreeBSD PHP. se realizan ejecutando el siguiente comando.

# pkg search-o php  Buscar versiones PHP en FreeBSD  Buscar versiones de PHP en FreeBSD Buscar versiones de PHP en FreeBSD

6.. Para buscar todos los binarios disponibles proporcionados por FreeBSD para una versión específica de PHP (versiones 5. o 7. actualmente) ejecute el debajo de los comandos. Use menos comando para limitar y navegar a través de la salida.

# pkg buscar php5 | menos # pkg buscar php7  Lista de paquetes PHP 5 en FreeBSD  Lista de paquetes PHP 5 en FreeBSD Lista de paquetes PHP 5 en FreeBSD  Lista de paquetes PHP 7 en FreeBSD  Lista de paquetes PHP 7 en FreeBSD Lista de paquetes PHP 7 en FreeBSD

7.. Para ser más específico sobre qué módulos proporciona una versión personalizada de PHP, ejecute el siguiente comando como se describe a continuación, que muestra todos los módulos disponibles para Versión de PHP 7.1.

# pkg busca datos de php71  Lista de módulos PHP en FreeBSD  Lista de módulos PHP en FreeBSD Lista de módulos PHP en FreeBSD

8.. En esta guía instalaremos PHP 7.1. lanzamiento para nuestra pila FBAMP. Ejecute el siguiente comando para instalar PHP con algunos de los módulos más importantes necesarios para una instalación típica de CMS.

# pkg install php71 mod_php71 php71-mbstring php71-mcrypt php71-zlib php71-curl php71-gd php71-json

9.. A continuación, debemos crear el archivo de configuración php.conf. para el servidor web Apache en /usr/local/etc/apache24/includes/ ruta del sistema con el siguiente contenido.

# nano/usr/local/etc/apache24/Includes/php.conf

Agregue las siguientes líneas al archivo php.conf.

DirectoryIndex index.php index.html Aplicación SetHandler/x-httpd-php Aplicación SetHandler/x-httpd-php-source  Configurar PHP para Apache en FreeBSD  Configurar PHP para Apache en FreeBSD Configurar PHP para Apache en FreeBSD

10.. Para probar si la puerta de enlace PHP está trabajando como se esperaba con el servidor web Apache, cree un archivo PHP info.php. en la ruta /usr/local/www/apache24/data/system. que es el documento web predeterminado ruta raíz del servidor web Apache.

# echo ‘ ‘| tee-a/usr/local/www/apache24/data/info.php

Reinicie el demonio Apache para aplicar los cambios.

# service apache24 restart

A continuación, visite el siguiente URI en un navegador para ver PHP resumen.

http://IP-or-FQDN/info.php  Verificar módulos PHP en FreeBSD  Verificar módulos PHP en FreeBSD Verificar módulos PHP en FreeBSD

11.. Para activar el archivo de configuración PHP ini para producción, ejecute los siguientes comandos. Puede modificar el archivo de producción php.ini. para cambiar diversas configuraciones de PHP en su pila FBAMP.

# cp/usr/local/etc/php.ini-production/usr/local/etc/php.ini-production.bakup # ln-s/usr/local/etc/php.ini-production/usr/local/etc/php.ini

Paso 3: Instale MariaDB en FreeBSD

12.. El último componente que falta en nuestra pila FBAMP. es el servidor de base de datos MySQL. FreeBSD 11.x. ofrece más de 1000. paquetes para diversas bases de datos.

Para mostrar qué componentes están disponibles para MariaDB. o bases de datos MySQL. ejecute los siguientes comandos. En esta guía instalaremos la base de datos MariaDB sobre MySQL (que ahora es propiedad y está desarrollada activamente por Oracle).

# ls-al/usr/ports/bases/| grep mariadb # pkg search-o mariadb # ls-al/usr/ports/bases/| grep mysql # pkg search-o mysql5  Enumere las versiones de MariaDB en FreeBSD  Lista de versiones de MariaDB en FreeBSD Lista de versiones de MariaDB en FreeBSD  Buscar versiones de MariaDB en FreeBSD  Buscar versiones de MariaDB en FreeBSD Buscar versiones de MariaDB en FreeBSD

13.. En esta guía instalaremos la última versión del servidor de base de datos MariaDB en FreeBSD, que actualmente está representado por la versión del paquete binario mariadb102.

Ejecute el siguiente comando para instalar MariaDB servidor y cliente y el módulo PHP 7.1. requerido para acceder a la base de datos a través de la puerta de enlace del servidor Apache.

# pkg install mariadb102-server mariadb102-client php71-mysqli

​​ 14.. A continuación, habilite el servidor MariaDB en todo el sistema e inicie el demonio de la base de datos ejecutando los siguientes comandos.

# sysrc mysql_enable = “yes” # service mysql-server start

15.. Para proteger la base de datos, ejecute el script mysql_secure_installation. Utilice el siguiente extracto de salida del script para fortalecer MariaDB.

#/usr/local/bin/mysql_secure_installation Salida de muestra Salida del script de instalación segura MySQL NOTA: ¡SE RECOMIENDA EJECUTAR TODAS LAS PARTES DE ESTE SCRIPT PARA TODOS LOS SERVIDORES MariaDB EN USO DE PRODUCCIÓN! POR FAVOR LEA CADA PASO DETENIDAMENTE. Para iniciar sesión en MariaDB para protegerlo, necesitaremos la contraseña actual para el usuario root. Si acaba de instalar MariaDB y aún no ha establecido la contraseña de root, la contraseña estará en blanco, por lo que solo debe presionar enter aquí. Ingrese la contraseña actual para root (ingrese para ninguna): OK, contraseña usada con éxito, avanzando … Establecer la contraseña de root asegura que nadie pueda iniciar sesión en el usuario root de MariaDB sin la autorización adecuada. ¿Establecer contraseña de root? [S/n] y Nueva contraseña: Vuelva a ingresar la nueva contraseña: ¡La contraseña se actualizó correctamente! Recarga de tablas de privilegios … … ¡Éxito! De forma predeterminada, una instalación de MariaDB tiene un usuario anónimo, lo que permite que cualquiera pueda iniciar sesión en MariaDB sin tener que tener una cuenta de usuario creada para ellos. Esto está diseñado solo para pruebas y para que la instalación sea un poco más fluida. Debe eliminarlos antes de pasar a un entorno de producción. ¿Eliminar usuarios anónimos? [S/n] y … ¡Éxito! Normalmente, a root solo se le debe permitir conectarse desde ‘localhost’. Esto asegura que alguien no pueda adivinar la contraseña de root de la red. ¿Deshabilitar el inicio de sesión de root de forma remota? [S/n] y … ¡Éxito! De forma predeterminada, MariaDB viene con una base de datos llamada ‘prueba’ a la que cualquiera puede acceder. Esto también está diseñado solo para pruebas y debe eliminarse antes de pasar a un entorno de producción. ¿Eliminar la base de datos de prueba y acceder a ella? [Y/n] y-Eliminando la base de datos de prueba … … ¡Éxito!-Eliminando privilegios en la base de datos de prueba … … ¡Éxito! Recargar las tablas de privilegios garantizará que todos los cambios realizados hasta el momento entren en vigor de inmediato. ¿Recargar tablas de privilegios ahora? [S/n] y … ¡Éxito! Limpiando … ¡Todo listo! Si ha completado todos los pasos anteriores, su instalación de MariaDB ahora debería ser segura. ¡Gracias por usar MariaDB!

16.. De forma predeterminada, el demonio MariaDB escucha las conexiones de red fuera de localhost en el puerto 3306/TCP. Ejecute el comando netstat, lsof o sockstat. para obtener el estado del socket MariaDB. Esta configuración es peligrosa y expone el servicio a ataques de red externos.

# lsof-i4-i6 # sockstat-4-6  Verificar puerto MariaDB  Verificar puerto MariaDB Verifique el puerto de MariaDB

17.. Si no necesita acceso remoto a MariaDB, asegúrese de que el daemon de MariaDB solo escuche localhost, emitiendo el siguiente comando. Posteriormente, reinicie el servicio MariaDB para aplicar los cambios.

# sysrc mysql_args = “-bind-address = 127.0.0.1” # service mysql-server restart o #/usr/local/etc/rc.d/mysql-server reiniciar

18.. Nuevamente, ejecute el comando netstat, lsof o sockstat. para listar el socket de red MariaDB. El socket debería enlazarse y escuchar en localhost ahora, como se ilustra en la siguiente imagen.

# lsof-i4 | grep mysql # netstat-an | grep 3306 # sockstat-4 | grep 3306  Verifique la escucha de MariaDB en Localhost  Verifique la escucha de MariaDB en Localhost Verifique la escucha de MariaDB en Localhost

19.. Para probar la conectividad de la base de datos MariaDB desde la consola, emita el siguiente comando. Ingrese la contraseña de root de MySQL en el indicador y se debe mostrar una lista de bases de datos predeterminadas en la pantalla de su consola como se ilustra en la imagen de abajo.