Estaba pensando en escribir otro artículo bien cargado de posibilidades y opciones para compartir carpetas en Linux por NFS, pero creo que muchos quieren otra cosa, así que ahí van, las configuraciones que usamos cuando tenemos que compartir rápidamente archivos entre máquinas Linux y estamos en una red segura.
Aclaración
Compartir carpetas/archivos es una cuestión de confianza y otras cosas más complejas. Estas son configuraciones básicas, las que uso cuando vamos a una "lanparty" (o como le digan en su región/país). Son inseguras para ser usadas en una red de producción, o sea no se atrevan a compartir información a nivel profesional/empresarial sin antes leer las páginas man de NFS y/o algún material específico sobre seguridad en NFS.
Instalar NFS
Primero lo primero, instalar NFS, para ello usamos el comando:
urpmi nfs-utils nfs-utils-clients portmap
De ese modo instalo todo lo que hace falta para poder compartir y acceder a carpetas compartidas en la red en máquinas Linux.
Compartiendo por NFS
En NFS las carpetas compartidas, los directorios, pueden estar montados localmente en cualquier parte del árbol raíz del sistema (/), y estar ubicados físicamente en otra máquina de la red.
Configurando la carpeta/s compartida
Vamos al directorio /etc y editamos el archivo exports para configurar qué carpeta/s quiero compartir:
#
/mnt *(ro)
/home/yaco/Documentos *(ro)
# "*" indica qué máquinas y/o usuarios van poder acceder a la carpeta compartida
# el asterisco quiere decir TODOS.
#
# el "(ro)" indica el tipo de acceso que van a tener los usuarios al directorio
# (ro) es read only, acceso de solo lectura
# (rw) es read write, acceso que permite leer y escribir en el directorio
# como pueden ver aquí comparto mi carpeta de dispositivos removibles
# esto podría ser útil para compartir algún dispositivo como una lectora DVD
# por ejemplo.
/opt/pub *(rw)
# este directorio es donde los invitados pueden copiarme archivos
Para activar los cambios y hacer disponibles las carpetas en la red:
service portmap restart
service nfs restart
Estos dos servicios deben ser iniciados/reiniciados en ese orden para que todo funcione bien.
El reinicio múltiple es un tanto redundante y forzado, pero a veces es necesario. El comando que realmente actualiza la lista de carpetas compartidas por NFS de forma "correcta" es:
exportfs -ra
El comando exportfs te permite trabajar con carpetas compartidas de modo individual, su tarea específica es administrar la lista de carpetas compartidas por NFS.
Montar directorios compartidos
El comando para ello es un simple montaje:
mount -t nfs 192.168.1.12:/opt/pub /mnt/nfs/1
El "-t nfs" es casi algo superfluo, sirve para especificarle a mount que es una carpeta compartida NFS lo que va a montar. Luego viene la dirección IP de la PC que tiene la carpeta compartida, después el directorio compartido y por último el directorio donde queremos montar en nuestra PC.
Errores muy, pero muy comunes: escribir la IP y el directorio sin los dos puntos, así "192.168.1.12/opt/pub"; el otro es escribir sin la barra después de los dos puntos, así: "192.168.1.12:opt/pub".
Y listo, ahora el directorio remoto ya es parte de nuestro árbol y podemos trabajar con él con cualquier programa estándar, leyendo y/o escribiendo, según como lo hayan compartido.
Extra: Buscar directorios compartidos
Para montar las carpetas que tiene compartidas una PC, primero necesitamos saber la dirección IP de la máquina o su nombre de host. Lo primero lo averiguamos ejecutando en esa PC el comando:
ifconfig
Deberías obtener una salida similar a esta:
----------
eth0 Link encap:Ethernet HWaddr 00:E0:7D:90:B7:23
inet addr:192.168.1.12 Bcast:192.168.1.255 Mask:255.255.255.0
.
.
. (continúa con más datos)
----------
Así obtienes la dirección IP de la PC (en negritas en el ejemplo).
El nombre de host lo averiguamos con el comando
hostname
Para ver qué directorios tiene compartidos, ejecutar sobre ella el comando:
showmount (así, sin argumentos)
El comando anterior muestra las carpetas disponibles al momento. Si el usuario/adm. de la PC modifica el /etc/exports, hacer un cat /etc/exports, solo mostrará las carpetas que pueden ser compartidas pero que sin un exportfs -ra, todavía no están disponibles.
Para buscar carpetas compartidas en PCs remotas, el comando es:
showmount host
Donde "host", es el nombre de la PC en la red (el de hostname), o su nro. IP.
Posibilidades de NFS:
El tener la carpeta remota como parte del árbol local crea posibilidades interesantes, como por ejemplo, tener ciertos directorios del árbol raíz (/), en una sola PC de la red y compartidos a varias (tener en cuenta aquí la velocidad general del hardware del servidor donde ubicamos esas carpetas). Por ejemplo un directorio /opt/Mandrake, donde ubiquemos todas las carpetas de los 3 CDs de la Mandrake (o más o menos, según la versión que tengan), y dejarla accesible para todos los Mandrakes de nuestra red.
Recomendaciones finales:
Ver las páginas man de export y exportfs.
Enlaces
(Gracias Bulma :-), de nuevo
Compartiendo archivos con NFS
Un tutorial similar a éste, pero con un poco más de detalles sobre seguridad y un par de comandos más. De lectura recomendada para ampliar, y para leer de nuevo las explicaciones pero con otro enfoque.
Servicios RPC: NIS y NFS
Una explicación extensiva de los servicios RPC, la base de NFS. Incluye explicaciones bastante completas de comandos y configuraciones a nivel servidor y seguridad sobre NFS.
Estaba pensando en escribir otro artículo supercargado de posibilidades y opciones para compartir carpetas en Linux, pero creo que muchos quieren otra cosa, así que ahí van, las configuraciones que usamos cuando tenemos que compartir rápidamente archivos en Linux y estamos en una red segura.
Aclaración
Compartir carpetas/archivos es una cuestión de confianza y otras cosas más complejas. Estas son configuraciones básicas, las que uso cuando vamos a una "lanparty" (o como le digan en su región/país). Son inseguras para ser usadas en una red de producción, o sea no se atrevan a compartir información a nivel profesional/empresarial sin antes leer un manual de samba, aunque sea un poco.
Instalar Samba
Primero lo primero, instalar samba, para ello usamos el comando:
urpmi samba-server samba-client
De ese modo instalo todo lo que hace falta para poder compartir y acceder a carpetas compartidas en la red, ya sea desde Windows o Linux.
Glosario mínimo:
share = carpeta compartida
Configurando la carpeta/s compartida para Samba (Windows)
Esta explicación te será de utilidad solo si tienes algún conocimiento previo de redes sobre Windows. Si no es así, y solo quieres compartir carpetas en Linux, igual lee que no es tan difícil y aún así, despues tienes NFS :-)
En principio tienes que averiguar el nombre de la red Windows (el Grupo de Trabajo, o el dominio NT). Esto no es indispensable para acceder desde Linux, pero nos servirá para facilitar el acceso desde Windows.
Vamos al directorio /etc/samba y editamos el archivo smb.conf:
En la entrada [global], la primera del archivo, colocamos el nombre de nuestra red/ grupo de trabajo, por ejemplo:
[global]
# 1. Server Naming Options:
# workgroup = NT-Domain-Name or Workgroup-Name
workgroup = MIREDWIN
Luego configuro qué carpeta/s quiero compartir, con una entrada como esta por ejemplo:
[disco_raiz]
path = /
public = yes
guest ok = yes
writable = no
# este es un claro ejemplo de entrada insegura, ya que los
# usuarios tendrán acceso a TODO el árbol del sistema
# piensen bien antes de incluir una entrada como esta, la coloqué para
# ejemplificar hasta donde es posible compartir
[Documentos]
path = /home/yaco/Documentos
comment = /home/yaco/Documentos
public = yes
guest ok = yes
writable = no # esta entrada puede ir como "yes" si quieren
# que los demás puedan escribir en la carpeta
# esta última entrada es más razonable y comparte solo un directorio
# es lo recomendable si queremos guardar cierta mínima privacidad y seguridad
# para nuestros datos
Para activar los cambios (haciendo disponibles los shares), un comando rápido:
service smb restart
Y listo, para acceder al share desde Windows, el método usual, desde Linux, se puede usar un programa como LinNeighborhood o desde konqueror escribir en barra de dirección "smb://dirección ip de la máquina" y así acceder a todos los shares de la máquina. Por ejemplo para ver tus propias carpetas compartidas: "smb://127.0.0.1" (o también el nombre de tu sistema).
Recomendación final: leer el archivo /etc/samba/smb.conf, ya que viene con largas y bastante sencillas explicaciones de cómo configurar shares.
Enlaces
(Gracias Bulma :-)
Primeros pasos para instalar Samba
Un tutorial corto pero con más detalles, basado en Debian, pero igualmente útil.
Configurar un servidor de Samba
"Vamos a configurar Samba paso a paso, conociendo de manera didáctica la mayor parte de la funcionalidad de este servidor. Al final del artículo, deberiamos ser capaces de pegarle una patada a nuestros NT's ... o almenos saber convivir con ellos de manera elegante..."
Recopilación de informacion sobre Samba
Recopilación de sitios, libros, tutoriales, howtos, especificaciones, etc.
Antes de nada deseo agradecer al usuario Katnatek su
inestimable colaboración en la realización de este articulo.
Llevo ya unos meses usando Mandriva, y cada día me resulta mas fácil configurar las cosas. Gracias a vuestra ayuda ,esto de Linux es muy fácil.
Como mi compañero de piso usa windows Vista se me ocurrió si podríamos compartir carpetas. Como una carpeta compartida en red.
Entonces leí algún manual sobre Samba y me he decidido a escribir esto por si puede ser util a alguien.
Se le llama Samba porque utiliza el protocolo "Server Message Block (SMB)", llamado también "Session Message Block" o "NetBIOS" o "LanManager" utilizado por Windows y Mac OS.
Como se instala samba
Creando una carpeta compartida en mandriva
Revisando el firewall
Creando una partición en windows y accediendo a ella desde mandriva
Es muy sencillo, necesitaremos los siguientes paquetes
Samba-client Samba -common Samba-server
La verdad que estos paquetes se te instalaran solos cuando accedes a los menús de configuración de samba que se encuentran en el MCC.
Pulsamos la opcion compartir recursos con sistemas windows que se encuentra en el MCC en la pestaña Recursos compartidos de red.
Recomendaciones: si es la primera vez que ejecutas este asistente debes tener a la mano el DVD de instalación ó tener bien configurados los repositorios
Pasos a seguir:


















