WordPress

WordPress es un popular software gratuito para publicaciones personales (blogs). Utiliza PHP y MySQL como tecnologías del lado del servidor. Su instalación/mantenimiento es bastante fácil.

Requisitos

Para instalar WordPress en su cuenta de alojamiento, necesita:

  • 80 MB de espacio libre en disco
  • Una espacio de base de datos MySQL libre. La base de datos será creada por el script de instalación automática.
Instalación

Para instalar WordPress, vaya a la sección WordPress > pestaña Instalar de su panel de control de hosting.

Por favor complete los siguientes campos:

  • Título del sitio: debe ingresar el nombre de su sitio de WordPress. Tú eliges este nombre. Por ejemplo, puede estar relacionado con el contenido del blog, el nombre de tu empresa, tu nombre de dominio, etc.
  • Subdominio: elija el subdominio en el que desea instalar WordPress.
    Si desea instalar WordPress en un nuevo subdominio, haga clic en el enlace Crear un subdominio, que lo llevará a la sección Subdominios del Panel de control.
  • Ruta: Si desea instalar WordPress en la carpeta principal del subdominio que ha elegido, puede dejar este campo vacío. Si desea instalar en una subcarpeta, haga clic en el icono Select folder y elija una carpeta de instalación.
  • Use WWW: prefije la dirección con www (por ejemplo, http://www.sudominio.com).
  • Usar HTTPS: configura el sitio para que use HTTPS en lugar de HTTP. Esto solo es posible si hay un certificado SSL válido instalado para el host.
AttentionLe recomendamos que instale WordPress en una carpeta que no contenga otros archivos y carpetas, ya que el script de instalación puede sobrescribirlos.

 

  • Nombre de usuario: ingrese el nombre de usuario que desea usar para administrar su sitio. Podrás crear usuarios de WordPress adicionales más tarde, a través del panel administrativo de WordPress.
  • Contraseña: Introduce una contraseña para el nombre de usuario anterior.
  • Contraseña de nuevo: Introduce la contraseña de nuevo.
  • Е-Mail: Ingrese la dirección de correo electrónico del usuario principal para la administración. Necesitará este correo electrónico, por ejemplo, para recuperar la contraseña de su usuario principal de WordPress para la administración (en caso de que se pierda).
  • Aceptar acuerdo de licencia: Debe verificar la licencia de WordPress y aceptarla.


wordpress_installation_form_en.png

Después de completar los campos anteriores, haga clic en el botón Instalar. Si la carpeta en la que está instalando contiene archivos/carpetas, verá una advertencia. Si desea elegir otro subdominio o subcarpeta para la instalación, debe hacer clic en el botón Cancelar. De lo contrario, puede hacer clic en el botón Continuar.

Tenga en cuenta que los resultados de algunas operaciones se almacenan en caché, por lo que es posible que no vea los cambios de inmediato. Si eso sucede, espere unos minutos para que caduque el caché.

Si la instalación de WordPress se completa con éxito, verá una pantalla con los detalles de la instalación:

wordpress_installation_success_en.png

AttentionLe recomendamos encarecidamente que mantenga actualizada su instalación de WordPress, junto con los complementos que agregue. Puedes realizar las actualizaciones a través de la sección administrativa de tu WordPress, donde verás avisos de que hay disponibles nuevas versiones de tu WordPress y/o plugins.

El botón Iniciar sesión junto a cada nombre de usuario administrativo le permite iniciar sesión en el panel de control de WordPress de su sitio web con ese nombre de usuario en particular. De esta manera, puede iniciar sesión sin ingresar una contraseña.

La mayoría de las operaciones realizadas en la página de WordPress del Panel de control se realizan con la herramienta WP-CLI. Estas operaciones se registran en el archivo ~/.wp-cli/history.log en su cuenta de hosting.

Para obtener instrucciones sobre cómo instalar WordPress manualmente, consulte nuestro artículo Instalación de WordPress [versión 5.x.x].

Si tiene instalaciones de WordPress que actualmente no están administradas por la sección WordPress del Panel de control de alojamiento, puede agregar el botón Buscar instalaciones de WordPress. Escaneará su cuenta de alojamiento y enumerará las instalaciones de WordPress que encuentre.

Scan

Para importar una instalación de WordPress de la lista, debe marcar su casilla de verificación y hacer clic en el botón Importar.

import.jpg

Algunos problemas con su instalación de WordPress pueden solucionarse automáticamente mediante el Panel de control. Si se detecta un problema como ese, verá una opción para intentar solucionarlo en la página de administración de su instalación de WordPress.

Si su instalación de WordPress no funciona y el Panel de control no puede repararla automáticamente, puede ponerse en contacto con nuestro equipo de soporte para obtener ayuda.

El botón “Iniciar sesión” junto a cada nombre de usuario administrativo le permite iniciar sesión en el panel de control de WordPress de su sitio web con ese nombre de usuario en particular. De esta manera, puede iniciar sesión sin ingresar una contraseña.

Tenga en cuenta que los resultados de algunas operaciones se almacenan en caché, por lo que es posible que no vea los cambios de inmediato. Si eso sucede, espere unos minutos para que caduque el caché.

La mayoría de las operaciones realizadas en la página de WordPress del Panel de Control se realizan utilizando la herramienta WP-CLI. Estas operaciones se registran en el archivo~/.wp-cli/history.log en su cuenta de hosting.

Nota: solo es posible forzar HTTPS para una instalación de WordPress si hay un certificado SSL válido instalado para su dominio/subdominio. Puede habilitar un certificado gratuito de Let’s Encrypt con un solo clic usando la sección SSL/HTTPS -> Certificados de Let’s Encrypt del Panel de control, como se describe en nuestro artículo Certificados de Let’s Encrypt.

Puede usar la sección WordPress del Panel de control de alojamiento para forzar HTTPS para una instalación de WordPress siguiendo los pasos a continuación:

1. Abra la pestaña Administrar.

2. Find the WordPress installation in the list, and click on the Edit (Edit) button for it. This will take you to the management page for the WordPress installation.

2. Busque la instalación de WordPress en la lista y haga clic en el botónEdit (Editar). Esto lo llevará a la página de administración de la instalación de WordPress.

3. Marque la casilla de verificación  para Usar HTTPS.

Force HTTPS

4. Haz clic en el botón Cambiar.

Cuando fuerza HTTPS para WordPress, la herramienta realiza las siguientes acciones:

  • Cambia la configuración de URL del sitio (dirección de WordPress).
  • Cambia la configuración de Inicio (Dirección del sitio).
  • Busca y reemplaza la dirección actual con la nueva dirección en la base de datos.

Nota: si hay enlaces codificados de la URL del sitio web en los archivos de WordPress, deberá actualizarlos manualmente.

Puede usar la sección WordPress del Panel de control de alojamiento para cambiar la URL del sitio de una instalación de WordPress siguiendo los pasos a continuación:

1. Abra la pestaña Administrar.

2. Busque la instalación de WordPress en la lista y haga clic en el botón Edit (Editar). Esto lo llevará a la página de administración de la instalación de WordPress.

3. Seleccione la URL del sitio con los controles de la sección URL del sitio. Se muestra una vista previa de la URL debajo de los controles. Los controles son los siguientes:

Use HTTPS: configure el sitio para usar HTTPS en lugar de HTTP. Esto solo es posible si hay un certificado SSL válido instalado para el host.

Usar WWW: agregar www. prefijo de la dirección.

Elija subdominio: elija el subdominio de la lista de subdominios creados en la cuenta.

Elegir dominio: elija el dominio de la lista de dominios aparcados y principales de la cuenta.

Elegir directorio: elige un directorio en el subdominio seleccionado. Deje vacío para la raíz del dominio/subdominio. Si elige un directorio que es diferente al actual, está moviendo efectivamente WordPress a ese directorio. Los detalles al respecto se pueden encontrar en nuestro artículo Mover WordPress entre directorios o subdominios en la cuenta de alojamiento.

Change Site URL

4. Haga clic en el botón Cambiar.

Cuando cambia la dirección de WordPress, la herramienta realiza las siguientes acciones:

  • Cambia la configuración de URL del sitio (dirección de WordPress).
  • Cambia la configuración de Inicio (Dirección del sitio).
  • Busca y reemplaza la dirección actual con la nueva dirección en la base de datos.

Nota: si hay enlaces codificados de la URL del sitio web en los archivos de WordPress, deberá actualizarlos manualmente.

Puede habilitar la compresión de salida recomendada, habilitar el almacenamiento en caché del navegador y evitar errores 404 (No encontrado) para WordPress muy fácilmente siguiendo estos pasos:

  1. Vaya a la pestaña Administrar de la sección WordPress en el Panel de control de alojamiento.
  2. Haga clic en el botón edit.gif(Editar) junto a su instalación de WordPress.
  3. Haga clic en el botón Optimizar en la sección Herramientas.

Esto agregará el siguiente bloque de código al archivo .htaccess de su instalación de WordPress:

### BEGIN Optimization enabled via Control Panel > WordPress ###
<IfModule mod_deflate.c>
    # Insert filters according to https://codex.wordpress.org/Output_Compression
    AddOutputFilterByType DEFLATE text/plain text/html text/xml text/css application/xml application/xhtml+xml application/rss+xml application/javascript application/x-httpd-php application/x-httpd-fastphp image/svg+xml

    # Drop problematic browsers
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    BrowserMatch ^Mozilla/4\.0[678] no-gzip
    BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html

    # Make sure proxies don’t deliver the wrong content
    Header append Vary User-Agent env=!dont-vary
</IfModule>

## LEVERAGE BROWSER CACHING ##
<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresByType image/jpg “access 1 year”
    ExpiresByType image/jpeg “access 1 year”
    ExpiresByType image/gif “access 1 year”
    ExpiresByType image/png “access 1 year”
    ExpiresByType text/css “access 1 month”
    ExpiresByType application/pdf “access 1 month”
    ExpiresByType application/x-javascript “access 1 month”
    ExpiresByType application/javascript “access 1 month”
    ExpiresByType application/x-shockwave-flash “access 1 month”
    ExpiresByType image/x-icon “access 1 year”
    ExpiresDefault “access 2 days”
</IfModule>
## LEVERAGE BROWSER CACHING ##

### Skip 404 error handling by WordPress for static files ###
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} !(robots\.txt|sitemap\.xml(\.gz)?)
    RewriteCond %{REQUEST_FILENAME} \.(css|js|html|htm|rtf|rtx|svg|svgz|txt|xsd|xsl|xml|asf|asx|wax|wmv|wmx|avi|bmp|class|divx|doc|docx|exe|gif|gz|gzip|ico|jpg|jpeg|jpe|mdb|mid|midi|mov|qt|mp3|m4a|mp4|m4v|mpeg|mpg|mpe|mpp|odb|odc|odf|odg|odp|ods|odt|ogg|pdf|png|pot|pps|ppt|pptx|ra|ram|swf|tar|tif|tiff|wav|wma|wri|xla|xls|xlsx|xlt|xlw|zip)$ [NC]
    RewriteRule .* – [L]
