Calculadora de Permisos Linux (chmod)

Calcule los permisos de archivos de Linux en ambos sentidos. Marque leer, escribir y ejecutar para el propietario, el grupo y los demás y obtenga el modo octal y el comando que debe ejecutar, o pegue 755, rwxr-xr-x, u+x o una línea completa de ls -l y vea exactamente qué significa.

Calculado en su navegador · no se envía nada a ningún sitio · comportamiento de POSIX y GNU coreutils
Archivos
Directorios

Escriba 755, pegue rwxr-xr-x o una línea completa de ls -l, o cambie el modo con u+x o go-w.

Tipo
Leer4Escribir2Ejecutar1Dígito
Propietario4+2+1=7
Grupo4+1=5
Los demás4+1=5
Especialesnada=0

En palabras sencillas

  • El propietario puede leerlo, modificarlo y ejecutarlo.
  • El grupo y los demás pueden leerlo y ejecutarlo.
  • Este archivo se puede ejecutar.

Calculado en su navegador. No se envía nada a ningún sitio.

¿Qué hace chmod?

chmod define quién puede leer, modificar y ejecutar un archivo. Un modo son doce bits, que se escriben normalmente como tres o cuatro dígitos octales: 755, 644, 2775.

Cada uno de los tres dígitos pertenece a una clase (el propietario del archivo, el grupo del archivo y los demás) y cada dígito es la suma de tres números: leer vale 4, escribir vale 2, ejecutar vale 1. Así, 7 es leer, escribir y ejecutar; 5 es leer y ejecutar; 6 es leer y escribir; 4 es solo leer. Eso es todo el sistema. chmod 755 script.sh dice: propietario 7, grupo 5, los demás 5.

El cuarto dígito, cuando existe, lleva los tres bits especiales (setuid 4, setgid 2 y sticky 1) y se omite cuando no hay ninguno activado. La calculadora de arriba muestra los cuatro dígitos a la vez y la aritmética de cada uno, para que no tenga que buscar los números.

Un modo son doce bitschmod 755 script.sh
Antesscript.sh
Especialess4s2t10
Propietarior4w2x16
Grupor4w2x14
Los demásr4w2x14
-rw-r--r--0644
Despuésscript.sh
Especialess4s2t10
Propietarior4w2x17
Grupor4w2x15
Los demásr4w2x15
-rwxr-xr-x0755
chmod 755 fija todos los bits del modo a la vez: desde 644, activa los tres bits de ejecución, uno por clase. Los tres bits de cada clase suman un dígito octal.
Calculadora de permisos Linux con el modo 755 en una cuadrícula, sus dígitos octales, la forma simbólica y el comando chmodCalculadora de permisos Linux con el modo 755 en una cuadrícula, sus dígitos octales, la forma simbólica y el comando chmodMarque o escribaLa cuadrícula y los campos son lo mismo: cambie uno y el resto se actualiza.Cada dígito4 + 2 + 1 para cada clase, así que el número deja de ser algo que memorizar.Pegue lo que sea755, rwxr-xr-x, u+x o una línea completa de ls -l: lee los cuatro.El comandoSe construye con el modo que eligió, con el número correcto de dígitos y una forma recursiva que no aplana sus archivos.Qué significaUna frase sencilla, más las advertencias que merece el modo.
El modo 755 desglosado: la cuadrícula, la aritmética de cada dígito, la forma simbólica y el comando que ejecutar. Seleccione un número para ver qué muestra cada parte.

Cómo funcionan los permisos de archivos en Linux

Todo archivo tiene un propietario, un grupo y un modo. El modo da tres permisos a cada una de tres clases (nueve bits) y justo después del carácter de tipo de archivo, ls -l imprime exactamente esos nueve caracteres.

-rw-r--r-- es un archivo (-) que su propietario puede leer y modificar, y que el grupo y los demás solo pueden leer: modo 644. drwxr-xr-x es un directorio (d) con 755. El primer carácter es el tipo: - un archivo, d un directorio, l un enlace simbólico y b, c, p o s para los tipos especiales. Pegue cualquiera de esas líneas en la calculadora y esta lee de ella el modo y el tipo.

