|
|
Línea 13: |
Línea 13: |
| | | |
| <br /> | | <br /> |
− | Parar poder acceder a un fichero necesitamos tener una referencia a él (Tanto para escribir como para leer).
| |
− | ;Temas de permisos de <span style=color:red>apache</span>
| |
− | A pesar de que no somos administradores/as debemos tener conocimientos para ciertos temas.
| |
− | Lo primero debemos tener claro es que cuando '''php''' le dice en el script a apache que actúe sobre el sistema de ficheros, es en última instancia el usuario apache quién quiere hacer la acciones
| |
− | *Lee atentamente el siguiente cuadro y asegúrate de tener claro cada punto, si no, pregunta.
| |
− | {{MRM_Actividad|Title=Puntos fundamentales sobre permisos|
| |
− | 1.- En '''''linux''''' todo '''fichero''' tiene un '''propietario''', y también todo '''proceso'''.
| |
− | *El '''''propietario''''' del proceso es el '''''usuario que lazó''''' dicho proceso.
| |
− | *Cuando un proceso quiere hacer algo sobre un fichero, el usuario que lanzó el proceso, debe tener '''''permisos sobre el fichero''''' para hacerlo.
| |
− | *El usuario que lanza '''''apache''''' es '''''www-data'''''
| |
− | *Para hacer a un usuario propietario de un fichero o a su grupo usamos la sentencia
| |
− | <source lang=bash>
| |
− | sudo chown usuario:grupo fichero (-R) }}
| |
− | </source>
| |
− | {{Nota|*'''''-R''''' parámetro opcional que actuaría de forma recursiva.
| |
− | *En php un '''''directorio es igual que un fichero''''' cuyo contenido son los ficheros y directorios que contiene.}}
| |
− |
| |
− |
| |
− | ;Para dar permisos sobre un fichero a un usuario usamos la sentencia
| |
− | <source lang=bash>
| |
− | sudo chmod permisos fichero (-R) }}
| |
− | </source>
| |
− | {{Nota|
| |
− | *'''''permisos'''' es un número de tres dígitos en '''octal''', ver tabla de abajo.
| |
− | *'''''fichero''''' al cual le queremos dar permisos, se puede usar * para especificar todos.
| |
− | *'''''-R''''' parámetro opcional que actuaría de forma recursiva.
| |
− | }}
| |
− | }}
| |
− |
| |
− |
| |
− | {| class="wikitable" colspec="C4"
| |
− | |-
| |
− | ! Número
| |
− | ! Binario
| |
− | ! Lectura (''r'')
| |
− | ! Escritura (''w'')
| |
− | ! Ejecución (''x'')
| |
− | |-
| |
− | | 0
| |
− | | 000
| |
− | | [[Archivo:No-Symbol.svg|20px|center]]
| |
− | | [[Archivo:No-Symbol.svg|20px|center]]
| |
− | | [[Archivo:No-Symbol.svg|20px|center]]
| |
− | |-
| |
− | | 1
| |
− | | 001
| |
− | | [[Archivo:No-Symbol.svg|20px|center]]
| |
− | | [[Archivo:No-Symbol.svg|20px|centeconcatenaciónr]]
| |
− | | [[Archivo:Symbol OK.svg|20px|center]]
| |
− | |-
| |
− | | 2
| |
− | | 010
| |
− | | [[Archivo:No-Symbol.svg|20px|center]]
| |
− | | [[Archivo:Symbol OK.svg|20px|center]]
| |
− | | [[Archivo:No-Symbol.svg|20px|center]]
| |
− | |-
| |
− | | 3
| |
− | | 011
| |
− | | [[Archivo:No-Symbol.svg|20px|center]]
| |
− | | [[Archivo:Symbol OK.svg|20px|center]]
| |
− | | [[Archivo:Symbol OK.svg|20px|center]]
| |
− | |-
| |
− | | 4
| |
− | | 100
| |
− | | [[Archivo:Symbol OK.svg|20px|center]]
| |
− | | [[Archivo:No-Symbol.svg|20px|center]]
| |
− | | [[Archivo:No-Symbol.svg|20px|center]]
| |
− | |-
| |
− | | 5
| |
− | | 101
| |
− | | [[Archivo:Symbol OK.svg|20px|center]]
| |
− | | [[Archivo:No-Symbol.svg|20px|center]]
| |
− | | [[Archivo:Symbol OK.svg|20px|center]]
| |
− | |-
| |
− | | 6
| |
− | | 110
| |
− | | [[Archivo:Symbol OK.svg|20px|center]]
| |
− | | [[Archivo:Symbol OK.svg|20px|center]]
| |
− | | [[Archivo:No-Symbol.svg|20px|center]]
| |
− | |-
| |
− | | 7
| |
− | | 111
| |
− | | [[Archivo:Symbol OK.svg|20px|center]]
| |
− | | [[Archivo:Symbol OK.svg|20px|center]]
| |
− | | [[Archivo:Symbol OK.svg|20px|center]]
| |
− | |}
| |
− |
| |
− | Por ejemplo:
| |
− | <source lang="bash">
| |
− | chmod 766 file.txt # brinda acceso total al dueño
| |
− | # y lectura y escritura a los demás
| |
− | chmod 770 file.txt # brinda acceso total al dueño y al grupo
| |
− | # y elimina todos los permisos a los demás usuarios
| |
− | chmod 635 file.txt # Permite lectura y escritura al dueño,
| |
− | # escritura y ejecución al grupo,
| |
− | # y lectura y ejecución al resto
| |
− | </source>
| |
− |
| |
− |
| |
− |
| |
− | {{Nota| Recuerda que es el usuario '''''apache''''' el que ha de tener los permisos necesarios '''(leer(r),escribir (w), ejecutar (x)'''}}
| |
− |
| |
− | </div>
| |