Guía sobre la transferencia de CGI/SCRIPT. Gestión de permisos
Introducción
Esta guía explica la transferencia de archivos CGI o SCRIPT así como la importancia de dar determinados permisos a ciertos ficheros.
Transferencia de CGI y SCRIPT
La transferencia de CGI y SCRIPT se realiza como cualquier otro archivo a través de un programa FTP como
FileZilla.
Puede consultar nuestra Guía de FTP:
PonerMiSitioEnLinea.
Puede transferirlos tanto en la carpeta CGI-BIN (modo .CGI y .PL) como en la carpeta web WWW (modo SCRIPT).
En ambos casos deberá darles permisos especiales de ejecución.
La única particularidad que tienen, es que para que pueda ejecutarlos, debe transferirlos:
- MODO .CGI Y .PL : dentro de la carpeta cgi-bin de su repertorio raíz con permisos de ejecución
- MODO SCRIPT : en la carpeta web www con las extensiones autorizadas (.php, etc...) y con permisos de ejecución
| Nota : Si no tiene creada la carpeta cgi-bin puede crearla directamente en la raíz de su alojamiento. |
Modo de ejecución
Todos los scripts y programas CGI-BIN se ejecutan a través de
sudo con su nombre de usuario, que corresponde a su login ftp. De igual modo, todos los ficheros que escriba el programa tendrán su login como propietario.
En otros proveedores, que no disponen de este sistema de protección y que ejecutan todos los scripts con un usuario común, el rendimiento y la seguridad se ven afectadas por la ejecución paralela de varios scripts en un mismo espacio.
En OVH puede estar seguro de que usted dispone
en exclusividad de un espacio propio para la ejecución de sus scripts y CGI.
Ejecución en modo CGI
Una vez colocados dentro de su carpeta
cgi-bin, puede ejecutarlos añadiendo .../cgi-bin/ a la URL del dominio.
Ejemplo
http://www.su_dominio.com/cgi-bin/ejemplo.cgi
| Nota : En los alojamientos multidominio sólo es posible usar la carpeta cgi-bin en el dominio principal. |
Ejecución en modo SCRIPT
Una vez colocados dentro de su carpeta
www, puede ejecutarlos añadiendo desde la URL del dominio.
Ejemplo
http://www.su_dominio.com/ejemplo.php
Selección de permisos
La selección de permisos se hace a través de su programa de FTP. A partir del plan Profesional, 90plan o superiores, también se pueden cambiar mediante SSH.
Tipos de permisos
En nuestros servidores, cada fichero posee permisos que gestionan la posibilidad de leer, modificar y ejecutar el fichero.
Estos permisos pueden estar autorizados de diferentes maneras según el usuario que acceda al archivo.
Para establecer los permisos, se necesitan 3 números.
- El primero establece los permisos para el propietario del sitio.
- El segundo para los miembros de su grupo (muy útil si tenemos un plan con
MultiFTP).
- El tercero establece los permisos para los usuarios del sitio.
Concretamente, se ejecuta el comando chmod. Este comando puede ejecutarse mediante FTP o SSH.
Cada número tiene un valor que indica el derecho asignado.
- Lectura (4)
- Escritura (2)
- Ejecución (1)
Para un archivo :
- El derecho de lectura permite ver el archivo.
- El derecho de escritura permite modificar, sobreescribir o borrar el fichero.
- El derecho de ejecución representa la posibilidad de ejecutar un fichero SCRIPT (Perl, PHP, etc).
Para un directorio o carpeta, estos derechos varía un poco:
- El derecho de lectura permite listar los ficheros contenidos en el directorio.
- El derecho de escritura representa la posibilidad de crear, copiar o borrar ficheros en el directorio.
- El derecho de ejecución representa la posibilidad de entrar y desplazarse en el directorio.
| Nota : Si alguien quiere tener derecho a varios permisos basta con sumar el valor de los permisos (lectura y escritura = 4 + 2 = 6) |
Ejemplo
Para dar a un archivo los derechos de lectura y escritura a su propietario, y únicamentre derechos en lectura a los demás usuarios, hay darle los permisos
644.
| Nota : Los permisos completos 777 están prohibidos por motivos de seguridad en todos los alojamientos compartidos, los máximos valores permitidos son 755. |
Cambiar permisos
Puede cambiarlos a través de su programa FTP o bien de un acceso SSH.
Para cambiarlos a través del FTP, puede consultar nuestra Guía de FTP:
PonerMiSitioEnLinea.
Para cambiarlos a través de SSH, se hace a través del comando
chmod y una combinación numérica de tres cifras.
Los permisos utilizan tres cifras (valor de 0 a 7) que codifican los derechos de los tres tipos de usuarios -propietario, grupo y resto de usuarios.
Ejemplo 1
Concretamente, para dar a un archivo los derechos de lectura y escritura a su propietario, y los únicos derechos en lectura a los demás usuarios, hay que ejecutar el comando
-
chmod 644 nombre_del_fichero.
| Esta combinación de permisos es el que tienen normalmente las páginas web estáticas y ficheros de datos (HTML, GIF, JPEG). Los archivos que están en WWW tienen por defecto esta combinación de permisos. |
Ejemplo 2
Para dar a un fichero los derechos de lectura, escritura y ejecución al propietario, los derechos de lectura y ejecución a los otros usuarios, debe ejecutar el comando
-
chmod 755 nombre_del_fichero.
| Esta combinación es la que necesitan los SCRIPTS y CGIS (PHP, PL, CGI). Los archivos que están en CGI-BIN tienen por defecto esta combinación de permisos. |
Ejemplo 3
Para dar a un elemento los derechos de ejecución, lectura y escritura a su propietario, y los únicos derechos en lectura a los usuarios fuera de su grupo, hay que ejecutar el comando
-
chmod 705 nombre_del_fichero.
| Esta combinación de permisos es el que tienen normalmente las CARPETAS o SUBDIRECTORIOS (como la carpeta www). |
Más información
:
InternalServerError : Errores en la ejecución de scripts.
:
PonerMiSitioEnLinea : ¿Cómo poner el sitio online?.
:
FtpDreamweaver: ¿Cómo poner el sitio online con el Dreamweaver?.
:
FtpFileZilla: ¿Cómo poner el sitio online con FileZilla?.