En un directorio, los tres permisos significan algo distinto que en un archivo. Leer permite ver los nombres que contiene. Ejecutar permite entrar en él y llegar a los archivos cuyo nombre ya conoce. Escribir, junto con ejecutar, permite crear y borrar entradas, por eso borrar un archivo depende de los permisos del directorio y no de los del archivo. Un directorio con lectura pero sin ejecución es un directorio cuyo contenido puede ver pero al que no puede entrar.

Lo primero que imprime ls -lls -l notes.txt
PermisoEn un archivoEn un directorio
r4Leer lo que contieneVer los nombres que contiene
w2Modificar lo que contieneCrear, renombrar y borrar entradas
x1Ejecutarlo como programaEntrar en él y abrir lo que hay dentro

Otros primeros caracteres: d un directorio, l un enlace simbólico y b, c, p o s para los tipos especiales.

¿Qué significa chmod 755?

755 significa que el propietario puede leer, modificar y ejecutar, y que los demás pueden leer y ejecutar pero no modificar. Es el modo normal de un directorio y de un programa.

Dígito por dígito: 7 = 4 + 2 + 1, así que el propietario lee, escribe y ejecuta. 5 = 4 + 1 para el grupo y otra vez para los demás, así que ambos leen y ejecutan. Escrito con letras es rwxr-xr-x y, como comando simbólico, chmod u=rwx,g=rx,o=rx.

Úselo para los directorios en los que quiere que se pueda entrar y para los scripts y binarios que quiere que se puedan ejecutar. No lo use para nada secreto: el último 5 significa que cualquier cuenta de la máquina puede leer el archivo. Para los archivos de un servidor web, la documentación de WordPress recomienda 755 o 750 para los directorios y 644 o 640 para los archivos.

755, dígito por dígitochmod 755
7=r4w2x14+2+1rwxPropietario
5=r4-2x14+1r-xGrupo
5=r4-2x14+1r-xLos demás
Úselo para
  • Directorios en los que la gente necesita entrar
  • Scripts y programas
No lo use para
  • Nada secreto: todos pueden leerlo

La documentación de WordPress: directorios 755 o 750, archivos 644 o 640.

chmod 644 frente a 755: ¿cuál necesito?

644 para los archivos, 755 para los directorios y para todo lo que deba ejecutarse. La única diferencia es el bit de ejecución.

644 es rw-r--r--: el propietario puede modificarlo, todos pueden leerlo y nadie puede ejecutarlo. Es lo correcto para HTML, CSS, imágenes, archivos de configuración y código fuente. 755 es rwxr-xr-x: lo mismo, más el bit de ejecución para las tres clases. Un directorio lo necesita o nadie podrá entrar en él, y un script lo necesita o el shell se negará a ejecutarlo.

El error que conviene evitar es chmod -R 755 sobre todo un sitio, que hace ejecutable cada imagen y cada archivo .php. Los dos comandos find que escribe la calculadora dan modos distintos a directorios y archivos en una sola pasada, con los modos que usted eligió y no con una pareja sacada de un blog.

La única diferencia es el bit de ejecución644 · 755
644
LeerEscribirEjecutar
Propietariorw-6
Grupor--4
Otrosr--4

Archivos: HTML, CSS, imágenes, configuración, código fuente

755
LeerEscribirEjecutar
Propietariorwx7
Grupor-x5
Otrosr-x5

Directorios, scripts y programas

Al revés
  • 755Un archivo con 755 se puede ejecutar, y también todas las imágenes y archivos .php bajo un chmod -R 755.
  • 644Un directorio con 644 muestra sus nombres, pero nadie puede entrar en él ni abrir nada de lo que contiene.

¿Qué hace chmod 777 y es seguro?

777 permite que cualquier cuenta de la máquina lea, modifique y ejecute el archivo. Casi nunca es la respuesta correcta, y la documentación de WordPress dice que ningún directorio debe tenerlo jamás.

Escribible por todos significa que cualquiera que pueda iniciar sesión, o cualquier cosa que se ejecute como cualquier usuario, incluido un proceso comprometido, puede reemplazar el contenido del archivo. Si ese archivo es un script que ejecuta el servidor web, ha entregado el servidor. La página de permisos de WordPress recomienda 755 o 750 para los directorios y 644 o 640 para los archivos, y dice que ningún directorio debe tener 777, ni siquiera uno de subida de archivos.

