Tutorial: CentOS 6: Instalar Nginx, PHP-FPM, Vsftpd, BIND, MariaDB y phpMyAdmin

  • Autor Autor BryCom
  • Fecha de inicio Fecha de inicio
B

BryCom

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
A base de unas cuantas peticiones que me hicieron después de hacer el otro tutorial me dispuse a crear el mismo esta vez actualizado por completo para hacer estas gestiones en CentOS 6 por que como ya sabemos CentOS 7 es un sistema muy reciente que no muchos en la actualidad lo están usando en base a personas que ya tienen el 6 instalado desde hace tiempo.

Para los que no han leído el tutorial anterior acá se los dejo con el titulo:
Instalando Nginx, PHP-FPM, Vsftpd, BIND, MariaDB (MySQL) y phpMyAdmin en Centos 7 x64

http://forobeta.com/tutoriales/3789...-mariadb-mysql-y-phpmyadmin-centos-7-x64.html

Diferencia hay mucha en base a comandos que vamos a utilizar y por eso he de hacer este.

* Montaremos nuestro Sitio Web o nuestros en base de lo que dice el titulo, por ultimo invito a las personas que disponen de su experiencia y ganas de compartirla del que si encuentra algo mal escrito en el tutorial pueda tener la amabilidad de compartir la corrección y evitar controversias, debates y malos pensamientos de las demás personas con tal de hacer pensar que uno es mejor que otro.

* Si a medidas vayas procediendo con la guía te encuentras con errores aun así vayas al pie de la letra no dudes en comentar el tema o enviarme un mensaje privado y yo con gusto respondo con la solución y una explicación si es posible a la mayor brevedad.

* Si tienes dudas o preguntas el tema abierto para comentarios y los mensajes privados por igual para responder a todas.


Nota general:

- Todo lo que sea paréntesis entre comillas " " no se debe tomar en cuenta en los comandos!

Para comenzar con este gran tutorial voy a pedirles que por favor presten muchísima atención y dedicación total de su tiempo para evitar saltarse algún paso, para evitar hacer algo mal, evitar errores entre otras cosas que puedan pasar.

1. Conectando al VPS/Dedicado

Vamos a acceder ya sea desde una consola de su proveedor y/o desde un cliente SSH al servidor, en mi caso yo como estoy utilizando Ubuntu (Linux) pues solo me basto con abrir el "Terminal" y escribir "ssh 0.0.0.0" (en donde están los ceros reemplazar por la IP del servidor) logeado desde root claro y luego escribir la contraseña para así conectar la sección.

Nota: Hay proveedores que por defecto ya el puerto SSH es diferente por lo que para conectar al SSH si esta usando un sistema basado en Linux para conectarse al SSH desde el terminal logeado con root deberá de establecer manualmente un puerto de la siguiente manera "ssh 0.0.0.0 -p 22". cambiar los ceros por el IP del servidor y el 22 por el puerto SSH pre establecido. Otros pueden hacer login haciendo del uso del programa llamado Putty para Windows u Linux.

Para hacer mas fácil & rápido el tutorial solo pondré los comandos pero desde acá del principio les explico que en cada comando iniciando por "yum" es un enter que tiene que hacer y esperar a que termine de procesar, por igual los comandos comenzando por "service" y finalmente los que comienzan por "nano" son comandos en los que vamos a editar archivos así que prestar mucha atención.

Con el comando nano editando archivos para buscar siempre deberemos de presionar "CTRL + W", luego escribir lo que vamos a buscar en un cuadrito que aparece en la consola abajo y luego presionamos ENTER, y para guardar "CTRL + O" y luego ENTER.

Comenzamos...


2. Eliminando cosas innecesarias

- Primero vamos a limpiar un poco algunos componentes que posiblemente estén ya instalados aunque no se preocupen que esto es para instalarlos en orden mas adelante y no saltar un paso o causar una falla por la existencia de alguno.

Insertar CODE, HTML o PHP:
yum remove http* httpd* php* mysql* mysqld* bind* mail* sendmail* postfix* dovecot* selinux* firewall* -y

