Compartir carpetas sin contraseña en Debian

Samba es la aplicación o servicio que se encarga de que podamos compartir carpetas en red. Normalmente viene instalado en la versiones de escritorio, pero en los servidores no es así. Y para que queremos instalarlo? Bueno, quizá queramos aprovechar el hecho de tener un servidor dedicado en casa (o si tenemos uno contratado, usar Hamachi) para poder alojar archivos directamente sin necesidad de instalar un servidor FTP, o bien para que los usuarios (puede que nuestra familia o nosotros mismos) tengamos mas comodidad.
Actualmente las consolas como PS3 también nos dejan buscar carpetas compartidas en red, por lo que podríamos tener las películas alojadas en la carpeta compartida. Sea lo que sea, si necesitáis compartir carpetas en linux, aquí vamos a hacerlo paso a paso y sin interfaz gráfica (como en Driverlandia nos gusta).
Cabe decir que aunque este tutorial pone que es para debian, sirve para todos
los que están basados en él (Ubuntu, Mint…)

Instalando Samba en Linux

Pues lo primero es tirar de la instalacion via repositorios
apt-get install samba
Nos saldrá una ventana azul donde nos solicitara el nombre del grupo de trabajo. Le indicamos el que ya usemos en casa con los otros ordenadores o en caso de no usar ninguno anteriormente, le asignamos el que queramos. En mi caso le asignare REDCASA como nombre de grupo de trabajo.
 Configurando una carpeta compartida
Primero hemos de crear la carpeta o bien decidir cual vamos a compartir. En nuestro caso crearemos una que llamaremos public, para que todos los usuarios puedan leer y escribir información en ella. Procedemos a crearla (en el lugar donde mas os guste).
mkdir public
chmod 777 public/
Con chmod 777 le estamos diciendo que cualquiera tenga TODOS los permisos en esa carpeta para lo que hay actualmente (vease la carpeta). Mas adelante con el umask, le diremos que todo archivo que entre en esta carpeta, tenga permisos 777 automáticamente.

Ahora le vamos a decir a samba que comparta esta carpeta, por lo que vamos a editar el archivo de configuración de samba, donde le diremos que carpeta y con que permisos.
nano /etc/samba/smb.conf

En [global] podemos cambiarle el grupo de trabajo (si nos hemos equivocado, o se ha cambiado a otro).
workgroup = REDCASA

Bajamos a ## Authentication ## y vemos que nos dice # “security = user” is always a good idea. This will require a Unix account por lo que por defecto, necesitamos tener un usuario en Linux para que podamos acceder a esa carpeta compartida. Si queremos evitar que nos pida usuario para cualquier carpeta (incluso las publicas) debemos indicarle que por defecto los permisos son de compartir (luego podemos editar y configurar los permisos para otras carpetas, haciéndolos mas restrictivos).
security = share
Además de eliminar el # que hay delante, para descomentar la línea.
De esta forma le estamos diciendo a Samba que por defecto toda carpeta compartida puede ser vista por todos los usuarios que tengan acceso a la red y al grupo de trabajo.
Bajamos al final del archivo y creamos nuestra configuración de carpeta y escribimos la configuración de nuestra carpeta compartida publica
[comun]
path = /public/
read only = no
security = share
null password = yes
case sensitive = no
comment = Carpeta publica accesible desde Web
guest ok = yes
browseable = yes
umask = 000

Voy a proceder a explicarla configuración.
  • [comun] – Es el nombre con el que queremos que la carpeta compartida aparezca en la red, no tiene porque llamarse igual que la carpeta que hemos creado.
  • path – Ruta absoluta de la carpeta que compartimos.
  • comment – El comentario o descripción que asignaremos a esta carpeta compartida.
  • read only – Hacemos que los usuarios puedan escribir.
  • security – Le estamos diciendo que esta es publica y no necesita usuario y password (no es necesario si esta definido en el Authentification.
  • null password – Que no pida password para intentar acceder a ella.
  • case sensitive – Que no diferencie mayúsculas y minúsculas (los sistemas windows no lo hacen).
  • guest ok – Que puedan acceder invitados
  • browseable – Que nos aparezca en las carpetas compartidas de la red.
  • umask – Con 000, estamos diciendo que todo archivo que guardemos en ese directorio tenga permisos 777.

Guardamos el archivo, cerramos y reiniciamos el servicio de samba.
service samba restart
SAMBA_CARPETA_COMPARTIDA
Ahora cualquier ordenador que este en la red podrá acceder a la carpeta compartida, leer y escribir archivos en ella. Si accedemos desde un cliente linux, solo hace falta poner en el navegador de carpetas
smb://ipdelservidor

Si queremos mapear esta carpeta como una unidad de red en sistemas Windows
net use Z: \\ipdelserver\nombrecarpetacompartida
Y en Equipo (Mi PC) aparecerá una unidad de red que si entramos nos llevará directamente a la carpeta que hemos compartido en servidor Linux.
SAMBA_UNIDAD_RED

Fuente: http://www.driverlandia.com/instalar-samba-para-compartir-carpetas-en-linux-debian/