</IfModule>
#### END Optimization enabled via Control Panel > WordPress ####

También puede agregar el bloque de código mencionado anteriormente al archivo .htaccess de su instalación de WordPress manualmente usando la sección Administrador de archivos de alojamiento del Panel de control de alojamiento.

El bloque de código Leverage Browser Caching es esencial para preparar su instalación de WordPress para el almacenamiento en caché del lado del servidor. Puede obtener más información sobre cómo hacer que WordPress funcione correctamente con nuestro servicio de almacenamiento en caché del lado del servidor en el artículo Habilitación del almacenamiento en caché del lado del servidor para WordPress.

Las copias de seguridad del sistema se crean automáticamente todos los días para todas las cuentas de alojamiento y se mantienen durante siete días en nuestros servidores; sin embargo, le recomendamos que siempre cree copias de seguridad manuales antes de realizar cambios importantes en sus sitios web de WordPress.

Para crear, descargar o restaurar desde una copia de seguridad de WordPress, todo lo que necesita hacer es:

  1. Vaya a la sección WordPress del Panel de control de alojamiento.
  2. Busque la instalación de WordPress deseada en la lista y haga clic en el botón Edit(Editar) junto a ella. Esto lo llevará a la página de administración de la instalación de WordPress.
  3. En la sección Copia de seguridad, haga clic en el botón Copia de seguridad en la parte inferior para crear una nueva copia de seguridad, o haga clic en los botones Descargar o Restaurar junto a una copia de seguridad para descargar o restaurar su instalación de WordPress desde esa copia de seguridad.

