Instalación de LAMP y configuración de apache para permisología con httpd
- deibis contreras
- 11 oct 2017
- 4 Min. de lectura
Siguiendo por nuestro camino de software libre, esta vez tocaremos el tema de como instalar LAMP en nuestra estación de trabajos, además explicaremos cómo configurar el acceso por usuario mediante apache, un método seguro y eficiente.
Como breve repaso en nuestro post anterior ya habíamos conversado sobre ¿qué es linux? si aún no lo a visto puedes darle un vistazo dando clic aquí, y también conversamos sobre ¿como instalar linux?, igual si no lo a visto puedes dar clic aquí.
Pero que es LAMP: Es un conjunto de sistemas, lenguajes o tecnologías que se utilizan muy habitualmente, de manera conjunta, en el desarrollo de aplicaciones web. En concreto, LAMP hace referencia a Linux, Apache, MySQL y PHP/Perl/Python.
Bueno en primer lugar para instalar LAMP lo primero que haremos es lo siguiente. Abrimos nuestra terminal y tipeamos
Para actualizar los repositorios.
sudo apt-get update
Para instalar tasksel:
sudo apt-get install tasksel
Que es tasksel
Tasksel es una herramienta muy útil para los servidores que te permita instalar grupos de paquetes(programas, librerías y archivos) que están relacionados. es una herramienta de interfaz gráfica para servidores, y puede ahorrar muchas líneas de comando a la hora de la instalación de algún paquete o programa.
Ejecutar tasksel
sudo tasksel
Nos saldrá la siguiente ventana de interfaz gráfica para servidores.

Con la barra espaciadora podemos seleccionar los elementos que queremos instalar, en este caso yo seleccionare LAMP y luego enter.
Durante la instalación nos saldrá un recuadro y nos pedirá que creemos una clave para MYSQL, la colocamos.

Luego validamos la contraseña.

Ok ya tenemos instalado LAMP, ahora iniciaremos con la configuración de apache.
Primero como casi todos sabemos apache viene instalado predeterminadamente en la ruta /var/www/html para una primera configuración de seguridad de apache lo primeros que haremos es cambiar la ruta de dicha preinstalación.
Para cambiar la ruta de esa instalación vamos a:
/etc/apache2/sites-available y configuraremos los archivos que se encuentra hay que son:
000-default.conf y default-ssl.conf

tipeamos
cd /etc/apache2/sites-available
sudo nano 000-default.conf
ok luego buscaremos la siguiente linea que dice
DocumentRoot /var/www/html
y la cambiaremos por
DocumentRoot /home/mi_sitio_web/html
Para guardar en nano tecleamos control + o.
Y para salir control + x
luego editamos el otro archivo default-ssl.conf: tipeamos
sudo nano default-ssl.conf
Buscamos la linea que dice
DocumentRoot /var/www/html
y la cambiamos por
DocumentRoot /home/mi_sitio_web/html
Para guardar en nano tecleamos control + o.
Y para salir control + x
Luego vamos a /etc/apache2 para editar el archivo apache2.conf
cd /etc/apache2
sudo nano apache2.conf
Y bajamos hasta donde nos indica.
<Directory /var/www/>
Options Indexas FollowSymLinks
AllowOverride None
Require all granted
</Directory>
Y lo cambiaremos por
<Directory /home/mi_sitio_web/>
Options Indexas FollowSymLinks
AllowOverride None
Require all granted
</Directory>
Para guardar en nano tecleamos control + o.
Y para salir control + x
cambiados estos parámetros reiniciamos el servidor apache, para reiniciar tipiaremos
sudo /etc/init.d/apache2 restart
Ok ahora vamos al directorio /home para crear los directorios donde se va a encontrar el nuevo servidor web.
cd /home
creamos las carpeta:
sudo mkdir mi_sitio_web
cd mi_sitio_web
sudo mkdir html
cd html
Luego creamos una carpeta que se llame descargas.
sudo mkdir descarga
en estas carpetas crearemos 3 carpetas mas con estas tres carpeta estudiaremos la permisología con apache.
pwd
/home/mi_sitio_web/html/descargas
sudo mkdir peliculas videos series
nos percatamos en que las carpetas hallan sido creadas con un
ls -al
ok crearemos archivos vacíos para simular que son películas series y videos
pwd
/home/mi_sitio_web/html/descargas
cd películas
sudo touch la_dama_y_el_vagabundo la_mujer_maravilla toy_story
revisamos en que se allá creados los archivos
la -al
luego pasamos a la otra carpeta
cd ../series
sudo touch el_capo la_suegra pablo_escopar
revisamos en que se allá creados los archivos
ls -al
luego pasamos a la otra carpeta
cd ../videos
sudo touch franco_de_vita reik sin_bandera
revisamos en que se allá creados los archivos
ls -al

