Restablecer los permisos predeterminados en el directorio del virtualhost en Plesk

Síntomas

Algunos archivos y directorios del dominio han perdido sus permisos. Varios de ellos son propiedad del usuario “apache” o “root” de Apache.

Por ejemplo:

# ls -l /var/www/vhosts/blogofsysadmins.com/
total 48
drwx------ 5 apache     apache 4096 Mar 16 20:07 anon_ftp
drwx------ 2 root       psaserv 4096 Mar 16 20:07 bin
drwx------ 3 apache     apache 4096 Mar 16 20:07 cgi-bin
drwx------ 2 root       psaserv 4096 Aug  4 12:56 conf
drwx------ 2 root       psaserv 4096 Mar 16 20:07 error_docs
drwx------ 7 apache     apache 4096 Mar 16 20:07 httpdocs
drwx------ 7 apache     apache 4096 Mar 16 20:07 httpsdocs
drwx------ 2 root       psaserv 4096 Aug  4 12:56 pd
drwx------ 2 root       root    4096 Mar 16 20:07 private
dr-x------ 7 root       psaserv 4096 Mar 16 20:07 statistics
drwx------ 2 root       psaserv 4096 Mar 16 20:07 subdomains
drwx------ 2 root       psaserv 4096 Mar 16 20:07 web_users
~#

Cuando intento cargar archivos a través del Administrador de Archivos o de un cliente FTP, obtengo los errores «Permiso denegado» o «Acceso denegado«.

Resolución

Use la utilidad «vhostmng» para restablecer los permisos. El comando a ejecutar es el siguiente:

~# /usr/local/psa/admin/sbin/vhostmng --install-vhost --vhost-name=<domain name> --user-name=<username> --set-content-permissions

Donde <domain name> es el dominio donde deben restaurarse los permisos y <username> es el usuario FTP del dominio configurado en Parallels Plesk Panel en la página Dominios -> <domain name> -> Opciones de Alojamiento Web (versión 9.x) o Dominios -> <domain name> -> Configuración (versión 8.x).

El comando restaurará los permisos predeterminados en el directorio del virtualhost:

drwxr-x--- 5 ftp_user   psaserv 4096 Mar 16 20:07 anon_ftp
drwxr-xr-x 2 root       psaserv 4096 Mar 16 20:07 bin
drwxr-x--- 3 ftp_user   psaserv 4096 Mar 16 20:07 cgi-bin
drwxr-x--- 2 root       psaserv 4096 Aug  4 12:56 conf
drwxr-xr-x 2 root       psaserv 4096 Mar 16 20:07 error_docs
drwxr-x--- 7 ftp_user   psaserv 4096 Mar 16 20:07 httpdocs
drwxr-x--- 7 ftp_user   psaserv 4096 Mar 16 20:07 httpsdocs
drwxr-x--- 2 root       psaserv 4096 Aug  4 12:56 pd
drwx------ 2 ftp_user   root    4096 Mar 16 20:07 private
dr-xr-x--- 7 root       psaserv 4096 Mar 16 20:07 statistics
drwxr-xr-x 2 root       psaserv 4096 Mar 16 20:07 subdomains
drwxr-xr-x 2 root       psaserv 4096 Mar 16 20:07 web_users

Desactivar servicio Mail por dominio en Plesk

Es fácil, si teneis que desactivar el servicio Mail en algun dominio por cualquier causa y por el panel de control web de Plesk es imposible, aqui teneis el comando de plesk para desactivar el servicio de mail en el dominio que querrais en Plesk

# /etc/init.d/psa stopall
# /etc/init.d/mysql start
# /usr/local/psa/bin/domain -u midominio.com -mail_service false

Limpiar cache DNS en Linux, Windows o Mac

En ocasiones tenemos que limpiar la cache DNS, especialmente si cambias algún dominio de servidor y quieres probar que todo funciona correctamente, lo que recomiendo en estos casos es poner como DNS la ip servidor o la del servidor DNS “autoritativo” de ese dominio. De esta forma trabajaremos sobre el nuevo servidor y podremos comprobar que todo funcione correctamente.

Para limpiar la cache DNS lo haremos desde el terminal/shell/consola y según el sistema operativo que usemos escribiremos lo siguiente:

GNU/Linux: sudo /etc/init.d/nscd restart
Windows: ipconfig /flushdns
Mac OS X: lookupd -flushcache
Leopard y posterior : dscacheutil -flushcache

Limpiando la cache DNS de nuestro equipo no quiere decir que automáticamente podamos ver correctamente la ultima versión de esa web, puede que las DNS de nuestro proveedor de Internet no estén actualizadas aunque en la actualidad suelen actualizarse con una frecuencia mucho mayor.

Manual de seguridad, optimización de Apache, PHP y MySQL

Curso de seguridad php y mysql
optimización de Apache, PHP y MySQL

Completisimo Curso de aprendizaje de Mantenimiento, seguridad & Optimización de un Portal Web basado en Lenguaje PHP. Excelente contenido , material ideal para todos aquellos Webmaster que programan sus webs en este magnifico lenguaje!!
Consta de dos partes bien diferenciadas. La primera -teórica- describe el estado del arte de la seguridad en aplicaciones web así como conceptos generales de seguridad informática. Se incluyen  también algunas referencias y breves descripciones de herramientas útiles para la auditoría de aplicaciones web, además de una guía de administración para la creación de un entorno seguro bajo Apache, PHP y MySQL. La segunda parte -práctica- consiste en auditar el código de dos portales  web de características similares, depurarlo, proponer mejoras funcionales, y posteriormente  implementarlas. Como parte del desarrollo, se han escrito y experimentado con rutinas de protección  genérica contra “injecting”, para PHP. Continuar leyendo «Manual de seguridad, optimización de Apache, PHP y MySQL»