Uploaded by ginosuarellan

MANUAL PARA CENTOS 7

advertisement
MANUAL
PARA
SERVIDOR
CENTOS 7
ÍNDICE
ÍNDICE .................................................................................................................................. 2
1.
2.
3.
4.
Configuración de un Subdominio en Centos 7 ............................................................... 3
1.1.
Crear nombre del subdominio en Goodaddy ........................................................... 3
1.2.
Configuración del subdominio en el servidor .......................................................... 4
Configurar un Recaptcha ................................................................................................. 9
2.1.
Crear Recaptcha ....................................................................................................... 9
2.2.
Configuración de Recaptcha .................................................................................. 11
Certificado SSL ............................................................................................................. 13
3.1.
Instalación de Certbot ............................................................................................ 13
3.2.
Configurar certificado SSL en un subdominio ...................................................... 14
3.3.
Renovar certificado SSL ........................................................................................ 15
Backup automático MySQL + Script Bash Centos 7 .................................................... 16
4.1.
Código Script Bash ................................................................................................ 16
4.2.
Configurar un script en el servidor ........................................................................ 19
2
1. Configuración de un Subdominio en Centos 7
1.1. Crear nombre del subdominio en Goodaddy
Para agregar un subdominio es necesario crearlo a través de panel de administrador
de dominio de Godaddy.
Por ejemplo, crearemos un subdominio:
facturación.lunaverde.pe
El tipo de registro debe ser tipo A, el HOST indicar el nombre del subdominio y
APUNTA A tiene que ser la dirección IP del servidor a donde el dominio resolverá.
3
1.2. Configuración del subdominio en el servidor
Teniendo el subdominio creado en Godaddy se tiene que hacer las configuraciones
dentro del servidor, para ello debemos añadir el subdominio en el servicio de apache
en la siguiente ruta:
cd /etc/httpd/sites-available
ls
Ahora debemos crear el subdominio y configurarlo con el siguiente comando:
vim facturacion.lunaverde.pe.conf
Ahora escribir lo siguiente:
<VirtualHost *:80>
ServerName facturacion.lunaverde.pe
ServerAlias facturacion.lunaverde.pe
DocumentRoot /var/www/html/facturacion (Colocar ruta del subdominio)
ErrorLog /var/www/html/facturacion/error.log (Colocar la ruta)
</VirtualHost>
4
Quedando como en la siguiente imagen:
ls
5
Ahora ya tenemos el subdominio creado, sin embargo, tenemos que habilitarlo, para
Apache pueda reconocer el subdominio, a continuación, listamos los subdominios
que ya están habilitados y se mostrarán con letras de color celeste, ejecutamos el
siguiente comando:
cd /etc/httpd/sites-available
ls
6
Ahora ejecutaremos el siguiente comando para habilitar un subdominio:
ln -s /etc/httpd/sites-available/facturacion.lunaverde.pe.conf /etc/httpd/sitesenabled/facturacion.lunaverde.pe.conf
Ahora listamos para verificar si se habilitó:
ls
7
Por último, para que la configuración del subdominio surta efecto es necesario
reiniciar el servicio de Apache, este proceso suele tardar unos minutos y mientras
dure este procedimiento quedaran detenidos los servicios web por lo que todas las
aplicaciones web quedarán inhabilitadas temporalmente; a continuación, ejecutamos
el siguiente comando:
systemctl httpd restart
8
2. Configurar un Recaptcha
2.1. Crear Recaptcha
Ingresar al siguiente enlace y crearse una cuenta:
https://www.google.com/recaptcha/about/
Teniendo una cuenta seguimos a la opción Admin console:
Rellenar el siguiente formulario con las siguientes opciones, además de agregar el
dominio y presionar el botón registrar:
9
Se obtendrá la clave privada y clave publica para utilizar el Recaptcha, el cual se
debe anotar para configurar en el código php y html:
Si se desea añadir otro subdominio agregarlo en la siguiente sección, de esta forma
estarás habilitando el Recapcha para que funcione con otro subdominio:
10
2.2. Configuración de Recaptcha
Ahora lo que tenemos que hacer es reemplazar la clave privada en el archivo logincheck.php en la variable $secret:
11
A continuación, reemplazar la clave publica en Login ubicado en el archivo
index.php y en la variable data-sitekey:
Finalmente queda actualizar los archivos modificados por FileZilla para que se
apliquen los cambios realizados.
12
3. Certificado SSL
3.1. Instalación de Certbot
Para obtener el certificado SSL gratuito de Let’s Encrypt, es necesario emitir el
certificado vía web, sin embargo, este proceso suele ser más engorroso por lo cual
mediante el siguiente método se podrá realizar de forma más sencilla y sin muchos
procedimientos mediante certbot.
Procedemos a instalar certbot a través del siguiente comando:
yum install epel-release
13
yum install certbot python2-certbot-apache mod_ssl
3.2. Configurar certificado SSL en un subdominio
Para instalar un certificado SSL para un subdominio en específico, realizar mediante
el siguiente comando y seguir con las instrucciones de la terminal:
certbot –apache
14
3.3. Renovar certificado SSL
Para renovar el certificado SSL para todos los subdominios activos de forma
inmediata, solo basta ejecutar la siguiente línea de comando:
certbot renew
Con este procedimiento se renovará el certificado SSL para todos los subdominios
con una vigencia de 90 días, sin embargo, se puede ejecutar este mismo comando
antes que el certificado caduque.
15
4. Backup automático MySQL + Script Bash Centos 7
4.1. Código Script Bash
#!/bin/bash
################################################################
##
## Script Bash
## Auto BackUp MySQL
## By: Gino Su
## Update: Jan 10, 2021
##
################################################################
export PATH=/bin:/usr/bin:/usr/local/bin
TODAY=`date +"%d%b%Y"`
HORA=`date +"%H:%M"`
################################################################
################## Solo modificar valores aca #######################
DB_BACKUP_PATH='/backup/dbbackup'
MYSQL_HOST='localhost'
MYSQL_PORT='3306'
MYSQL_USER='root'
MYSQL_PASSWORD='lverde'
16
DATABASE_NAME='saphi'
BACKUP_RETAIN_DAYS=30 ## Plazo maximo de BackUp
#################################################################
mkdir -p ${DB_BACKUP_PATH}/${TODAY}
echo "Backup started for database - ${DATABASE_NAME}"
mysqldump -h ${MYSQL_HOST} \
-P ${MYSQL_PORT} \
-u ${MYSQL_USER} \
-p${MYSQL_PASSWORD} \
${DATABASE_NAME} | gzip >
${DB_BACKUP_PATH}/${TODAY}/${DATABASE_NAME}-${HORA}.sql.gz
if [ $? -eq 0 ]; then
echo "Backup generado con exito"
else
echo "Error al generar backup"
fi
17
##### Remove backups older than {BACKUP_RETAIN_DAYS} days #####
DBDELDATE=`date +"%d%b%Y" --date="${BACKUP_RETAIN_DAYS} days
ago"`
if [ ! -z ${DB_BACKUP_PATH} ]; then
cd ${DB_BACKUP_PATH}
if [ ! -z ${DBDELDATE} ] && [ -d ${DBDELDATE} ]; then
rm -rf ${DBDELDATE}
fi
fi
### End of script ####
18
4.2. Configurar un script en el servidor
Crear un archivo con la extensión .sh mediante siguiente comando:
vim /bksaphi.sh
Copiar el código completo del script y pegar en el terminal con clic derecho.
Modificar los valores según la base de datos al cual se desea crear los backups, por
ejemplo, a la base de datos saphi y el plazo máximo para guardar las copias de
seguridad con 30 días:
Para guardar presionar la tecla ESC, luego escribir: WQ! y presionar la tecla
ENTER.
19
Listamos lo que acabamos de crear:
ls
Es necesario que el script tenga los permisos de ejecución, por lo tanto, aplicamos el
siguiente comando:
chmod 777 bksaphi.sh
Al ejecutar dicho comando, el archivo tendrá los permisos de ejecución y se
mostrará en letras de color verde como en la siguiente imagen:
ls
20
Ahora que ya se tiene el script creado y configurado se necesita que estas órdenes se
ejecuten automáticamente mediante crontab, para ello se debe añadir la tarea dentro
de la lista, para que el script sea ejecutado por ejemplo 4 veces al día en diferentes
horarios que elijamos, todos los días.
Ejecutar lo siguiente:
crontab -e
0 3,9,15,21 * * * /root/bksaphi.sh (Aquí debes indicar la ruta del script y las
horas)
Para guardar presionar la tecla ESC, luego escribir: WQ! y presionar la tecla
ENTER.
Estructura para la configuración:
21
Finalmente, como resultado tendremos el siguiente mensaje que todo salió bien:
Si se desea probar la funcionalidad del script ejecutar el siguiente comando para que
genere el backup:
sh bksaphi.sh
22
Para verificar los backup generados, ingresamos a la ruta:
cd /backup/dbbackup
O si bien se desea descargar el archivo vía FTP:
23
Download