vamos a nuestro navegador web
http://localhost/descargas/
y verificamos en que se vean las carpetas creadas y sus respectivos archivos dentro de ella.

Bueno ya verificados las carpetas y vemos que tenemos acceso a todas las carpetas vamos nuevamente a la terminal.
Esta vez crearemos una carpeta con la ruta /home/carpeta_httpd para los usuarios que tendrán acceso a los directorios de peliculas series y videos
cd /home
sudo mkdir carpeta_httpd
cd carpeta_httpd
sudo touch peliculas series y videos
revisamos en que se allá creados los archivos
ls -al
luego vamos a la carpeta de configuración de apache
cd /etc/apache2
crearemos un archivo llamado httpd.conf
sudo mkdir httpd.conf
y lo editamos.
sudo nano httpd.conf
y agregaremos la siguiente configuración:
<Directory "/home/mi_sitio_web/html/descargas/peliculas">
AuthType Basic
AuthName "Acceso restringido"
AuthUserFile /home/carpeta_httpd/peliculas
Require valid-user
</Directory>
<Directory "/home/mi_sitio_web/html/descargas/series">
AuthType Basic
AuthName "Acceso restringido"
AuthUserFile /home/carpeta_httpd/series
Require valid-user
</Directory>
<Directory "/home/mi_sitio_web/html/descargas/videos">
AuthType Basic
AuthName "Acceso restringido"
AuthUserFile /home/carpeta_httpd/videos
Require valid-user
</Directory>
Para guardar en nano tecleamos control + o.
Y para salir control + x

Después configuramos el archivo apache2.conf
sudo nano apache2.conf
y al final del archivo agregaremos la siguiente línea
include "httpd.conf"
Para guardar en nano tecleamos control + o.
Y para salir control + x
reiniciamos el servidor apache
sudo /etc/init.d/apache2 restart
Vamos nuevamente al navegador y podremos observar que ya las carpetas no están visibles. http://localhost/descargas/ Y si colocamos http://localhost/descargas/peliculas nos pedirá una contraseña.
para agregar un usuario vamos a /home/carpeta_httpd/
cd /home/carpeta_httpd/
y para crear un usuario para que pueda acceder a las carpetas tipiaremos
sudo htpasswd peliculas deibis
colocamos la clave y luego la verificaremos.
y creamos otro usuario para la carpeta series.
sudo htpasswd series jose
colocamos la clave y luego la verificaremos.
cabe destacar que el usuario jose no tendrá acceso al directorio de peliculas y videos y el usuario deibis no tendrá acceso al directorio videos y series.
luego vamos a nuestro navegador y copíamos
http://localhost/descargas/peliculas
y nos pedirá usuario y clave.

Si es así excelente ya configuraste tu servidor web apache con dos tipos de seguirdad.
1 cambiar de lugar su instalación predeterminado,
2 solicitud de permiso con apache.
La Libertad del Código es Directamente Proporcional al Desarrollo de una Organización
Comments