- Ahora vamos a poner "yum grouplist", y vamos a eliminar todos los complementos instalados en la lista de grupo, lo eliminamos poniendo yum groupremove "EJEMPLO" (los entre comillas para este comando son validos).

3. Actualizamos el Sistema Operativo

- Primero instalamos los repositorios Epel, Wget y Nano.

Insertar CODE, HTML o PHP:
yum install wget nano epel-release -y

- Luego actualiza el Sistema y los Paquetes.

Insertar CODE, HTML o PHP:
yum upgrade -y

4. Establecemos un Hostname al Servidor

- Establecemos un Hostname de la siguiente manera.

Insertar CODE, HTML o PHP:
echo 'ns.ejemplo.com' > /etc/hostname 
hostname ns.ejemplo.com

- Editamos el archivo Network.

Insertar CODE, HTML o PHP:
yum install nano -y 
nano /etc/sysconfig/network

- Agregamos las líneas, y cambiamos, ejemplo por el Hostname.

Insertar CODE, HTML o PHP:
NETWORKING=yes 
HOSTNAME=ns.ejemplo.com

- Al terminar guardamos y salimos presionando "CTRL + X".

Insertar CODE, HTML o PHP:
service network restart

5. Consultamos el Hostname

Insertar CODE, HTML o PHP:
hostname

6. Instalamos PERL, BIND, Nginx, MariaDB y PHP-FPM

- Para instalar MariaDB en CentOS 6 deberemos de hacer este paso obligatorio, vamos a crear el .repo y poner unas lineas.

Insertar CODE, HTML o PHP:
nano /etc/yum.repos.d/MariaDB.repo

- Pegaremos.

Insertar CODE, HTML o PHP:
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.0/centos6-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

- Ahora si, comenzamos la instalación de todo.

Insertar CODE, HTML o PHP:
yum upgrade -y

Insertar CODE, HTML o PHP:
yum install perl bind nginx php php-mysql php-fpm  MariaDB-server MariaDB-client -y

7. Ejecutar & Config Auto Nginx y Named

Insertar CODE, HTML o PHP:
chkconfig nginx on
chkconfig named on
service nginx start
service named start

- Como nota ten en cuenta que el ultimo servicio named en el primer inicio demora en subir, si ves que después de 5-10 minutos no te da opción para poder continuar has un "CTRL + C" o un "CTRL + X" para abortar y continuar.

8. Ejecutar & Config Auto MariaDB

Insertar CODE, HTML o PHP:
chkconfig mysql on
service mysql start

9. Configuramos MariaDB (MySQL)

- Vamos a seleccionar una contraseña raíz para MariaDB, es muy importante hacer una que sea muy segura aparte de todo esto vamos también a configurar correctamente MariaDB para que este lista para alojar futuras bases de datos.

Insertar CODE, HTML o PHP:
mysql_secure_installation

- Enter current password for root (enter for none): UNICAMENTE PRECIONA ENTER
- Set root password? [Y/n] ESCRIBE Y, LUEGO PRECIONA ENTER
- New password: PON UNA BIEN SEGURA UNICAMENTE DE NUMEROS Y LETRAS MINUSCULAS
- Remove anonymous users? [Y/n] ESCRIBE Y, LUEGO PRECIONA ENTER
- Disallow root login remotely? [Y/n] POR SEGURIDAD, ESCRIBE Y, LUEGO PRECIONA ENTER
- Remove test database and access to it? [Y/n] ESCRIBE Y, LUEGO PRECIONA ENTER
- Reload privilege tables now? [Y/n] ESCRIBE Y, LUEGO PRECIONA ENTER


Insertar CODE, HTML o PHP:
service mysql restart

10. Configurar el PHP.ini

- Ahora editaremos el siguiente archivo.

Insertar CODE, HTML o PHP:
nano /etc/php.ini

- Luego presionamos "CTRL + W" y buscamos ";cgi.fix_pathinfo=1", borramos el ";", luego el 1 cambiarlo por 0.