Cuando una aplicación web no puede escribir en un directorio, la solución está en el propietario o el grupo, no en el modo: use chown para pasar el directorio al usuario con el que se ejecuta el servidor web, o agregue ese usuario a un grupo compartido y use 775. La calculadora avisa siempre que un modo permite escribir a todos: en un archivo siempre, y en un directorio a menos que el bit sticky impida que unos borren los archivos de otros.

Quién puede escribir con 777chmod 777
777Todos pueden modificarlo
LeerEscribirEjecutar
Propietariorwx7
Gruporwx7
Otrosrwx7
  1. 1Cualquier cuenta, o cualquier proceso que se ejecute como una
  2. 2reemplaza el script
  3. 3y el servidor web lo ejecuta
Lo que pide la documentación

WordPress · Directorios 755 o 750, archivos 644 o 640.

«Ningún directorio debe tener nunca 777, ni siquiera los de subida de archivos.»

La solución está en el propietario o el grupo, no en el modo: pase la propiedad con chown al usuario del servidor web, o comparta un grupo y use 775.

¿Por qué SSH dice que los permisos de mi clave son demasiado abiertos?

OpenSSH se niega a usar una clave privada que pueda leer alguien que no sea su propietario. Ponga la clave en 600 y el directorio .ssh en 700.

El mensaje exacto es Permissions 0644 for '<path>' are too open., seguido de It is required that your private key files are NOT accessible by others. La prueba es tajante: si usted es el propietario del archivo y cualquier bit del grupo o de los demás está activado, la clave se rechaza. Por eso 640 también falla, y por eso la respuesta es 600 y no «un poco menos que 644».

chmod 600 ~/.ssh/id_ed25519 y chmod 700 ~/.ssh lo arreglan. La clave pública puede ser legible por cualquiera: aquí solo importan la clave privada y el directorio. Elija Clave SSH en los modos habituales de arriba y la calculadora escribe los dos comandos por usted.

Lo que imprime ssh
$ssh you@server.example
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/home/you/.ssh/id_ed25519' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Qué comprueba OpenSSH
Los archivos y los modos que pasan
  • ~/.ssh/700drwx------El directorio
  • id_ed25519600-rw-------Su clave privada
  • id_ed25519.pub644-rw-r--r--La clave pública: cualquiera puede leerla
  • config600-rw-------Sin escritura para los demás
La prueba, bit por bit
  • 644rw-r--r--Rechazada
  • 640rw-r-----Rechazada
  • 600rw-------Se usa
  • 400r--------Se usa

Grupo y los demás: todos desactivados

Modo simbólico: u, g, o, a con +, - y =

chmod u+x script.sh agrega un bit sin tocar el resto. + agrega, - quita y = deja una clase exactamente con lo que usted indique.

La gramática es [quién][operador][permisos], con comas entre las cláusulas: u el propietario, g el grupo, o los demás, a las tres clases. Así, go-w quita la escritura al grupo y a los demás, a=rwx lo activa todo y u=rw,go=r es otra forma de escribir 644. Pegue cualquiera de ellas en la calculadora de arriba y mostrará qué bits cambian, antes y después.

Dos partes de la gramática son fáciles de confundir, y la calculadora respeta ambas. X, la X mayúscula, agrega el bit de ejecución solo a un directorio o a un archivo que ya es ejecutable para alguien, y eso es lo que hace seguro chmod -R u=rwX,go=rX en un árbol mixto. Y una cláusula sin ninguna clase, como +x, no es lo mismo que a+x: los bits que están en su umask se dejan como están, de modo que con el umask habitual de 022, chmod +rwx sobre un archivo 644 da 755, mientras que chmod a+rwx da 777.

quién · operador · permisoschmod u+x script.sh
  • uel propietario
  • gel grupo
  • olos demás
  • alas tres clases
  • +agregar
  • -quitar
  • =fijar exactamente
  • rleer
  • wescribir
  • xejecutar
  • Xejecutar, solo en directorios y en archivos que ya se pueden ejecutar
  • ssetuid o setgid
  • tsticky