Las copias de seguridad generadas desde la sección WordPress se almacenan en el directorio wp_backups del directorio Privado de tu cuenta.

Por diseño, la sección WordPress genera una copia de seguridad antes de realizar operaciones que pueden romper su sitio web o afectar su tiempo de actividad después de la finalización (como cambiar la URL del sitio o configurar un sitio web provisional como activo). En tales eventos, puede restaurar su sitio web con un solo clic desde la copia de seguridad creada automáticamente y minimizar los esfuerzos de restauración.

Puede usar la sección WordPress del Panel de control de alojamiento para crear sitios de prueba de sus instalaciones de WordPress, realizar y obtener una vista previa de sus cambios en ellos y, finalmente, publicar esos cambios en el sitio principal.

Creación de un sitio de ensayo
  1. Abra la pestaña Administrar de la sección WordPress del panel de control de hosting.
  2. Busque el sitio de WordPress en la lista y haga clic en el botón Edit(Editar) correspondiente. Esto lo llevará a la página de administración de la instalación de WordPress.
  3. Seleccione la URL del sitio del sitio provisional mediante los controles de la sección URL del sitio. Se muestra una vista previa de la URL debajo de los controles. Los controles son los siguientes:

    • Usar HTTPS: configure el sitio para usar HTTPS en lugar de HTTP. Esto solo es posible si hay un certificado SSL válido instalado para el host.
    • Usar WWW: añade www. prefijo de la dirección.
    • Elegir subdominio: Elija el subdominio de la lista de subdominios creados en la cuenta.
    • Elegir dominio: Elija el dominio de la lista de dominios principales y estacionados en la cuenta.
    • Elegir directorio: Elija un directorio en el subdominio seleccionado. Deje vacío para la raíz del dominio/subdominio.

    Tenga en cuenta que debe elegir una ubicación diferente a la actual. Nuestra recomendación es utilizar un subdominio diferente. Aquí, estamos usando un subdominio llamado “puesta en escena” como ejemplo.

    Create a staging site

  4. Haga clic en el botón Crear puesta en escena.

Esto creará un sitio de preparación separado en la ubicación elegida copiando los archivos allí. También usará una base de datos MySQL y un usuario separados, por lo que puede editar la nueva instalación sin afectar el sitio original de ninguna manera. El sitio de prueba se agregará automáticamente en la pestaña Administrar de la sección de WordPress.

Publicación del sitio provisional en el principal
  1. Abra la pestaña Administrar de la sección WordPress en el Panel de control de alojamiento.
  2. Busque el sitio principal de WordPress en la lista y haga clic en el botón Edit (Editar) correspondiente. Esto lo llevará a la página de administración de la instalación de WordPress.
  3. Busque el sitio de prueba en la sección Pruebas de la página y haga clic en el botón Establecer como en vivo.

    Set as live

  4. Aparecerá un mensaje que le preguntará si desea sobrescribir el sitio de WordPress en vivo con el de prueba (esto incluye los archivos y la base de datos) o intentar fusionarlos. Elija el enfoque deseado y espere a que finalice la operación.

    Push staging to live site prompt

    Nota: Se crearán automáticamente copias de seguridad completas de ambos sitios web antes de la operación, que puede usar en caso de que ocurra un problema con cualquiera de los sitios.

Puede usar la sección WordPress del panel de control de alojamiento para mover o copiar instalaciones de WordPress entre directorios o subdominios en la misma cuenta de alojamiento siguiendo los pasos a continuación:

1. Abra la pestaña Administrar.

2. Busque la instalación de WordPress en la lista y haga clic en el botón Edit(Editar) correspondiente. Esto lo llevará a la página de administración de la instalación de WordPress.

Move WordPress

3. Seleccione el subdominio y el directorio de destino en la cuenta. Al mismo tiempo, puede elegir un dominio diferente, comenzar a usar HTTPS o prefijar la dirección con www. El menú desplegable “Elegir dominio” enumera los dominios principales y estacionados asociados con la cuenta.

4. Haz clic en el botón Cambiar.