- Buscamos ";date.timezone =", borramos el ";" en el inicio (des comentar), y al final agregan su zona horaria preferida, para el que no conoce el formato de las zonas horarias para el php.ini, puede buscarlas en PHP: América - Manual, un ejemplo de mi zona horaria seria el siguiente.


Insertar CODE, HTML o PHP:
date.timezone = America/Santo_domingo

- Tener en cuenta que esto es adicional... Ósea que puede saltar este paso de la zona horaria. Para el que ya conoce el PHP.ini, acá puede también configurar la Memoria del PHP, y la capacidad de subida de archivos entre otras cosas.

- Al terminar guardamos y salimos presionando "CTRL + X".


11. Configurando el PHP-FPM

Insertar CODE, HTML o PHP:
nano /etc/php-fpm.d/www.conf

- Buscamos "apache Choosed to be able to access some dir as httpd" y donde dice "user = apache y group = apache" por nginx.

Insertar CODE, HTML o PHP:
user = nginx 
group = nginx

- Al terminar guardamos y salimos presionando "CTRL + X".

- Finalmente vamos a corregir el Owner de las Secciones del PHP, un error muy común que existen en estos tipos de instalaciones.


Insertar CODE, HTML o PHP:
chown -R nginx:nginx /var/lib/php/session

- Concluimos.

Insertar CODE, HTML o PHP:
chkconfig php-fpm on 
service php-fpm start

12. Configurando Nginx

- Eliminamos este archivo innecesario.

Insertar CODE, HTML o PHP:
rm -rf /etc/nginx/nginx.conf.default

- Creamos un usuario adicional, cambia "usuario" por algún nombre o nick sin espacios ni caracteres especial de ningún tipo.

Insertar CODE, HTML o PHP:
useradd -m USUARIO -s /sbin/nologin

- Establece una contraseña al usuario que estableciste.

Insertar CODE, HTML o PHP:
passwd usuario (ponlo primero y luego enter)

- Ahora vamos a configurar las raíces del Sitio Web para echarlo a andar con estos pasos finales, mas que nada requiero de su total atención por que acá vamos a dirigir la conexión de su Sitio Web con el Servidor.

- Comenzamos a editar.


Insertar CODE, HTML o PHP:
rm -rf  /etc/nginx/nginx.conf 
nano /etc/nginx/nginx.conf

- Agregamos. Y luego cambiaremos donde dice "server_name ns.emeplo.com;" por el Hostname del servidor, donde dice "return 301 $scheme://www.ejemplo.com;" por el sitio web que vamos a alojar. Tener en cuenta solo modificar donde dice ejemplo. Cambiaremos también donde dice únicamente ns1 y ns2 por los dns del servidor. Y al final "/home/usuario" reemplazarlo por el usuario que creamos hace unos momentos.

Insertar CODE, HTML o PHP:
user  nginx;
worker_processes  16;
pid /var/run/nginx.pid;
events {
worker_connections  2048;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
sendfile on;
keepalive_timeout 15;
gzip on;
client_max_body_size 100M;
server_names_hash_bucket_size 64;
server {
listen 80;
listen 443 ssl;
server_name *.ejemplo.com ns.ejemplo.com ns1.ejemplo.com ns2.ejemplo.com localhost;
ssl off;
return 301 $scheme://www.ejemplo.com;
location / {
root   /home/usuario;
}
}

- Al final de lo que hemos puesto vamos a agregar lo siguiente.

- Y vamos a cambiar donde dice ejemplo por nuestro Sitio Web y donde dice usuario por el usuario que creamos hace un momento teniendo en cuenta el server_name, root, error_log, error_page, include, el otro root que va despues del "location ~ \.php$ {" y del otro error_page.


Insertar CODE, HTML o PHP:
server {
listen 80;
listen 443 ssl;
server_name www.ejemplo.com ejemplo.com;
ssl off;
location / {
root /home/usuario;
index index.php index.html index.htm;
error_page 404 $scheme://www.ejemplo.com;
#include /home/usuario/*.conf;
}
location ~ \.php$ {
root /home/usuario;
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
error_page 404 $scheme://www.ejemplo.com;
}
}
}