Ejemplos prácticos
CambioAntesDespués
u+x644rw-r--r--744rwxr--r--Ejecución para el propietario, sin tocar nada más.
go-w775rwxrwxr-x755rwxr-xr-xEscritura quitada al grupo y a los demás.
a=r755rwxr-xr-x444r--r--r--Las tres clases solo con lectura, y nada más.
u=rw,go=r777rwxrwxrwx644rw-r--r--Tres cláusulas: otra forma de escribir 644.
+rwx644rw-r--r--755rwxr-xr-xSin clase: los bits del umask (022) no se activan, así que el grupo y los demás no reciben escritura.
a+rwx644rw-r--r--777rwxrwxrwxCon a, el umask no cuenta: se activa todo.
a+Xen un directorio644rw-r--r--755rwxr-xr-xX mayúscula en un directorio: se agrega la ejecución, porque es un directorio.
a+Xen un archivo644rw-r--r--644rw-r--r--X mayúscula en un archivo que nadie puede ejecutar: no se agrega nada.

Setuid, setgid y el bit sticky

El cuarto dígito. En un archivo, setuid y setgid cambian con qué cuenta se ejecuta un programa. En un directorio, setgid decide el grupo de los archivos nuevos y sticky decide quién puede borrarlos.

Setuid (4000) en un ejecutable hace que se ejecute como el propietario del archivo y no como usted: passwd se instala con setuid para poder ejecutarse con los derechos de root cuando usted cambia su contraseña. Setgid (2000) hace lo mismo con el grupo. En un directorio, setgid hace algo distinto y mucho más útil: los archivos nuevos que contiene heredan el grupo del directorio en lugar del de quien los crea, que es como una carpeta de proyecto compartida sigue siendo compartida. Linux no documenta ningún significado para el bit setuid en un directorio; en macOS y los BSD puede hacer que los archivos nuevos tomen el propietario del directorio, si el sistema de archivos se montó con esa opción.

El bit sticky (1000) en un directorio impide que unos borren los archivos de otros: solo el propietario del archivo, el propietario del directorio o root pueden eliminar o renombrar una entrada. /tmp tiene el modo 1777 exactamente por eso: todos pueden escribir en él, nadie puede borrar el trabajo de otro. En un archivo normal, macOS y los BSD ignoran el bit sticky, y el manual de GNU solo le da ahí un significado en algunos sistemas antiguos. Una trampa: chmod 755 somedir, o chmod 0755 somedir, no borra un bit setgid que ya esté activado en un directorio, porque el chmod de GNU los conserva deliberadamente con cualquier modo numérico de menos de cinco dígitos; POSIX solo exige que la forma octal los borre en un archivo normal. Use g-s o el chmod 00755 de cinco dígitos, y la calculadora escribe la forma de cinco dígitos por usted siempre que haga falta.

Setuid4755

Un programa se ejecuta como el propietario del archivo, no como usted.

Linux-rwsr-xr-x root root /usr/bin/passwd

passwd se instala así, por eso se ejecuta con los derechos de root cuando cambia su contraseña.

En un directorio: sin significado documentado en Linux. En macOS y los BSD, los archivos nuevos toman el propietario del directorio si el sistema de archivos se montó con esa opción.

Setgid2775

En un directorio, los archivos nuevos toman el grupo del directorio en lugar del suyo.

Linuxdrwxrwsr-x you devs project/

Un directorio de proyecto compartido sigue siendo compartido: cada archivo nuevo pertenece al equipo.

En macOS y los BSD, un archivo nuevo siempre toma el grupo de su directorio, con este bit o sin él.

Sticky1777

En un directorio, solo el propietario del archivo, el propietario del directorio o root pueden borrar o renombrar un archivo.

macOSdrwxrwxrwt root wheel /private/tmp

Todos pueden escribir en /tmp, y nadie puede borrar los archivos de otro.

En un archivo, macOS y los BSD ignoran el bit sticky.

La trampa de GNU: chmod 755 en un directorio deja activado su bit setgid.

$chmod 755 project → drwxr-sr-xBórrelo con cinco dígitos o con letras:$chmod 00755 project → drwxr-xr-x$chmod g-s project → drwxr-xr-x

umask: qué reciben los archivos nuevos

Un archivo nuevo parte de 666 y un directorio nuevo de 777, y se desactiva cada bit activado en el umask. El umask habitual de 022 da 644 y 755.

El umask no es una resta, es una máscara: cada bit activado en el umask se desactiva en el modo que pidió el programa. Con umask 077, un archivo nuevo queda en 600 y un directorio nuevo en 700: privados por defecto. Con umask 002 se obtiene 664 y 775: el grupo también puede escribir.

