Hola Wecindario ! Cómo ya sabréis, Plesk lleva una herramienta de gestión de tareas programadas y en este caso, si escogemos, "comando" debemos saber que por defecto Plesk lleva el shell : bin/bash/  cheooted Y este si queréis lo podéis cambiar, aunque como siempre, se recomienda No tocar, ya que por seguridad esta es la mejor opción. Pero si lo queremos modificar ahora lo veremos con detalles

Configuración del Shell

Como ya sabréis, Plesk deja que los clientes  programen tareas y que ejecuten comandos en el servidor. El shell determina las áreas del sistema de archivos la cual tiene acceso las tareas. Por defecto, el acceso está limitado al espacio web del cliente. Pero como todo, esto se puede cambiar.

Hosting Web

Nota: si no está familiarizado con los shells, documéntate al respecto antes de cambiar la configuración.

¿Qué shell se usa para la ejecución de tareas programadas?

El shell se usa para las tareas «Run a Command» está conectado al usuario de sistema de dicha suscripción. Todas las tareas programadas creadas bajo esa suscripción comparten el mismo shell. Por defecto , se trata del shell por defecto . De todos modos, existen varias excepciones para esta regla:

  • El administrador de Plesk puede seleccionar cualquier shell para cualquier suscripción del servidor.
  • El administrador de Plesk puede permitir al propietario de una suscripción seleccionar otro shell.

En ambos casos, al modificarlo las tareas programadas «Run a Command» creadas bajo dicha suscripción usarán el shell personalizado y no el predeterminado.

¿Por qué deberíamos usar otro shell?

Por defecto, el shell  pone «/bin/bash (chrooted)»

Y es el shell predeterminado para  todas las tareas programadas. Por eso las tareas ejecutadas solo tienen acceso a los archivos presentes en el espacio web asociado con la suscripción y no a la raíz del servidor o algo así. Gracias a esta seguridad, los clientes no pueden utilizar tareas programadas para interrumpir el funcionamiento del servidor ni para acceder a archivos de otros alojamientos del mismo Plesk

Nota: esta opción afecta a todas las suscripciones. Esta no afecta a las tareas programadas creadas por el admin de Plesk que hay en Herramientas y configuración > Tareas programadas configuradas para ejecutarse bajo el usuario root.

El principal motivo por lo que nos podemos plantear el cambiar el Shell es permitir a todos los usuarios ejecutar comandos mediante tareas que tengan acceso a todo el sistema de archivos del servidor.Pero claro si se lía parda. ¿Qué hacemos?

Si tu caso es que no compartes el servidor con nadie o confías en las demás personas alojadas, puede seleccionar un shell no chrooted para las tareas . En el caso de querer usar shell no chrooted para las tareas pero no está seguro del shell a escoger, te recomiendo «/bin/bash».

En un servidor compartido, re recomendamos poner el shell predeterminado para tareas a «/bin/bash (chrooted)». Y que no lo tiques Si uno de sus clientes requiere un shell no chrooted para sus tareas programadas, puedes darle permisos a esa suscripción de forma individualizada, y no afecta al resto

IMPORTANTE: si damos acceso a un cliente o otro shell NO (chrooted)», debes saber que podrá  ejecutar binarios o acceder a los archivos, datos.. etc ,  que no sean suyos.Así que es un riesgo de seguridad ¿No crees?

Cómo poner el shell predeterminado para las tareas programadas

Para ver o cambiar el shell que se usará por defecto para ejecutar todas las tares «Run a Command», vamos a a Herramientas y configuración > Tareas programadas > Configuración y buscamos y escogemos el shell deseado el desplegable.

Hosting Web

O bien lo podemos hacer  mediante SSH y ejecutar el siguiente comando:

plesk bin server_pref -u -crontab-secure-shell "<shell>"

Donde , <shell> seria el shell que queremos. Por ejemplo

plesk bin server_pref -u -crontab-secure-shell "/bin/bash"

Desactivar el uso de tareas programadas «Run a Command»

Si ven a  clientes creando una tarea programada que hace una actividad malintencionada,  como el envío de spam, podemos desactivar de golpe  las tareas programadas «Run a command» mientras investigamos lo que haga falta.

Vamos al servidor mediante SSH y lanzamos el siguiente comando:

plesk bin server_pref -u -crontab-secure-shell "/bin/false"

Así se pondrá el shell predeterminado a «/bin/false» para las tareas . Así las tareas programadas «Run a command» creadas no podrán realizarse.

Recuerda : que si le has dado permisos al cliente para que se cambie el shell, se lo podrán hacer y volver a usar las tareas programadas , pero si queremos quitar ese permiso de cambiarse el shell, vamos a Plesk, a la suscripción y a Sitios web y dominios > Acceso a hosting web.

Poner un shell personalizado para cada suscripción

Para poner un shell personalizado para una suscripción en concreto, seguiremos estos pasos:

  1. En  Suscripciones, vamos a la suscripción deseada y  luego Acceso a hosting web.
  2. Escogemos el shell deseado«Acceder al servidor vía SSH» y pinchamos en ACEPTAR.

Y con esto, si el cliente hace tareas programadas, lo hará haciendo este shell

Permitir a un cliente cambiar  shell personalizado para su suscripción

Para que un cliente se pueda cambiar el shell, siga estos pasos

  1. Vamos a Suscripciones,y luego en  Personalizar.
  2. En «Permisos», seleccione las casillas «Administración de la configuración de hosting» y «Establecimiento de opciones de script web de hosting potencialmente inseguras que invaliden la directiva del proveedor» y pinchamos en ACEPTAR.

Así el cliente podrá escoger otro shell, en  Sitios web y dominios > Acceso a hosting web. Y si lo hace, todas las tareas de esa suscripción usarán ese shell.

¿Qué shell está usando la suscripción?

Para saber el shell que usa una tarea de cierta suscripción, seguiremos estos pasos

  1. Buscamos el el nombre de usuario del usuario de sistema de ese alojamiento.  Vamos a Suscripciones, y en  Acceso a hosting web y miramos el campo «Nombre de usuario».
  2. Vamos mediante ssh y ejecutamos:

crontab -u <system user name> -l | grep SHELL

Donde <system user name>   es el nombre de usuario a examinar

Y ¡Esto es todo Wecindario! Aquí tenemos todo lo que hay que saber sobre Configuración del Shell y permisos de los mismos

!Hasta la próxima Wecindario!

Tu Hosting a un Precio Excelente con Hoswedaje

Si estas pensando en crear tu página web pero no tienes decido el hosting, te ofrecemos nuestros servicios. Puedes consultar más información acerca de estos Hosting a continuación:

Configuración del Shell  Si estas interesado en un Hosting para WordPress, consulta este enlace.

correo  Si tienes un Ecommerce, este es tu Hosting ideal para PrestaShop.

Configuración del Shell  Hosting Joomla, consulta los distintos planes.

ip publica  Si tienes un Hosting Drupal, este es tu alojamiento.

correo  Consulta el Hosting perfecto para Magento

Si necesitas realizar cualquier consulta, o quieres asesoramiento personalizado, contacta con nosotros.