Para conectarnos desde windows a ese recurso compartido tenemos que irnos al explorer y marcar Opciones -> herramientas -> conectarse a una unidad de red
En la pantalla que nos muestre nos conectamos al servidor y al recurso compartido ,podemos usar el usuario con el que solemos abrir sesión en mandriva.
Si preferis también podeis dirijiros a "Mis sitios de red"

Y podemos ver nuestras carpetas compartidas, a las cuales podemos acceder, dando doble click sobre la que interese

Y desde luego también se puede acceder desde alguna aplicación incluida en Mandriva (konqueror en este caso)

Sin asistente gráfico
Las opciones disponibles para un servidor samba se encuentran en el directorio /etc/samba y el archivo smb.conf:
En la entrada [global], la primera del archivo, colocamos el nombre de nuestra red/ grupo de trabajo, por ejemplo:
[global] # 1. Server Naming Options: # workgroup = NT-Domain-Name or Workgroup-Name workgroup = WORKGROUP
Luego configuro qué carpeta/s quiero compartir, con una entrada como esta por ejemplo:
[disco_raiz] path = /mnt/windows public = yes guest ok = yes writable = no
[Documentos] path = /home/pitalink/Documentos comment = /home/pitalink/Documentos public = yes guest ok = yes writable =yes
Para obtener un usuario para samba que no sea vuestro usuario, con el que soleis iniciar sesión,podeis ejecutar
smbpasswd -a usuario
Añadira el usuario y seguidamente nos pide la contraseña del mismo.
Una cosa mas, deberíamos desactivar shorewall para que no nos de problemas. Sabeis que lo podeis parar desde el MCC en la pestaña sistema y en habilitar los servicios del sistema.Desde allí lo podeis arrancar y parar.
Si no quereis deshaceros de shorewall os recomiendo leais esta guía que explica como dar paso a samba en shorewall
http://www.shorewall.net/2.0/samba.htm
O bien usar una interfaz gráfica para configurar shorewall con la que contamos en mandriva. Abris una consola y ejecutais Drakfirewall.
[root@localhost ~]# drakfirewall