5. Se le preguntará si desea mover o copiar la instalación de WordPress. Si desea conservar una copia de WordPress en la ubicación original, haga clic en Copiar. Las dos instalaciones utilizarán diferentes bases de datos MySQL y nombres de usuario. Si desea eliminar la instalación original, haga clic en Mover.

Move or copy WordPress

Si los directorios de origen y de destino se superponen, no tendrá la opción de copiar WordPress y solo estará disponible la opción Mover.

Según el tamaño de la instalación de WordPress, el proceso puede ejecutarse en segundo plano.

Cuando mueve o copia WordPress a otro directorio, la herramienta realiza las siguientes acciones:

  • Copia/mueve los archivos al nuevo directorio.
  • Crea una nueva base de datos y un nuevo usuario de la base de datos.
  • Copia/mueve los datos de la base de datos actual a la nueva.
  • Cambia la configuración de URL del sitio (dirección de WordPress).
  • Cambia la configuración de Inicio (Dirección del sitio).
  • Realiza búsqueda y reemplazo en la base de datos, reemplazando la dirección actual con la nueva dirección.

Los nombres de usuario y contraseñas para la instalación de WordPress seguirán siendo los mismos.

Puede usar la sección WordPress del Panel de control de alojamiento para mover o copiar instalaciones de WordPress entre diferentes cuentas de alojamiento en nuestros servidores siguiendo los pasos a continuación:

1. Abra la pestaña Administrar en el Panel de control de la cuenta con la instalación original de WordPress.

2. Busque la instalación de WordPress en la lista y haga clic en el botón Edit (Editar). Esto lo llevará a la página de administración de la instalación de WordPress.

3. Haga clic en el botón Copia de seguridad ahora. Esto generará una copia de seguridad de toda su instalación de WordPress: la base de datos y los archivos.

4. Descargue la copia de seguridad en su computadora local haciendo clic en el botón Descargar.

Backup

5. Abra la pestaña Importar de la sección WordPress en el Panel de control de la cuenta a la que desea mover/copiar la instalación de WordPress.

6. Haga clic en el área gris para seleccionar el archivo de respaldo en su computadora local. Si el tamaño del archivo es superior a 200 MB, primero debe cargarlo en el servidor a través del Administrador de archivos del Panel de control de hosting o con FTP, y luego seleccionar la copia de seguridad cargada usando el enlace “o seleccionar un archivo cargado”.

Import

7. Seleccione la URL del sitio de la nueva instalación de WordPress usando los controles en la sección Seleccione el destino de importación de WordPress. Se muestra una vista previa de la URL debajo de los controles. Los controles son los siguientes:

Use HTTPS: configure el sitio para usar HTTPS en lugar de HTTP. Esto solo es posible si hay un certificado válido emitido para el host.

Usar WWW: agregar www. prefijo de la dirección.

Elija subdominio: elija el subdominio de la lista de subdominios creados en la cuenta.

Elegir dominio: elija el dominio de la lista de dominios aparcados y principales de la cuenta.

Elegir directorio: elige un directorio en el subdominio seleccionado. Deje vacío para la raíz del dominio/subdominio.

8. Haga clic en el botón Importar.

Según el tamaño de la instalación de WordPress, el proceso puede ejecutarse en segundo plano.

Cuando importa WordPress desde una copia de seguridad, la herramienta realiza las siguientes acciones:

  • Importa los archivos al directorio.
  • Crea una base de datos y un usuario de base de datos.
  • Importa la estructura de la base de datos y los datos a la base de datos.
  • Cambia la configuración de URL del sitio (dirección de WordPress).
  • Cambia la configuración de Inicio (Dirección del sitio).
  • Realiza búsqueda y reemplazo en la base de datos, reemplazando la dirección en la copia de seguridad con la nueva dirección.

Los nombres de usuario y contraseñas para la instalación de WordPress seguirán siendo los mismos.

El acceso público al archivo XML-RPC (xmlrpc.php) en nuestros servidores está bloqueado de forma predeterminada, porque el archivo es un objetivo común para los piratas informáticos. Hay más detalles disponibles en nuestro artículo Error “412 Precondition Failed” (mod_security2). Ahora puede habilitar fácilmente el acceso siguiendo estos pasos:

1. Abra la pestaña Administrar de la sección de WordPress.

2. Busque la instalación de WordPress en la lista y haga clic en el botón Edit(Editar) correspondiente. Esto lo llevará a la página de administración de la instalación de WordPress.

3. Desplácese hacia abajo hasta la subsección Herramientas y localice la opción llamada Habilitar acceso a XML-RPC.

Tools sub-section

4. Haga clic en el botón Habilitar junto a él.

Eso es todo: ahora puede instalar con éxito cualquier complemento que requiera acceso a XML-RPC.

El almacenamiento en caché del lado del servidor puede ayudar a reducir los tiempos de carga de la página en un margen significativo si se configura correctamente. Puede obtener más información sobre el servicio de almacenamiento en caché del lado del servidor en el artículo Información general sobre el almacenamiento en caché del lado del servidor.

Para aprovechar el almacenamiento en caché del lado del servidor en un sitio web de WordPress, debe:

  1. Configure WordPress para almacenar contenido en caché.
  2. Elija cómo borrar el caché.
  3. Habilite el almacenamiento en caché del lado del servidor.
1. Configurar WordPress para almacenar contenido en caché

Debe configurar su instalación de WordPress para enviar los encabezados de almacenamiento en caché correctos.