- Guardamos todo y continuamos.

Insertar CODE, HTML o PHP:
service nginx restart

13. Configurando HOSTS

- Editaremos el archivo hosts del sistema por que es muy importante hacerlo si no pues el sitio web no va a trabajar, y tampoco los DNS.

Insertar CODE, HTML o PHP:
nano /etc/hosts

- Después de 127.0.0.1 localhost o simplemente después de 127.0.0.1, agregaremos en el siguiente orden.

Insertar CODE, HTML o PHP:
0.0.0.0 ejemplo.com 
0.0.0.0 ns1.ejemplo.com 
0.0.0.0 ns2.ejemplo.com

- Cambiaremos los 0.0.0.0 por el IP principal del servidor y ejemplo por el Sitio Web en el mismo orden.

- Debería de quedar en el siguiente orden.


Insertar CODE, HTML o PHP:
127.0.1.1 ns.ejemplo.com ns.ejemplo.com 
127.0.0.1 localhost 
0.0.0.0 ejemplo.com 
0.0.0.0 ns1.ejemplo.com 
0.0.0.0 ns2.ejemplo.com

Ojo, cuidado con borrar algo del archivo hosts!

- Finalmente guardamos y reiniciamos el BIND.

Insertar CODE, HTML o PHP:
service named restart

14. Configurando BIND

Insertar CODE, HTML o PHP:
rm -rf /etc/named.conf 
nano /etc/named.conf

- Pegamos lo siguiente, recuerden cambiar los 0.0.0.0 por el IP principal del servidor. Y los ejemplos por el Sitio Web, principalmente cambiando el primero "ns.ejemplo.com" por el Hostname del servidor.

Insertar CODE, HTML o PHP:
options { 
listen-on port 53 { 127.0.0.1; 0.0.0.0; }; 
        listen-on-v6 port 53 { ::1; }; 
        directory "/var/named"; 
        dump-file "/var/named/data/cache_dump.db"; 
        allow-query     { any; }; 
        allow-transfer  { none; }; 
        version none; 
        recursion no; 
        dnssec-enable yes; 
        dnssec-validation yes; 
        dnssec-lookaside auto; 
        bindkeys-file "/etc/named.iscdlv.key"; 
        managed-keys-directory "/var/named/dynamic"; 
        pid-file "/run/named/named.pid"; 
        session-keyfile "/run/named/session.key"; 
}; 
logging { 
        channel default_debug { 
                file "data/named.run"; 
                severity dynamic; 
        }; 
}; 
zone "." IN { 
type hint; 
        file "named.ca"; 
}; 
zone "ns.ejemplo.com" IN { 
        type master; 
        file "ns.ejemplo.com.db"; 
        allow-update { none; }; 
}; 
zone "ns1.ejemplo.com" IN { 
        type master; 
        file "ns1.ejemplo.com.db"; 
        allow-update { none; }; 
}; 
zone "ns2.ejemplo.com" IN { 
        type master; 
        file "ns2.ejemplo.com.db"; 
        allow-update { none; }; 
}; 
zone "ejemplo.com" IN { 
        type master; 
        file "ejemplo.com.db"; 
        allow-update { none; }; 
}; 
include "/etc/named.rfc1912.zones"; 
include "/etc/named.root.key";

- Guardamos y continuamos.

15. Creando las Zonas DNS

- Para mas rápido solo pondré los ejemplos de como debe de ir cada Zona DNS, las zonas DNS son las que uno básicamente editaba en un servidor con un panel ya sea para configurar los Registros MX, los records y todo eso del que se darán cuenta a continuación.

nano /var/named/ns.ejemplo.com.db

Ejemplo:

Insertar CODE, HTML o PHP:
$TTL 30 
@ 30 IN SOA ns1.ejemplo.com. correo.gmail.com. ( 
2014120104; 
2000; 
300; 
1209600; 
300); 
ns.ejemplo.com. 30 IN NS ns1.ejemplo.com. 
ns.ejemplo.com. 30 IN NS ns2.ejemplo.com. 
ns.ejemplo.com. 30 IN A 0.0.0.0 
ns.ejemplo.com. IN MX 0 ns.ejemplo.com. 
ns.ejemplo.com. IN TXT "v=spf1 +a +mx +ip4:0.0.0.0 ~all" 
ns.ejemplo.com. IN TXT "v=DMARC1; p=none; rua=mailto:correo@gmail.com"

nano /var/named/ns1.ejemplo.com.db

Ejemplo:

Insertar CODE, HTML o PHP:
$TTL 30 
@ 30 IN SOA ns1.ejemplo.com. correo.gmail.com. ( 
2014120104; 
2000; 
300; 
1209600; 
300); 
ns1.ejemplo.com. 30 IN NS ns1.ejemplo.com. 
ns1.ejemplo.com. 30 IN NS ns2.ejemplo.com. 
ns1.ejemplo.com. 30 IN A 0.0.0.0 
ns1.ejemplo.com. IN MX 0 ns.ejemplo.com. 
ns1.ejemplo.com. IN TXT "v=spf1 +a +mx +ip4:0.0.0.0 ~all" 
ns1.ejemplo.com. IN TXT "v=DMARC1; p=none; rua=mailto:correo@gmail.com"

nano /var/named/ns2.ejemplo.com.db

Ejemplo:

Insertar CODE, HTML o PHP:
$TTL 30 
@ 30 IN SOA ns1.ejemplo.com. correo.gmail.com. ( 
2014120104; 
2000; 
300; 
1209600; 
300); 
ns2.ejemplo.com. 30 IN NS ns1.ejemplo.com. 
ns2.ejemplo.com. 30 IN NS ns2.ejemplo.com. 
ns2.ejemplo.com. 30 IN A 0.0.0.0 
ns2.ejemplo.com. IN MX 0 ns.ejemplo.com. 
ns2.ejemplo.com. IN TXT "v=spf1 +a +mx +ip4:0.0.0.0 ~all" 
ns2.ejemplo.com. IN TXT "v=DMARC1; p=none; rua=mailto:correo@gmail.com"

nano /var/named/ejemplo.com.db

Ejemplo:

Insertar CODE, HTML o PHP:
$TTL 30 
@ 30 IN SOA ns1.ejemplo.com. correo.gmail.com. ( 
2014120104; 
2000; 
300; 
1209600; 
300); 
ejemplo.com. 30 IN NS ns1.ejemplo.com. 
ejemplo.com. 30 IN NS ns2.ejemplo.com. 
ejemplo.com. 30 IN A 0.0.0.0 
ejemplo.com. IN MX 0 ns.ejemplo.com. 
www 30 IN A  0.0.0.0 
ejemplo.com. IN TXT "v=spf1 +a +mx +ip4:0.0.0.0 ~all" 
ejemplo.com. IN TXT "v=DMARC1; p=none; rua=mailto:correo@gmail.com"

- Una vez que tengamos todas las zonas correctamente creadas y configuradas recordando únicamente cambiar los 0.0.0.0 y ejemplo, también correo por su correo en el formato en el que esta pues vamos a proceder a reiniciar BIND.

Insertar CODE, HTML o PHP:
service named restart

16. Instalando componentes del PHP y del Sistema

Insertar CODE, HTML o PHP:
yum install php-xml php-xmlrpc php-pdo php-gd gd zip unzip php-zip php-unzip php-soap php-cli php-imap php-ldap php-odbc php-pecl-apc php-magickwand php-mbstring php-mcrypt php-snmp php-tidy -y

17. Finalmente concluyendo con Vsftpd

Insertar CODE, HTML o PHP:
yum upgrade -y  
yum install vsftpd -y 
rm -rf /etc/vsftpd/vsftpd.conf

- Ahora crearemos el nuevo archivo de config.

Insertar CODE, HTML o PHP:
nano /etc/vsftpd/vsftpd.conf

