Soluciones rápidas para "ls: Operación no permitida" al hacer SSH en un Mac:
1. Conceda Acceso Completo al Disco a Terminal, sshd-keygen-wrapper y sshd
Menú de Apple > Configuración del Sistema > Privacidad y Seguridad > Acceso Completo al Disco, luego habilite Acceso Completo para los tres programas.
2. Cambie a SSH en otro Mac como root
Ejecute el comando ls con sudo
3. Vuelva a habilitar 'Inicio de Sesión Remoto' en Compartir
Configuración del Sistema > General > Compartir, desactive e active el Inicio de Sesión Remoto.
4. Desactive SIP
Ingrese a la Recuperación de macOS > Utilidades > Terminal y escriba csrutil disable
Después de haber utilizado SSH (Shell Seguro) para conectarse de forma segura a otro Mac y ejecutar el comando ls para listar el contenido de un directorio determinado, solo recibe el error "ls: Operación no permitida" en Terminal.
Como indica, este error muestra que no tiene permiso para acceder a la carpeta de destino. Esto puede deberse a errores en la conexión SSH, restricciones de permisos de usuario o limitaciones del sistema.
Para resolver el error "Operación no permitida" con el comando ls después de hacer SSH en otro macOS, puede seguir los trucos que enumeramos a continuación como solución de problemas.
Conceder Acceso Completo al Disco a Terminal, sshd-keygen-wrapper y sshd
Cuando encuentre un error "Operación no permitida" mientras ejecuta ls o accede a ciertos directorios mediante SSH en macOS, generalmente se debe a la protección de TCC (Transparencia, Consentimiento y Control) de macOS.
Conceder Acceso Completo al Disco a Terminal, sshd-keygen-wrapper y sshd les permite evitar esas restricciones de TCC, permitiendo el acceso a áreas protegidas del Mac conectado por SSH.
- Haga clic en el menú de Apple > Configuración del Sistema > Privacidad y Seguridad > Acceso Completo al Disco.
- Habilite Terminal y sshd-keygen-wrapper.
- Haga clic en el botón añadir (+).
- En la ventana emergente, seleccione macOS (o Macintosh HD) en ubicaciones y presione Comando - Shift - . (la tecla de punto) para mostrar la carpeta usr oculta.
- Encuentre y seleccione sshd en la carpeta sbin y haga clic en Abrir para añadirlo a la lista de Acceso Completo al Disco.
Nota: La ruta de la carpeta usr es /usr/sbin/sshd. - Habilite SSHD allí.
Después de dar Acceso completo al disco a Terminal, sshd-keygen-wrapper y sshd, comprueba si se produce el error de operación no permitida al ejecutar el comando ls o no.
Comparte este truco para solucionar el error "ls: Operación no permitida" con otros.
Cambiar a SSH en otro Mac como root
Con la protección de seguridad mejorada de Mac, es posible que tu usuario normal no tenga permisos completos incluso con acceso SSH. Por lo tanto, cuando uses el comando ls para ver los archivos de una carpeta, cambia a ejecutar el comando sudo ls /directorio-destino.
Si el problema persiste, prueba el siguiente método.
Volver a habilitar 'Inicio de Sesión Remoto' en Compartir
La función de Inicio de Sesión Remoto en la configuración de Compartir permite que el servidor SSH en tu Mac establezca una conexión segura con otro Mac.
Cuando ocurra el error "ls: Operación no permitida" después de SSH en macOS, volver a habilitar "Inicio de Sesión Remoto" en Compartir puede ser la solución, ya que reiniciará el servidor SSH (sshd) y eliminará los posibles errores en el servidor SSH.
- Ve al menú de Apple > Preferencias del Sistema > General > Compartir.
- Desplázate hacia abajo para encontrar Inicio de Sesión Remoto.
- Desactiva el Inicio de Sesión Remoto y vuélvelo a activar después de un momento.
Desactivar SIP
Si ves "ls: Operación no permitida" al hacer SSH en un Mac M1 u otro Mac, considera desactivar SIP. En los Mac modernos, la protección de seguridad está muy mejorada. SIP no se puede pasar por alto de forma remota. Por lo tanto, intenta desactivar temporalmente SIP para poder usar ls y verificar el contenido del directorio después de hacer SSH en un Mac.
- Inicia tu Mac en Modo de Recuperación.
En un Mac basado en Intel, reinicia el dispositivo mientras mantienes pulsado Comando - Shift - R hasta que aparezca el logotipo de Apple o el globo que gira.
En un Mac con Apple Silicon, apaga el Mac, presiona el botón de encendido (Touch ID) hasta que aparezcan las opciones de inicio, selecciona Opciones > Continuar. - Haz clic en Utilidades en la barra de menú superior > Terminal.
- Introduce el siguiente comando. csrutil disable
- Sal de Terminal y reinicia tu Mac.
Después de hacer SSH en otro Mac, recuerda activar SIP con el comando - csrutil enable en el Modo de Recuperación de macOS.
Si esta publicación te ayuda a resolver "ls: Operación no permitida" al hacer SSH en macOS, compártela con más personas.