Creamos un recurso compartido en Windows, puedes hacerlo pulsando en cualquier carpeta de tu unidad "compartir".

Una vez este ya creada la carpeta compartida en windows para acceder a ella desde linux, es tan sencillo como abrir una consola y escribir :
mount -d smbfs -o username=pitalink,password=mipassword //jesus/imagenes /mnt/imagenes
donde :
username=mi usuario de windows
password=mi password
//jesus/imagenes=nombre de maquina recurso compartido.
/mnt/imagenes=la ruta donde lo vamos a montar.
Para que esto sea definitivo,lo podemos añadir al fichero /etc/fstab
Añadiendo una linea tal que asi:
//jesus/Imgenes /mnt/Imagenes smbfs user,username=pitalink,password=mipassword 00
Ya sabeis por lo descrito encima lo que significa cada opcion. Si la carpete /mnt/Imagenes no existe debemos crearla
mkdir /mnt/Imagenes
Esto también se puede hacer gráficamente desde el MCC :
Vamos a la pestaña recursos compartidos de red / recursos compartidos :

Le damos a buscar servidores, si esta bien configurado en windows deberíamos de ver la maquina :

Vemos que aparece mi maquina windows

La seleccionamos nos pedira usuario y password de la maquina windows.

Le damos el punto de montaje (el que querais,preferiblemnte crearlo en la carpeta /mnt)
Y ademas selecionamos la opcion user en Avanzado.