Si ha instalado su instancia de WordPress utilizando la sección WordPress del Panel de control de alojamiento, el almacenamiento en caché de contenido ya debería estar habilitado para su instalación de WordPress. De lo contrario, puede habilitarlo siguiendo las instrucciones de nuestro artículo Optimización de WordPress .

Al optimizar su instalación de WordPress a través del Panel de control de alojamiento, se agregará la siguiente línea de código a su archivo .htaccess, lo que garantizará que se cree una entrada de caché separada para cada Agente de usuario diferente (navegador):

Header append Vary User-Agent env=!dont-vary

Si no desea tener una entrada de caché separada para cada agente de usuario, debe comentar o eliminar esa línea del archivo principal .htaccess de su instalación de WordPress.

Alternativamente, puede instalar un complemento que le permita configurar encabezados de almacenamiento en caché. El complemento Cache-Control ha demostrado que funciona correctamente en nuestros servidores.

Nota: Le recomendamos que no combine varias herramientas/métodos que establezcan encabezados de control de caché HTTP, ya que esto puede generar resultados inesperados.

2. Elija cómo borrar el caché

Puede configurar WordPress para borrar el caché del lado del servidor automáticamente cada vez que se cambia el contenido. Todo lo que necesita hacer es descargar y activar el complemento Server-Side Cache Autopurge para su instalación de WordPress. El complemento funciona correctamente desde el primer momento, por lo que no se requiere configuración adicional. Este complemento también le permite purgar el caché a pedido a través del botón “Purgar caché del lado del servidor” en la parte superior izquierda del panel de WordPress, así como a través de WP-CLI con el siguiente comando:

wp surecache purge

Si no desea instalar o utilizar el complemento de purga automática de caché del lado del servidor o no actualiza el contenido con regularidad, puede purgar la memoria caché del lado del servidor manualmente utilizando cualquiera de los métodos enumerados en nuestro artículo Purga de la caché del lado del servidor.

3. Habilitar el almacenamiento en caché del lado del servidor

Una vez que haya preparado WordPress para el almacenamiento en caché del lado del servidor, puede habilitar el servicio de almacenamiento en caché del lado del servidor navegando a la sección Almacenamiento en caché del lado del servidor del Panel de control de alojamiento y haciendo clic en el botón Habilitar junto al dominio/subdominio donde está instalado su WordPress.

Puede ver una lista completa de los administradores de WordPress en sus sitios web, cambiar sus contraseñas y también iniciar sesión con su nombre de usuario a través de la sección WordPress del Panel de control de alojamiento.

Para usar estas funciones y ver esta información, haga clic en el icono Editar (Edit) junto a la instalación de WordPress en la lista dentro de la sección WordPress. En la subsección Administradores de WordPress , verá una lista de todos los administradores en su sitio web de WordPress que muestra sus respectivos nombres de usuario de inicio de sesión, nombres para mostrar y direcciones de correo electrónico. Junto a cada administrador, encontrará dos botones: Iniciar sesión y Contraseña. El botón Iniciar le permite iniciar sesión en el panel de control de WordPress como ese usuario, y el botón Contraseña le permite cambiar la contraseña de ese usuario.

WordPress Administrators List

Si la apariencia o el comportamiento de su sitio ha cambiado, esto puede significar que se ha visto comprometido. En este artículo, cubriremos cómo nuestro Equipo de Respuesta a Incidentes maneja estos casos. Hemos seleccionado una instalación de WordPress para este ejemplo y, aunque los detalles serán diferentes, el marco lógico de la investigación es casi idéntico para todas las aplicaciones web comunes.

El Incidente

Cualquier instalación de WordPress contendrá una serie de archivos principales estándar en su directorio principal, y lo mismo ocurre con todas las principales aplicaciones de CMS, por lo que debe buscar archivos y subdirectorios inesperados e inusuales en su directorio raíz web. En este caso, el usuario tiene los siguientes dos archivos en su directorio de instalación de WordPress:

  133ja3lore.php
  a1cw42ipim.php

Usaremos algunas de las herramientas de línea de comandos estándar de Unix para obtener más información sobre estos archivos y sobre cómo aparecieron originalmente en la cuenta. Brindamos acceso SSH listo para usar, así como registros completos de acceso de Apache, para que pueda reproducir estos pasos por su cuenta.

Obtención de marcas de tiempo

La utilidad stat nos brinda mucha información sobre los archivos, y así es como se ve su salida:

[17:09:32] server~$ stat ~/www/www/133ja3lore.php
  File: ~/www/www/133ja3lore.php
  Size: 4909          Blocks: 16         IO Block: 4096   regular file
Device: fc00h/64512d    Inode: 202768472   Links: 1
Access: (0664/-rw-rw-r--)  Uid: ( 4731/user)   Gid: ( 4674/user)
Access: 2018-02-02 15:16:02.000000000 +0800
Modify: 2018-02-02 15:16:02.000000000 +0800
Change: 2018-08-07 20:49:47.771134758 +0800
 Birth:
[17:09:43] server~$ stat ~/www/www/a1cw42ipim.php
  File: ~/www/www/a1cw42ipim.php
  Size: 4909          Blocks: 16         IO Block: 4096   regular file
Device: fc00h/64512d    Inode: 202768462   Links: 1
Access: (0664/-rw-rw-r--)  Uid: ( 4731/user)   Gid: ( 4674/user)
Access: 2018-02-02 15:16:02.000000000 +0800
Modify: 2018-02-02 15:16:02.000000000 +0800
Change: 2018-08-07 19:41:46.676971426 +0800
 Birth:

The “~” symbol stands for “/home/$USER” where $USER is your hosting username.

