Configuración de SSH, SFTP, Apache, MySQL y SSL en Linux: Tutorial Paso a Paso

Informática6,75 KB

SSH (Linux – Linux)

Instalar SSH: aptitude install ssh

Conectarse de un equipo a otro: ssh [email protected]

Introducir la contraseña de alex.

Editar la configuración: nano /etc/ssh/ssh_config

Descomentar y modificar: ForwardX11 yes

Desde PuTTY (Windows – Linux, texto): introducir la IP y el puerto 22.

SFTP (Linux – Linux)

Ejecutar: sftp usuario@IP

Subir archivo: put /RUTA/archivo /RUTA/destino

Descargar archivo: get /RUTA/archivo /RUTA/destino

WINSCP (Windows – Linux, gráfico)

Ejecutar WinSCP.exe e introducir usuario, IP y contraseña.

ProFTPD

Instalar ProFTPD: aptitude install proftpd

Reiniciar el servicio.

Konqueror

Abrir el programa y, en la barra de direcciones, escribir: sftp://usuario@IP

Conexión SSH sin introducir contraseña

Generar las claves: ssh-keygen

Copiar la clave pública: scp id_rsa.pub usuario@IP:/home/alumno/.ssh/authorized_keys

Apache

Instalar Apache2: aptitude install apache2

Activar el servicio: /etc/init.d/apache2 start

Modificar la página de inicio: nano /var/www/index.html

Añadir el contenido que se desea mostrar en la web.

Modificar el archivo de hosts: nano /etc/hosts

Vincular la IP de la máquina con una dirección web.

Enlace

Crear una carpeta en www: mkdir /var/www/enlace

Copiar el index.html en la carpeta creada: cp /var/www/index.html /var/www/enlace

Modificar el index copiado: nano /var/www/enlace/index.html

Modificar el index.html de www y añadir el enlace:

Nombre del enlace

Carpeta de usuario (public_html)

Crear la carpeta en el directorio del usuario: mkdir /home/alex/public_html

Copiar el index.html dentro de la carpeta creada: cp /var/www/index.html /home/alex/public_html

Modificar el index con el contenido deseado: nano /home/alex/public_html/index.html

Activar el módulo de directorios de usuario: a2enmod userdir

Reiniciar Apache: /etc/init.d/apache2 restart

Acceder a la página desde el navegador: http://www.alex.com/~alex

Acceso web mediante contraseña

Editar el archivo de configuración: nano /etc/apache2/apache2.conf

Añadir al final:

<Directory "/home/alex/public_html">
    AllowOverride All
</Directory>

Crear un fichero oculto en public_html: touch .htaccess

Editar el fichero creado: nano .htaccess

AuthName "Password Requerido"
AuthType Basic
AuthUserFile /home/alex/public_html/.htpasswd
Require valid-user

Crear el usuario y la contraseña: htpasswd -b -c .htpasswd alex 123456321

Sitio seguro (SSL)

Instalar OpenSSL: apt-get install openssl

Crear la carpeta ssl en Apache2: mkdir /etc/apache2/ssl

Dentro de la carpeta, generar el certificado:

cd /etc/apache2/ssl
openssl genrsa -des3 -out server.key 1024
openssl rsa -in server.key -out server.pem
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 60 -in server.csr -signkey server.key -out server.crt

Editar la configuración: nano /etc/apache2/sites-available/default

Al principio del archivo:

NameVirtualHost websegura.alex.com:443

Al final del archivo:

<VirtualHost websegura.alex.com:443>
    ServerName websegura.alex.com
    DocumentRoot /etc/apache2/ssl
    SSLEngine On
    SSLCertificateFile /etc/apache2/ssl/server.crt
    SSLCertificateKeyFile /etc/apache2/ssl/server.key
    ErrorLog /var/log/apache2/error.log
    CustomLog /var/log/apache2/access.log combined

    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
    SSLRequireSSL
</VirtualHost>

Modificar el archivo de hosts añadiendo el sitio seguro: nano /etc/hosts

Activar el módulo SSL: a2enmod ssl

Reiniciar Apache2: /etc/init.d/apache2 restart

Acceder desde el navegador: https://websegura.alex.com

MySQL

Instalar MySQL: aptitude install mysql-server

Entrar en MySQL: mysql -u root -p

mysql> CREATE DATABASE `alex`;
mysql> USE `alex`;
mysql> CREATE TABLE `alex` (`dni` VARCHAR(9) NOT NULL PRIMARY KEY, `nombre` VARCHAR(50), `apellidos` VARCHAR(50), `telefono` VARCHAR(9));
mysql> INSERT INTO `alex` (`dni`, `nombre`, `apellidos`, `telefono`) VALUES ('16616000H', 'Alex', 'Jump Tek', '659136591');
mysql> SELECT * FROM `alex`;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY '123456321' WITH GRANT OPTION;

Creación del script PHP

Crear una carpeta en /var/www/: mkdir /var/www/mysql

Crear el index dentro de la carpeta: nano /var/www/mysql/index.php

Instalar el módulo PHP para MySQL: aptitude install php5-mysql

Editar el archivo de configuración: nano /etc/php5/apache2/php.ini

Descomentar la línea extension=mysql.so (quitar el ; inicial).

Reiniciar Apache2 y MySQL.

Abrir el navegador en: http://www.IP/mysql/index.php

PhpMyAdmin

Instalar PhpMyAdmin: aptitude install phpmyadmin

Descargar

PDF Word HTML