Quiero habilitar el intercambio de archivos entre servidores y clientes, ambos linux. No quiero confiar en la confianza de la máquina como en NFSv4 porque los usuarios del cliente tendrán privilegios de root. ¿Cuáles son mis opciones además de SMB (SAMBA)? ¿OpenAFS admite autenticación y acceso a nivel de usuario? El uso de WebDAV / ftp / sshfs montado parece una tontería para LAN.
8
Respuestas:
No estoy seguro de entender completamente:
Si quiere decir que los usuarios del cliente tendrán privilegios de root en el cliente y no desea que tengan root en el host, simplemente no use la opción "no_root_squash". También puede hacer cosas como deshabilitar setuid para ayudar a reducir el riesgo para el cliente del servidor también.
También tiene la opción de usar kerberos con NFSv4, consulte este enlace .
En otras palabras, NFSv4 puede brindarle la seguridad que necesita mientras es un poco más ... (¿escalable?) ... el uso de sshfs en todas partes. Puede que todavía no sea lo que quieres, pero no me rendiría demasiado pronto.
fuente
Con Kerberos, solo el servidor kdc otorga tokens de autenticación. Una máquina cliente por sí sola solo puede autenticarse como un host (y eso es si le da la tabla de claves a un principal nfs / client-hostname @ REALM principal), y eso solo le da derecho a hablar con el servidor nfs. Son los usuarios los que tienen la capacidad de autenticarse, y el servidor nfs solo los autoriza a acceder a sus propios archivos. Con sec = krb5p, el servidor también evita la indagación y la alteración.
Ser root no dará a sus usuarios privilegios inapropiados. La única forma en que tendrían acceso a más archivos es pirateando las máquinas de los demás, pirateando el servidor nfs o el kdc. NFSv4 con Kerberos se adapta bien a sus requisitos de seguridad.
Aquí hay más sobre el modelo de seguridad:
Si está buscando una implementación, aquí hay algunos tutoriales centrados en Debian / Ubuntu. Elegí configuraciones simples sin LDAP. Estas distribuciones tienen una configuración basada en debconf que te ayuda a llegar.
Mis adiciones: no necesita especificar un enctype des-cbc-crc, pero necesita allow_weak_crypto en krb5.conf para que el protocolo de comunicación pueda usar des-cbc-crc para el cifrado de flujo. Esto será innecesario en los núcleos 2.6.35.
Si está buscando algo similar a un dispositivo, hay FreeIPA .
fuente
sshfs es el camino a seguir. En el cliente:
Permisos iguales a ssh ... ¡porque estás usando ssh! Lo bueno es que no tiene que tocar nada en el servidor, suponiendo que sshd esté instalado y funcionando correctamente. Puede que no tenga el rendimiento como las otras sugerencias, pero es muy simple.
fuente
samba realmente suena como tu mejor apuesta. Samba tiene extensiones de Unix, por lo que cuando se monta como cifs en Linux, debe mostrar los permisos de Unix adecuados y todo eso. Creo que esa será la mejor opción para sus limitaciones. si eso no funciona, sshfs podría usarse en un apuro, pero no tendrá un rendimiento o integración tan buena en el sistema operativo como samba.
fuente
Sí, parece que OpenAFS satisfaría sus requisitos aquí, pero también Kerberized NFSv4. En ambos entornos, no necesita "confiar" en los clientes; El control de acceso es impuesto por los servidores. Las versiones anteriores de NFS requerían que efectivamente "confiara" en los clientes, pero Kerberized NFSv4 no. OpenAFS nunca ha requerido clientes "confiables", y también se basa en Kerberos para la autenticación y la seguridad.
fuente