La principal diferencia entre mtime (hora de modificación) y ctime (hora de cambio) es que mtime muestra el último cambio del contenido del archivo, mientras que ctime muestra el último cambio del contenido del archivo o de uno de sus atributos (como como permisos o propietario). Según la situación, podemos buscar en nuestros registros el atributo ctime, el atributo mtime o incluso ambos.

En este caso, tomaremos la marca de tiempo ctime para un análisis más detallado, porque para ambos archivos, es el atributo más reciente. También comenzaremos buscando la marca de tiempo ctime que obtuvimos de a1cw42ipim.php, porque se cambió aproximadamente una hora antes que el mismo atributo del otro archivo. Asumiremos que se cargó primero y debería acercarnos al punto de entrada original.

Análisis de registro

Los registros de acceso actuales y en tiempo real están disponibles en la sección Registros del Panel de control; esto es útil si el ataque fue muy reciente. En este caso, el evento original ocurrió hace mucho tiempo, por lo que usaremos copias archivadas de los registros. Estos archivos se almacenan en el directorio Registros de la cuenta y se pueden ver desde el Administrador de archivos, a través de FTP o a través de SSH. Los archivos están en formato gzip, por lo que puede usar el comando zgrep para buscar en ellos. Además, los archivos de registro se dividen en archivos individuales, con nombres basados en el subdominio y el día, así es como se vería una búsqueda de la marca de tiempo obtenida anteriormente:

zgrep "19:41:" ~/logs/2018-08/www-07.log.gz

Al verificar los registros de acceso, prestamos especial atención a cualquier solicitud POST que descubrimos. A diferencia de las solicitudes GET, donde todos los datos están codificados en la URL, las solicitudes POST incluyen datos en el cuerpo de la solicitud. La mayoría de las cargas de archivos y las actualizaciones de configuración usan este método, y así es como también se suele cargar el malware. La búsqueda arroja las siguientes líneas de interés para nuestra investigación:

www.domain.com 192.0.2.1 - - [07/Aug/2018:19:41:44 +0800] "POST /um-api/route/um!core!Files/ajax_image_upload/a2c75736fe HTTP...
www.domain.com 192.0.2.2 - - [07/Aug/2018:19:41:45 +0800] "POST /wp-content/uploads/ultimatemember/temp/Ao3uKpx8B9klgpJ6Ra7A8...

No debe esperar descubrir el punto de entrada en el primer intento. El malware que investigamos puede haber sido cargado por otro archivo malicioso y, en la mayoría de los casos, el mismo proceso deberá repetirse varias veces antes de que se pueda identificar el punto de entrada. También es muy posible que la cuenta se haya visto comprometida en otro servidor y luego se haya migrado. Además, este proceso está ajustado y es específico para nuestro entorno. Sin embargo, cualquier proveedor de alojamiento respetable debería poder brindarle el acceso y las herramientas necesarias para realizar estos pasos.

Una vez que hayamos identificado el punto de entrada original, podemos comenzar a trabajar en la limpieza de la cuenta y fortalecerla contra problemas similares en el futuro. A menos que exista una copia de seguridad segura, esta tarea puede parecer desalentadora, pero en realidad es bastante sencilla con un CMS moderno.

Encontrar todos los archivos ejecutables en su cuenta y revisarlos manualmente en busca de malware (ya que los escáneres automáticos no funcionan lo suficientemente bien para el código PHP ofuscado) puede variar de difícil a absolutamente imposible. Afortunadamente, con una aplicación web moderna como WordPress, simplemente puede volver a instalarla y conservar los archivos cargados. Este es el método más rápido y efectivo para recuperar su sitio en un estado limpio y seguro. Lo usamos todos los días en todos menos en los casos más específicos y de nicho.

Guarde el archivo wp-config.php, sus imágenes y sus archivos personales

El archivo wp-config.php contiene la configuración básica de su sitio, incluida la información necesaria para conectarse al servidor de la base de datos. Al guardarlo, ábralo e inspeccione su contenido en busca de algo sospechoso, como una primera línea muy larga que contenga caracteres inusuales. Como regla general, si su editor de texto tiene una barra de desplazamiento horizontal inusualmente larga, es probable que el archivo que está editando se vea comprometido. Si ese es el caso con el archivo wp-config.php, copie las cadenas de conexión de la base de datos a un archivo wp-config.php limpio desde un archivo nuevo de WordPress.

Sus imágenes y archivos personales deben almacenarse en el directorio wp-content/uploads. Idealmente, no debería haber archivos PHP en esta ubicación. Desafortunadamente, algunos complementos y temas pueden almacenar algunos de sus archivos en subdirectorios allí, lo que dificulta aún más la tarea de identificar y eliminar correctamente el malware. Una manera fácil de enumerar todos los archivos PHP en un directorio determinado es ejecutar el siguiente comando a través de SSH:

find ~/www/www/wp-content/uploads/ -iname "*.php"

If you receive no output, you can safely copy the uploads directory. Otherwise, you should review the identified PHP files manually in order to see if they were placed there by a harmless plugin, or by an attacker.

Antes de eliminar algo, primero debe obtener una lista de sus complementos activos. Puede hacerlo desde el Panel de control de WordPress o escribiendo el siguiente comando en el terminal SSH dentro de su directorio de WordPress (por ejemplo, ~/www/www):

wp plugin list --status=active

Así es como puede verse la salida del comando:

 +----------------------------------+----------+-----------+---------+
 | name                             | status   | update    | version |
 +----------------------------------+----------+-----------+---------+
 | classic-editor                   |  active  | none      | 1.5     |
 | really-simple-ssl                |  active  | none      | 3.2.3   |
 +----------------------------------+----------+-----------+---------+