Un umask nunca puede hacer ejecutable un archivo, porque el modo base de un archivo no tiene bits de ejecución desde el principio; solo los directorios parten de 777. Por eso un script que acaba de crear nunca se puede ejecutar hasta que escribe chmod +x. Cambie a la pestaña umask de arriba para ver qué produce cualquier umask y abra cualquiera de los resultados directamente en la calculadora.

Desactivado, bit por bitumask 022
Un archivo nuevo
Parte derw-rw-rw-666
umask····w··w·022
Reciberw-r--r--644
Un directorio nuevo
Parte derwxrwxrwx777
umask····w··w·022
Reciberwxr-xr-x755
Valores habituales de umask
umaskArchivo nuevoDirectorio nuevo
022644 rw-r--r--755 rwxr-xr-x
002664 rw-rw-r--775 rwxrwxr-x
027640 rw-r-----750 rwxr-x---
077600 rw-------700 rwx------

Ningún umask puede hacer ejecutable un archivo: un archivo nuevo parte sin ningún bit de ejecución que conservar.

Cómo cambiar una carpeta y todo lo que contiene

chmod -R 755 carpeta da a directorios y archivos el mismo modo, lo que hace ejecutable cada archivo. Dos comandos find dan a cada tipo el modo que le corresponde.

find carpeta -type d -exec chmod 755 {} + y find carpeta -type f -exec chmod 644 {} + recorren el árbol una vez cada uno y fijan por separado los directorios y los archivos. La calculadora escribe ambos con los modos que usted eligió, no con una pareja fija. El + del final agrupa los archivos en el menor número posible de ejecuciones de chmod, lo que importa en un árbol grande.