- Y pegamos lo siguiente.

Insertar CODE, HTML o PHP:
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
dirmessage_enable=YES
xferlog_enable=NO
connect_from_port_20=NO
xferlog_std_format=NO
idle_session_timeout=120
data_connection_timeout=120
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Funcionando
ls_recurse_enable=YES
listen=YES
listen_ipv6=NO
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
ssl_enable=NO
allow_anon_ssl=NO
force_local_data_ssl=NO
force_local_logins_ssl=NO
require_ssl_reuse=NO
pasv_enable=YES
listen_port=4040

- Ahora reiniciamos y ya tendremos el FTP corriendo bajo el puerto 4040 (se puede cambiar).

Insertar CODE, HTML o PHP:
service vsftpd start 
chkconfig vsftpd on

- Y listo hemos finalizado!

Conclusion:

Hemos instalado por completo y hemos configurado de manera correcta los DNS de nuestro Sitio Web y el Hostname del Servidor, el Servidor DNS para que el Sitio Web funcione, el motor Nginx para correr los HTML, PHP, en general las aplicaciones web, MariaDB para correr las bases de datos y Vsftpd para correr el ftp y poder subir nuestros archivos por ftp.

Ahora:


Aun nos falta por instalar algo y es para manejar las bases de datos desde el navegador y no por comandos que con esto vamos a concluir el tema y ya podremos comenzar a subir los archivos del sitio web por ftp y a crear las bases de datos para poner a funcionar cualquier sitio web.

También vamos a asegurar nuestro puerto SSH para evitar problemas de seguridad.

Instalando phpMyAdmin:


Insertar CODE, HTML o PHP:
yum install phpmyadmin -y

- Haciendo un Symlink para acceder desde el navegador. Recuerden cambiar donde dice usuario por el suyo.

Insertar CODE, HTML o PHP:
ln -s /usr/share/phpMyAdmin /home/usuario

- Si quieres por seguridad cambiar el por ejemplo ejemplo.com/phpMyAdmin, por muy altos motivos de seguridad.

Insertar CODE, HTML o PHP:
cd /home/usuario 
mv phpMyAdmin EJEMPLO

- Cambias usuario por el usuario y ejemplo por la dirección por la cual vas a entrar.

Ejemplo:

Insertar CODE, HTML o PHP:
cd /home/usuario 
mv phpMyAdmin phpmadm4040

- Y se vería en el navegador así.

Insertar CODE, HTML o PHP:
ejemplo.com/phpmadm4040

- Solo yo se que ese es el enlace para acceder al phpMyAdmin por motivos de seguridad.

- Ahora reiniciamos el PHP-FPM


Insertar CODE, HTML o PHP:
service php-fpm restart

- Por seguridad borramos la carpeta setup

Insertar CODE, HTML o PHP:
rm -rf /usr/share/phpMyAdmin/setup

- Y borramos el siguiente archivo no necesario.

Insertar CODE, HTML o PHP:
rm -rf /etc/httpd/conf.d/phpMyAdmin.conf

- Damos permisos necesarios a la siguiente carpeta.

Insertar CODE, HTML o PHP:
chmod 777 -R /etc/phpMyAdmin
chmod 777 -R /usr/share/phpMyAdmin
cd /etc/phpMyAdmin
chmod 775 config.inc.php

- Y listo!, tenemos phpMyAdmin instalado correctamente.

- Para acceder al phpMyAdmin es usando el usuario root y la contraseña del root del Servidor algo que debemos tomar en cuenta. Ahora para concluir vamos a asegurar el SSH para evitar problemas de seguridad aunque no lo vamos a asegurar con KEYS si no con la forma básica.


Insertar CODE, HTML o PHP:
rm -rf /etc/ssh/sshd_config 
nano /etc/ssh/sshd_config

- Pegamos.