You can do the same for your active theme:

wp theme list --status=active
Eliminar toda la carpeta donde está instalado WordPress

El archivo wp-config.php y el directorio de cargas son todos los archivos que necesita conservar de su instalación actual de WordPress, ya que la mayor parte de su sitio reside en la base de datos. En algunos casos, la base de datos también necesita limpieza, pero estos son relativamente raros y no tan triviales de asegurar. A estas alturas, también debería tener una lista de sus complementos y temas activos, para que pueda descargar sus últimas versiones de los proveedores oficiales.

Cargue un nuevo paquete completo limpio de la última versión de WordPress

Puede obtener WordPress de su sitio web oficial e instalarlo manualmente, o puede usar nuestro instalador automático. En cualquier caso, ahora puede copiar el archivo wp-config.php guardado anteriormente y el directorio de carga. También puede instalar todos los complementos y temas que había estado usando anteriormente. Si están disponibles públicamente en el repositorio de WordPress, puedes hacerlo desde la terminal:

wp plugin install really-simple-ssl classic-editor --activate

En este punto, puede probar su sitio; idealmente, debería funcionar como antes del incidente. En el caso de que no sea así, debe ponerse en contacto con nuestro equipo de soporte.

Precauciones adicionales

Cuando un sitio de WordPress se ve comprometido, asumimos que los atacantes conocen sus credenciales administrativas. Es por eso que debe revisar y actualizar las contraseñas de todos los usuarios administrativos. También debe verificar si hay usuarios inusuales creados alrededor o después del ataque.

También le recomendamos que actualice su contraseña del Panel de control, así como las contraseñas de todos los usuarios de MySQL. Debe tener en cuenta que después de un cambio de contraseña para su usuario de MySQL, también debe actualizar su archivo wp-config.php en consecuencia.

Es posible que un sitio web de WordPress deje de funcionar correctamente después de instalar un nuevo complemento o actualizar un complemento existente. Si el Panel de WordPress permanece activo, puede deshabilitar o eliminar temporalmente el complemento problemático; sin embargo, algunos complementos también hacen que el Panel de WordPress deje de funcionar. En tales casos, puede deshabilitar fácilmente todos los complementos en su sitio web de WordPress a través de la sección WordPress del Panel de control de alojamiento siguiendo estos pasos:

  1. EditBusque la instalación de WordPress en la lista dentro de la sección WordPress y haga clic en el botón  (Editar).
  2. En la subsección Herramientas, haga clic en el botón Deshabilitar junto a Deshabilitar todos los complementos.

Esto debería permitirle iniciar sesión en su Panel de WordPress y resolver el problema con el complemento que se comporta mal. Debería poder reactivar sus complementos a través del panel de WordPress.

Este tutorial cubre los siguientes temas:

  • Obtener una lista de los comandos WP-CLI disponibles
  • Actualización del núcleo de WordPress
  • Actualización de complementos de WordPress
  • Instalación y activación/desactivación de complementos
  • Administrar temas de WordPress
  • Administrar usuarios de WordPress
  • Cambiar la URL de WordPress

WP-CLI es la interfaz de línea de comandos para WordPress, que le permite administrar todos los aspectos de la aplicación desde el símbolo del sistema, sin tener que usar un navegador web. Es una herramienta muy poderosa que podría ayudarlo a completar tareas complejas que de otro modo requerirían complementos adicionales o tomarían mucho más tiempo para completarse.

Este tutorial se enfoca en el uso de WP-CLI para completar las tareas típicas de administración de WordPress, como actualizar temas y complementos, administrar los usuarios del tablero y cambiar la configuración de la URL del sitio. Tenga en cuenta que WP-CLI está disponible en todos los servidores, pero requiere acceso SSH. Por lo tanto, primero deberá asegurarse de haber habilitado el acceso SSH para su cuenta. Puede hacerlo a través de la sección “Acceso SSH” del Panel de control de alojamiento. Más información sobre SSH está disponible en los siguientes artículos de nuestra documentación en línea:

  • Habilitación de SSH
  • Conexión a su cuenta a través de SSH

Una vez que haya iniciado sesión en su cuenta a través de SSH, deberá navegar hasta la ubicación de su sitio de WordPress. Si desea administrar el sitio para su nombre de dominio principal y no ha cambiado la carpeta raíz web predeterminada, deberá ejecutar el siguiente comando:

cd ~/www/www/

Si su sitio de WordPress está ubicado en otro directorio, deberá navegar a ese directorio en su lugar. Ahora que está en el directorio de WordPress, puede comenzar a ejecutar los comandos WP-CLI.

Obtener una lista de los comandos WP-CLI disponibles

Puede obtener una lista de todos los comandos WP-CLI disponibles ejecutando lo siguiente

wp help
Actualización del núcleo de WordPress

Primero debe verificar la versión actual de su instalación de WordPress ejecutando el siguiente comando:

wp core version

Puede iniciar la actualización con el siguiente comando:

wp core update

Si no hay actualizaciones disponibles, recibirá el siguiente mensaje:

Success: WordPress is up to date.
Actualización de complementos de WordPress

Nuevamente, primero debe verificar el estado de los complementos instalados, y eso se hace ejecutando:

wp plugin list
+---------------------+--------+-----------+---------+
| name | status | update | version |
+---------------------+--------+-----------+---------+
| all-in-one-seo-pack | active | none | 2.9.1 |
| contact-form-7 | active | none | 5.0.5 |
| fusion-builder | active | available | 1.1.6 |
| fusion-core | active | available | 3.1.6 |
| jetpack | active | none | 6.7 |
| LayerSlider | active | available | 6.3.0 |
| revslider | active | none | 5.4.2 |
| the-events-calendar | active | available | 4.6.25 |
| wp-mail-returnpath | active | none | 1.0.3 |
+---------------------+--------+-----------+---------+