Le damos a Hecho y ya lo tenemos listo ,si nos pide guardar los cambios en /etc/fstab le decimos que si.
Esto mismo lo podemos hacer mediante smb4k un programa muy util de kde.
Para insalarlo
urpmi smb4k
Una vez ejecutado el programa le damos a preferencias-configurar smb4k

Selecionamos samba y en la pestaña mount seleccionamos sistema de archivos smbfs

una vez ya esta configurado simplemente desplegamos el dominio y seleccionamosla maquina a donde tenemos el recurso compartido (la maquina windows.

Le pasamos usuario y password de la maquina windows.

ahora podremos montar el nuevo recurso comapartido. (clikeando en el nos lo abrira con konqueror y podremos navegar)

Mas información sobre samba en mandriva:
http://club.mandriva.com/xwiki/bin/view/KB/RecetaParaServidoresSAMBANFSY...
http://xpiderblog.blogspot.com/2007/04/samba-como-comparte-xpiderman-sus...
http://xpiderblog.blogspot.com/2007/05/samba-administrando-en-modo-grfic...
CONTINUARA ....................AUN FALTA LA SECCION IMPRESORAS
Recientemente he adquirido un portatil, que, como la mayoria, trae preinstalado el windows vista, en este es la version premium.
La maquina es si es un portatil LG que, tras comprobar las caracteristicas tecnicas y su precio me parecio un mas que razonable intercambio economico, visto lo que hay en el mercado.
aqui dejo un hilo con las caracteristicas y opiniones del portatil
De momento lo voy a dejar tal como esta, ya que principalmente lo van a usar mis hijas, pero me surgio la necesidad de la impresora principalmente, y el tema de compartir las cuentas de usuario que mis retoños tienen en la maquina de mandriva linux ( musica, fotos, trabajos de escuela, etc etc).
Samba era mi respuesta, asi que me puse manos a la obra, si bien, mi sorpresa fue que al habilitar en W$ la red, no se enteraba para nada de la existencia del servidor linux.
Curiosamente, al iniciar samba, perfectamente se ve el portatil pudiendo montar sin ningun problema el directorio publico habilitado en él.
Cual es el problema ?
Al parecer windows vista, utiliza el protocolo NTLMv2, éste y solo este, lo que crea un problema con samba ya que, de momento, esta version de NTLM aun no esta soportado.
En el bussines y el ultimate existe una herramientas llamada secpol.msc que nos permitira cambiar este comportamiento para habilitar la comunicacion con samba, pero en premium no esta, asi que, la solucion, es modificar la clave de registro de W$
Eejecutamos regedit y buscamos la siguiente cadena:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\LMCompatibilityLevel
El valor de la misma en W$ es 3, asi que, lo cambiamos a 1, con ello habilitamos el uso de protocolos anteriores a la v2 de NTLM y asi cualquier peticion de autenticacion sea permtida.
Ahora nos queda configurar el smb.conf, habilitar a los usuarios de samba y probar que funciona.
Añadimos a los usuarios de samba:
# smbpasswd -a usuario ( añadira el usuario y seguidamente nos pide la contraseña del mismo)
Editamos el smb.conf para habilitar las entradas de cada usuario a su home.
Aqui os dejo una pequeña muestra de mi smb.conf.
[global] # deben coincidir en ambas maquinas workgroup = WORKGROUP netbios name = servidor_linux printcap name = cups load printers = yes printing = cups log file = /var/log/samba/%m.log # importante para establecer las maquinas que queramos permitir hosts allow = 192.168.1.XX encrypt passwords = yes smb passwd file = /etc/samba/smbpasswd dns proxy = no [usuario1] comment = Directorio de usuario1 path = /home/usuario1 valid users = usuario1 public = yes writable = yes browseable = yes [ usuario2] iden anterior.
Omito las partes dedicadas al las impresoras ya que estas vienen por defecto en el smb.conf de mandriva.
La instalacion de la impresora, en mi caso una HPDeskjet 5500 no me creo ningún inconveniente al hacerlo desde el sistema de instalación del W$ Vista, al decirle que buscara una impresora de red la localizo sin problemas, instalándose los drivers necesarios para la misma.
Aqui os dejo unas capturas del W$.

Quickpost this image to Myspace, Digg, Facebook, and others!
Quickpost this image to Myspace, Digg, Facebook, and others!
Saludos de morghot aka jmcamacho.
Mini-como creado por mis alumnos en el curso de SSOO y Redes Locales impartido en la Federación de Empresarios del Metal de la Región de Murcia.
(Espero que los bofh's del lugar lo revisen y lo publiquen en AdministracionDrake)
1 - NFS (Network File System)
Se trata de un servicio muy extendido en UNIX /LINUX que permite compartir por red sistemas de ficheros; montándolos en máquinas remotas y utilizándolos de forma transparente como si fuesen parte del sistema local.
2 - CONFIGURACION DEL SERVICIO
Los siguientes paquetes son imprescindibles: nfs-utils, portmap en caso de no estar instalados, basta con poner en la línea de comandos urmpi nfs-utils portmap
Desde la interfaz gráfica vía Centro de Control de ManDraKe / administración de software, instalación de software
Mediante el sistema de archivos NFS, se procede a montar bajo la carpeta principal del usuario, otra carpeta compartida de otro usuario. Permite compartir por red sistemas de ficheros, montándolos en máquinas remotas o clientes para su acceso siempre como si estuvieran en la maquina local.
Mediante la instrucción:
ps aux | grep -i portmap -> vemos si esta funcionando
rpcinfo -p : Todos los demonios activos en el RPC. Comprobamos si el NFS es uno.
Ahora pasamos a configurar el servidor NFS, para ello editaremos /etc/exports
(ej. vim /etc/exports)
En tu editor pondremos lo siguiente:
Podemos compartir espacios hacia: máquinas, usuarios o grupos de ellos,
ej. (hacia nuestra red local)
/home/usuario 10.0.103.0/255.255.0.0 (ro, syn , root_squash)
Permisos
ro/rw – read only, read write
sync- Si es síncrono (teniendo que respetar el NFS, y su jerarquía y asignación de permisos para los usuarios.)
no_root_squash – Siempre que seas root (0/0) pasas a ser un invitado (usuario nobody)
root_squash – Cuando te conectas así, o montas un directorio por NTFS y eres 'root' sigues siéndolo en ese directorio. Te conectas como un anónimo en otras maquinas.
all_squash – Se aplica la regla y pasas a ser 'nobody'
service nfs restart (reinicia el servidor NFS, y vuelve a leer el archivo de
configuración; sin reiniciar el demonio)
exportfs –ra (relee la configuración sin detener el demonio)
exportfs (muestra los directorios compartidos)
Para saber más man exports
Para montar una partición NFS
mkdir /mnt/NFS -> creamos un directorio,
y montamos: ---> mount 10.0.103.X : /home/compartido /mnt/NFS
Para visualizar los clientes conectados:
[root@rincewind etc]# cat /var/lib/nfs/rmtab
bersuit.vera
Out of Memory
Degraciadamente todavía,en entornos corporativos existen servidores Novell ( el virus (TM)) para despliegue de aplicaciones y unidades compartidas.Que no me distribuyan aplicaciones no es un problema , incluso es un beneficio, pero sí necesito acceder a documentos en las unidades compartidas para el trabajo diario. Así que esto es lo que tuve que hacer para montar la unidad compartida "T:" en mi mandriva.
PD: Este truco se ha conseguido vía ensayo y error si alguién quiere "corregir/aportar/apuntar" algo será bienvenido..
Saludos
1 - Requerimientos:
[root@bersuit ~]# urpmq -i ncpfs
Name : ncpfs
Version : 2.2.6
Release : 1mdk
Group : Networking/Other
Size : 1981213 Architecture: i586
Source RPM : ncpfs-2.2.6-1mdk.src.rpm Build Host: n5.mandrakesoft.com
Packager : Oden Eriksson
URL : ftp://platan.vc.cvut.cz/pub/linux/ncpfs/
Summary : Utilities for the ncpfs filesystem, a NetWare client for Linux
Description :
Ncpfs is a filesystem which understands the Novell NetWare(TM)
NCP protocol. Functionally, NCP is used for NetWare the way NFS
is used in the TCP/IP world. For a Linux system to mount a NetWare
filesystem, it needs a special mount program. The ncpfs package
contains such a mount program plus other tools for configuring and
using the ncpfs filesystem.
[root@bersuit ~]# urpmq -i libncpfs2.3
Name : libncpfs2.3
Version : 2.2.6
Release : 1mdk
Group : System/Libraries
Size : 359806 Architecture: i586 Source RPM : ncpfs-2.2.6-1mdk.src.rpm Build Host: n5.mandrakesoft.com
Packager : Oden Eriksson
URL : ftp://platan.vc.cvut.cz/pub/linux/ncpfs/
Summary : Library associated with ncpfs
Description :
This library is mandatory for ncpfs and ipxutils to run.
[root@bersuit ~]# urpmq -i ipxutils
Name : ipxutils
Version : 2.2.6
Release : 1mdk
Group : System/Configuration/Networking
Size : 63488 Architecture: i586
Source RPM : ncpfs-2.2.6-1mdk.src.rpm Build Host: n5.mandrakesoft.com
Packager : Oden Eriksson
URL : ftp://platan.vc.cvut.cz/pub/linux/ncpfs/
Summary : Tools for configuring and debugging IPX interfaces and networks
Description :
The ipxutils package includes utilities (ipx_configure, ipx_internal_net,
ipx_interface, ipx_route) necessary for configuring and debugging IPX
interfaces and networks under Linux. IPX is the low-level protocol used
by Novell's NetWare file server system to transfer data.
Entrada en el fichero /etc/fstab
SRVNOVELL/USUARIONOVELL.CONTEXTO /puntodemontaje/T ncpfs defaults,mode=644,uid=usuariounix,gid=grupounix,owner=grupounix,volume=VOLUMENNOVELL/,passwd=pwdnovell,server=servnovell,ipserver=fqdn.serv.novell. 0 0
Bersuit.vera
Out Of Memory