Insertar CODE, HTML o PHP:
Port 4444
Protocol 2
SyslogFacility AUTHPRIV
PermitRootLogin yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication yes
ChallengeResponseAuthentication no
GSSAPIAuthentication no
GSSAPICleanupCredentials yes
UsePAM yes
X11Forwarding yes
UseDNS no
AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
AcceptEnv XMODIFIERS
Subsystem sftp    /usr/libexec/openssh/sftp-server

- Cambiamos "Port 4444" el 4444 por el nuevo puerto SSH, ya no vamos a seguir accediendo por el puerto inseguro 22.

- Una vez guardado los cambios.


Insertar CODE, HTML o PHP:
service sshd restart

* Ya tenemos nuestro Sitio Web trabajando sin haber pagado un centavo en compra de un panel de control :encouragement:

Muchísimas gracias por su atención,
Un saludo y pasen buenas.


Edito 09/12/2014 a las 14:57

- Al entrar a tu dominio, si aparece Error 404, pues corre el siguiente comando y listo.

chmod 755 -R /home

Y problema solucionado!
 
Última edición:
Excelente guía,

Enter current password for root (enter for none): UNICAMENTE PRECIONA ENTER

En mis configuraciones con php+mysql tengo password en root del sql de la base, ¿no sería recomendable establecerlo por seguridad o hay algo que me pierdo?
 
Excelente guía,



En mis configuraciones con php+mysql tengo password en root del sql de la base, ¿no sería recomendable establecerlo por seguridad o hay algo que me pierdo?

Este punto que me citas es para cuando vas a instalar el MariaDB, no para cuando ya esta instalado jeje.

Por parte siempre se da enter por que por defecto no tiene ninguna contraseña y luego va este paso.

- Set root password? [Y/n] ESCRIBE Y, LUEGO PRECIONA ENTER

Ahi es donde vamos a establecer la contraseña y a ponerle seguridad al MariaDB.

:encouragement:
 
muy buen tutorial!! la verdad te felicito!!!
 
Me quito el sombrero, excelente.
 
Gracias a todos por sus comentarios!

Ya les vendré con mas en el día de hoy. 😛7:

- - - Actualizado - - -

Corrección de problemas 12/12/2014

1. El phpMyAdmin salta con un error de permisos

- Pues vamos a correr el siguiente comando para solucionarlo.

Insertar CODE, HTML o PHP:
cd /etc/phpMyAdmin
chmod 777 config.inc.php

2. Actualizar el PHP a la ultima versión

- Instalaremos los repositorios REMI para poder hacer esta accion.

CentOS 7

Insertar CODE, HTML o PHP:
cd /
wget http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
rpm -Uvh remi-release-7.rpm
rm -rf remi-release-7.rpm
yum upgrade -y

CentOS 6

Insertar CODE, HTML o PHP:
cd /
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
rpm -Uvh remi-release-6.rpm
rm -rf remi-release-6.rpm
yum upgrade -y

- Luego.

Insertar CODE, HTML o PHP:
 yum --enablerepo=remi install php -y


3. El phpMyAdmin, o otras aplicaciones saltan con error de permisos de las Secciones PHP.

Insertar CODE, HTML o PHP:
chown nginx:nginx -R  /var/lib/php/session/
chmod 777 /var/lib/php/session/

4. Los sitios no cargan, y en intodns.com/ejemplo.com, mi dominio no sale como activo o configurado correctamente

- Arreglamos en el named.conf, de las siguiente manera las siguientes lineas.

nano /etc/named.conf

Insertar CODE, HTML o PHP:
options {
        listen-on port 53 { any; };
        listen-on-v6 port 53 { any; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { any; };
        allow-transfer  { any; };
        version none;
        recursion no;

Cualquier otro problema o error no duden en contactar conmigo.
Gracias por su atención, no dejen de comentar!
 
He corregido algunos errores de códigos, y he actualizado otros.

13/12/2014. Ánimos a comentar!
 
deeee 100000 TE PASASTEEEEE 🙂🙂🙂🙂
 
Buuuf justo ahora me habían mandado un trabajo sobre centos 6.5 muy engorroso, seguro me sirve de gran ayuda, grax!!!