Tenemos un total de nueve complementos instalados en nuestro proyecto de muestra de WordPress. Puede ver en la columna Estado que todos ellos están actualmente activos y hay actualizaciones disponibles para cuatro de ellos. Así es como podemos actualizar uno de los complementos:

wp plugin update fusion-builder
Enabling Maintenance mode...
Downloading update from https://updates.theme-fusion.com/?avada_action=get_download&item_name=Fusion%20Builder&nonce=27c6b23b34&t=1542808142&ver=5.7.1...
Unpacking the update...
Installing the latest version...
Removing the old version of the plugin...
Plugin updated successfully.
Disabling Maintenance mode...
+----------------+-------------+-------------+---------+
| name | old_version | new_version | status |
+----------------+-------------+-------------+---------+
| fusion-builder | 1.1.6 | 1.7.1 | Updated |
+----------------+-------------+-------------+---------+
Instalación y activación/desactivación de complementos

Estos son los comandos para instalar, activar y desactivar complementos:

wp plugin install plugin_name
wp plugin activate plugin_name
wp plugin deactivate plugin_name

Debe reemplazar la cadena plugin_name con el nombre real del complemento. Desactivar complementos a través de la línea de comandos puede ser muy útil si tiene un complemento que ha causado un problema con su sitio web y, sin embargo, no puede iniciar sesión en el tablero con un navegador para desactivarlo. En tales casos, aún podrá iniciar sesión en su cuenta a través de SSH y desactivar el complemento problemático desde la línea de comandos usando WP-CLI.

Administrar temas de WordPress

Estos son los comandos más comunes para administrar los temas de WordPress:

wp theme list
wp theme activate theme_name
wp theme delete theme_name
wp theme install theme_name
wp theme update theme_name

El primer comando le muestra una lista de los temas actualmente instalados, y aquí está el resultado cuando se ejecuta en nuestra instalación de muestra:

wp theme list
+-----------------+----------+-----------+---------+
| name | status | update | version |
+-----------------+----------+-----------+---------+
| twentyfifteen | inactive | available | 1.8 |
| twentyseventeen | inactive | available | 1.3 |
| twentysixteen | inactive | available | 1.3 |
+-----------------+----------+-----------+---------+

Esta tabla muestra que hay tres temas instalados con actualizaciones disponibles para todos ellos. Así es como se puede actualizar un tema a través de la línea de comando:

wp theme update twentyseventeen
Downloading update from https://downloads.wordpress.org/theme/twentyseventeen.1.7.zip...
Unpacking the update...
Installing the latest version...
Removing the old version of the theme...
Theme updated successfully.
+-----------------+-------------+-------------+---------+
| name | old_version | new_version | status |
+-----------------+-------------+-------------+---------+
| twentyseventeen | 1.3 | 1.7 | Updated |
+-----------------+-------------+-------------+---------+
Success: Updated 1 of 1 themes.
Administrar usuarios de WordPress
  • Puede obtener una lista de los usuarios existentes con el siguiente comando:
wp user list
  • El siguiente comando se puede utilizar para cambiar la contraseña de un usuario determinado:
wp user update USERNAME --user_pass="PASSWORD"

Este comando es útil si ha olvidado la contraseña de un usuario determinado y no tiene acceso a la cuenta de correo electrónico asociada a él.

  • Así es como puede crear un nuevo usuario de tablero directamente desde la línea de comando:
wp user create USERNAME EMAIL --role=administrator

Debe reemplazar la cadena NOMBRE DE USUARIO con el nombre de usuario deseado y el CORREO ELECTRÓNICO con su dirección de correo electrónico real. El campo “rol” establece el rol del usuario para crear; los valores posibles son: ‘administrador’, ‘editor’, ‘autor’, ‘colaborador’, ‘suscriptor’. Aquí hay un ejemplo:

wp user create example user@example.com --role=administrator
Cambiar la URL de WordPress

Las aplicaciones CMS como WordPress están configuradas para funcionar y aceptar solicitudes a través de una URL específica. Esta URL se establece durante el proceso de instalación. Sin embargo, a menudo es necesario cambiarlo por varias razones diferentes. Por ejemplo, es posible que deba mover su instalación de WordPress de un subdominio o subcarpeta a otro, o tal vez desee cambiar su nombre de dominio. Otra situación bastante común es cuando desea forzar conexiones HTTPS a su sitio web después de instalar un certificado SSL. Esta es una tarea bastante compleja ya que requiere una actualización de todas las entradas de la base de datos que contienen la URL anterior a la nueva. El proceso es mucho más fácil con el uso de WP-CLI, ya que solo necesita ejecutar el siguiente comando:

wp search-replace 'http://your-old-URL.com' 'http://your-new-URL.com' --skip-columns=guid

Su sitio ahora debería estar configurado para funcionar con la nueva URL. No dudes en abrir un ticket de soporte en caso de que detectes algún problema.

Nota: Es posible que haya enlaces codificados a recursos en sus archivos que contengan la URL anterior. Si nota que faltan imágenes, archivos CSS o cualquier otra discrepancia, es posible que desee verificar la consola de errores del navegador para ver si hay errores específicos. Puede abrir la consola de errores haciendo clic en F12. Le ayudará a localizar archivos que pueden contener enlaces a recursos faltantes. También puede abrir un ticket de soporte para obtener ayuda.