La otra forma segura es la X mayúscula: chmod -R u=rwX,go=rX carpeta agrega la ejecución solo a los directorios y a los archivos que ya se podían ejecutar. Y después de cualquier cambio recursivo, stat -c '%a %n' carpeta/* lee de vuelta todo lo que hay un nivel más abajo.

Una carpeta, cuatro formas
La carpetaAhora1234
site/755755644755755
index.html644755644644644
app.php644755644644644
deploy.sh755755644644755
img/755755644755755
logo.png644755644644644
  1. 1$chmod -R 755 siteTodos los archivos se pueden ejecutar
  2. 2$chmod -R 644 siteNo se puede entrar en ninguna carpeta
  3. 3$find site -type d -exec chmod 755 {} +$find site -type f -exec chmod 644 {} +Cada tipo recibe su propio modoUn script pierde también su x
  4. 4$chmod -R u=rwX,go=rX siteCada tipo recibe su propio modoUn archivo que ya se podía ejecutar conserva su x

¿Existe chmod en Windows?

No exactamente lo mismo. Windows usa listas de control de acceso, y icacls es el comando más parecido: icacls file /grant Users:(RX).

Los permisos de NTFS son una lista de entradas, cada una con un usuario o grupo y los derechos que tiene, así que no existe un único número de tres dígitos que calcular. La traducción más cercana es por clase: leer pasa a ser R, leer y ejecutar RX, escribir W, y ejecutar por sí solo pasa a ser el derecho específico X; un dígito que necesita dos derechos los enumera ambos: 7 es (RX,W). Ningún dígito equivale a Modificar (Modify, M), que además permite borrar, ni a Control total (Full control, F), que además permite cambiar permisos y tomar posesión. La calculadora muestra esa correspondencia junto a su modo, y es la más aproximada, no un equivalente.

Dentro del Subsistema de Windows para Linux (WSL), chmod funciona correctamente en el sistema de archivos de Linux. En una unidad de Windows montada en /mnt/c, solo funciona cuando esa unidad se monta con la opción metadata. Sin ella, el modo se deduce de sus derechos de Windows, igual para el propietario, el grupo y los demás, y chmod casi no puede hacer más que fijar el atributo de solo lectura: por eso una clave guardada en el lado de Windows puede aparecer como demasiado abierta, y chmod 600 no lo arreglará ahí.

Cada dígito de chmod y su derecho de icacls más cercanoicacls
DígitoLetrasDerecho más cercano
7rwx(RX,W)Lectura, escritura y ejecución
6rw-(R,W)Lectura y escritura
5r-x(RX)Lectura y ejecución
4r--(R)Lectura
3-wx(W,X)Escritura y ejecución
2-w-(W)Escritura
1--x(X)Ejecución
0---—Sin acceso

La correspondencia más aproximada, no un equivalente: Windows mantiene una lista de entradas, cada una con quién recibe qué derechos. Ningún dígito equivale a Modificar (Modify, M), que además permite borrar, ni a Control total (Full control, F), que además permite cambiar permisos (WDAC) y tomar posesión (WO). En ambos sistemas, el propietario siempre puede cambiar los permisos de un archivo.

En WSL
  • /homeEn el sistema de archivos de Linux: chmod funciona como en cualquier Linux.
  • /mnt/cEn /mnt/c sin la opción metadata: los modos salen de los derechos de Windows, y chmod casi no cambia nada.
  • /mnt/c · metadataCon metadata: chmod funciona, pero nunca más allá de lo que Windows le permite.

Cómo comprobar los permisos de un archivo

ls -l los muestra como letras y stat como un número. Pegue cualquiera de los dos en la calculadora y esta lee el modo.

ls -l file imprime -rw-r--r-- 1 you staff 4096 25 Oct 09:26 file, y la calculadora acepta la línea completa: no tiene que sacar el modo de ella. stat -c '%a %n' file imprime 644 file en Linux; en macOS lo mismo es stat -f '%Lp %N' file. Para todo un directorio a la vez, GNU find . -maxdepth 1 -printf '%m %p\n' lista cada modo como un número (el find de macOS no tiene -printf).

Un + al final de la cadena de permisos significa que hay más que los nueve bits: en Linux es una ACL POSIX, que muestra getfacl, y esas entradas adicionales no están en el modo. En macOS, una @ significa atributos extendidos y un + significa información de seguridad ampliada. Con el ls de GNU, un punto (.) significa un contexto de seguridad, como el de SELinux. La calculadora acepta los tres marcadores y le avisa de que el modo es solo una parte de la historia.

Una línea de ls -l, campo por campols -l notes.txt
-Tiporw-r--r--Permisos+Marcador1EnlacesyouPropietariostaffGrupo4096Tamaño25 Oct 09:26Modificadonotes.txtNombre
El modo como número
  • Linux$stat -c '%a %n' notes.txt644 notes.txt
  • macOS$stat -f '%Lp %N' notes.txt644 notes.txt
El carácter después del modo
  • -rw-r--r--+Linux: una ACL POSIX (getfacl la muestra). macOS: información de seguridad ampliada, como una ACL.
  • -rw-r--r--@macOS: atributos extendidos.
  • -rw-r--r--.ls de GNU: un contexto de seguridad, como el de SELinux, y nada más.
  • -rw-r--r-- Nada más: los nueve bits son toda la historia.

Calculadora de permisos chmod: preguntas y respuestas

¿Qué significa chmod 755?

Da al propietario lectura, escritura y ejecución, y a los demás lectura y ejecución. Escrito con letras es rwxr-xr-x. Los dígitos son sumas: 7 es 4 + 2 + 1 y 5 es 4 + 1. Úselo para los directorios, que necesitan el bit de ejecución para que alguien pueda entrar en ellos, y para scripts y programas. Nunca para un archivo que deba seguir siendo privado.

¿Cuál es la diferencia entre chmod 644 y 755?

Un bit por clase: el bit de ejecución. 644 es rw-r--r--, adecuado para documentos, imágenes, configuración y código fuente. 755 es rwxr-xr-x, adecuado para directorios y para todo lo que deba ejecutarse. Dar 755 a los archivos hace ejecutable a cada uno de ellos, por eso un chmod -R 755 recursivo sobre un sitio web es un error; fije por separado los directorios y los archivos.

¿Qué hace chmod 777 y es seguro?

Permite que cualquier cuenta de la máquina lea, modifique y ejecute el archivo. Casi nunca es necesario y es un riesgo real en un servidor compartido o expuesto a internet: cualquier cosa que pueda escribir un script que ejecuta el servidor puede tomar el control del servidor. La documentación de WordPress pide 755 o 750 y 644 o 640, y dice que ningún directorio debe tener 777. Cuando una aplicación no puede escribir en algún sitio, cambie el propietario o el grupo, no el modo.

¿Qué hace chmod +x?

Agrega el bit de ejecución para que se pueda ejecutar un archivo. Tenga en cuenta que +x sin clase no es exactamente a+x: una cláusula sin clase deja como están los bits de su umask, así que con el umask habitual de 022 el propietario, el grupo y los demás obtienen la ejecución, mientras que un umask más estricto, como 077, se la da solo al propietario. Escriba chmod a+x o chmod u+x cuando quiera estar seguro de cuál.

¿Qué significa chmod 600 y por qué lo exige SSH?

600 es rw-------: solo el propietario puede leer o modificar el archivo. OpenSSH rechaza una clave privada que pueda leer cualquier otra cuenta, con el mensaje Permissions 0644 for '<path>' are too open. La comprobación es estricta: si usted es el propietario del archivo y hay activado algún bit del grupo o de los demás, la clave se rechaza, así que 640 también falla. Use chmod 600 en la clave y chmod 700 en ~/.ssh.

¿Qué significa el cuarto dígito de chmod?

Lleva los tres bits especiales: setuid 4, setgid 2 y sticky 1. chmod 2775 carpeta activa setgid para que los archivos nuevos de su interior tomen el grupo de la carpeta. chmod 1777 carpeta activa el bit sticky para que nadie pueda borrar los archivos de otros, que es lo que usa /tmp. El dígito se omite cuando no hay ninguno activado.

¿Por qué chmod 755 no quitó el bit setgid de mi carpeta?

Porque el chmod de GNU conserva setuid y setgid en un directorio siempre que el modo numérico tenga menos de cinco dígitos, 0755 incluido. Es deliberado y conforme a la norma: POSIX solo exige que la forma octal borre esos bits en un archivo normal. Use la forma simbólica chmod g-s carpeta o escriba los ceros iniciales como chmod 00755 carpeta. Esta calculadora escribe automáticamente la forma de cinco dígitos cuando su cambio la necesita.

¿Cuál es la diferencia entre chmod y chown?

chmod define qué pueden hacer el propietario, el grupo y los demás. chown define quiénes son en realidad el propietario y el grupo. Responden a dos mitades de la misma pregunta, y un «permiso denegado» en un servidor web suele ser un problema de propiedad y no de modo: los archivos pertenecen al usuario equivocado, y ningún modo por debajo de 777 lo disimula.

¿Puedo pegar una línea de ls -l en esta calculadora?

Sí, la línea completa y no solo el modo. -rw-r--r-- 1 you staff 4096 25 Oct 09:26 notes.txt se lee como el modo 644 en un archivo, y drwxrwsr-x como 2775 en un directorio. El marcador de ACL +, el punto del contexto de seguridad y la @ de macOS se entienden todos. También puede pegar una expresión con operadores como u+x o go-w y ver qué bits cambia.

¿Qué significa el + o la @ después de los permisos?

Indican que los nueve bits no son toda la historia. En Linux, un + significa que el archivo tiene una ACL POSIX con entradas además de propietario, grupo y los demás: getfacl las muestra y no forman parte del modo. Con el ls de GNU, un punto significa un contexto de seguridad, como el de SELinux. En macOS, @ significa atributos extendidos y + significa información de seguridad ampliada. Si los permisos se comportan de forma extraña a pesar de un modo razonable, mire ahí.

¿Hay un equivalente de chmod en Windows?

Windows usa listas de control de acceso en lugar de un modo, así que no hay un equivalente exacto. icacls file /grant Users:(RX) es el comando más parecido, y la calculadora muestra los derechos más cercanos para su modo. Dentro de WSL, chmod funciona con normalidad en el sistema de archivos de Linux, pero en una unidad de Windows bajo /mnt/c casi no tiene efecto a menos que esa unidad se haya montado con la opción metadata.

¿Qué me da umask 022?

644 para un archivo nuevo y 755 para un directorio nuevo. Un archivo nuevo parte de 666 y un directorio de 777, y se desactiva cada bit del umask. Como un archivo nunca parte con un bit de ejecución, ningún umask puede hacerlo ejecutable: eso es siempre un chmod +x posterior. Use la pestaña umask de arriba para probar cualquier valor y abrir cualquiera de los resultados en la calculadora.

¿Le falta algo?Sugiera una función o una herramienta nueva