freebsd, unix, openbsd, servidores, bsd, redes, linux, mikrotik, synology, zfs,
Páginas
viernes, 13 de junio de 2014
FreeBSD cambiar disco duro
Cambiar disco duro conservando la configuración actual del sistema FreeBSD.
tar es una aplicacion creada alrededor de 1975 que trabaja en cooperación con el sistema de ficheros. En FreeBSD el comando por defecto es bsdtar.
En este caso se trata de duplicar un sistema FreeBSD instalado en un disco duro de 320 GB a otro un disco duro de 120 GB. El espacio utilzado en el disco duro actual (320 GB) es de 30 GB, por tanto un disco duro de 120 GB dispone de espacio suficiente.
Los pasos a seguir son:
Realizamos una instalación mínima en el disco duro de 120 GB que a partir de ahora llamaremos ada1. Igual que el disco duro de 320 GB que llamaremos ada0 el particionado utilizado desde el instalador es auto. Este es el resultado:
Disco ada0:
/dev/ada0p1 boot
/dev/ada0p2 raiz
/dev/ada0p3 swap
Disco ada1:
Disco ada0:
/dev/ada1p1 boot
/dev/ada1p2 raiz
/dev/ada1p3 swap
Comprobar que la instalación mínima (ada1) arranca.
El disco duro ada0 conectarlo como master
El disco duro ada1 conectar como esclavo.
Arrancar el sistema desde el disco duro ada0 (desde la bios puede cambiarse la secuencia de arranque) en modo single user pulsando la barra espaciadora en la cuenta atrás de 10 segundos y pulsar 6 (single user). Presionar Enter para la shell por defecto.
Desde el símbolo del sistema:
# fsck -p
# mount -u /
# mount -a
# swapon -a
# adjkerntz -i
Asegúrese que los archivos de dispositivos del disco duro esclavo (ada1) han sido creados:
# ls /dev/ada1*
/dev/ada1p1
/dev/ada1p2
/dev/ada1p3
Crear un sistema de ficheros nuevo en la partición raiz el disco nuevo ada1 (120 GB). Dejamos sin cambios la partición de arranque /dev/ada1p1:
# newfs /dev/ada1p2
Crear el punto de montaje
# mkdir /mnt/root
Montar la partición:
# mount /dev/ada1p2 /mnt/root
Vamos a crear un archivo tar.gz de la partición raiz /dev/ada0p2 (disco ada0). :
# cd /
# bsdtar czvf /mnt/root/ada0p2.tar.gz *
Si se fija este archivo tar.gz ha sido creado en la particion ada1p2 (raiz) del disco nuevo. Vamos a copiarlo al disco duro ada0 para dejar la partición raiz del disco duro nuevo libre:
# mkdir /dbackup
# cp /mnt/root/ada0p2.tar.gz /dbackup/
Si quiere puede borrar el archivo tar.gz del disco duro nuevo:
# rm -f /mnt/root/ada0p2.tar.gz
Restaurar los datos en el disco duro nuevo:
# cd /mnt/root/
# bsdtar xzvf /dbackup/ada0p2.tar.gz
Después de finalizar, desmonte la partición y permita softupdates en la nueva unidad.
# umount /mnt/root
# tunefs -n enable /dev/ada1p2
Todo lo que debe hacer ahora es apagar el sistema desconectar el disco duro viejo (ada0) y conectar el nuevo disco duro como master e iniciar el sistema desde el nuevo disco duro:
# shutdown -p now
Unix es genial!.
lunes, 26 de mayo de 2014
NFS Servidor FreeBSD
NFS FreeBSD
El Sistema de archivos de red o NFS, es la forma estándar para compartir archivos de UNIX a través de una red. Los usuarios del sistema NFS pueden acceder a ficheros ubicados físicamente en máquinas remotas de forma transparente, como si de ficheros locales se tratara.
Mi servidor ejecuta FreeBSD 9.1 con dos tarjetas de red:
em0 = 192.168.3.1 LAN
em1 = 192.168.1.250 WAN
La configuración de NFS es relativamente sencilla.
El servidor NFS debe ejecutar los demonios: nfsd, mountd, portmap (rpcbind); mountd se ejecuta de forma automática cuando se activa el servidor NFS.
Para que estos procesos se ejecuten en tiempo de arranque del sistema se incluyen las siguientes entradas en el archivo /etc/rc.conf:
inetd_enable="YES"
nfs_server_enable="YES"
nfs_server_flags="-u -t -n 4"
rpcbind_enable="YES"
mountd_flags="-r"
mountd_enable="YES"
Algunos cambios en el archivo /etc/hosts.allow
# Rpcbind is used for all RPC services; protect your NFS!
rpcbind : ALL EXCEPT 192.168.3.0/24 : deny
Archivo /etc/inetd.conf
El archivo /etc/exports especifica los directorios o sistemas de archivos exportados al exterior por NFS. Cada línea especifica un sistema de ficheros y que máquinas tienen derechos de acceso sobre dicho sistema. Existen muchas opciones, consulte man exports.
La siguiente línea exporta el directorio /datan de forma que puedan acceder a dicho directorio máquinas situadas en el mismo dominio.
La opción -maproot=root permite que el usuario root de la máquina cliente modifique los datos del sistema de ficheros en red como si fuera el usuario root del servidor.
La opción -alldirs permite a los clientes remotos montar cualquier directorio del sistema de archivos directamente. Sin esta opción, los clientes remotos sólo pueden montar el directorio raíz de la sistema de archivos exportado
La opción -network restringe el acceso a los sistemas de la red especificada.
# ee /etc/exports
/datan -maproot=root -alldirs -network 192.168.3.0
Iniciar NFS en el servidor FreeBSD:
# rpcbind
# nfsd -u -t -n 4
# mountd -r
Una vez realice cambios en el archivo /etc/exports necesita reiniciar el demonio mountd:
# kill -HUP `cat /var/run/mountd.pid`
Ejecutar NFS En cliente FreeBSD:
Fichero /etc/rc.conf
nfs_client_enable="YES"
nfs_client_flags="-n 4"
rpc_lockd_enable="YES"
rpc_statd_enable="YES"
Desde el cliente:
# nfsiod -n 4
Crear el punto de montaje:
# mkdir /media/datan
Nos interesa que el directorio pertenezca al grupo carles:
# chown carles /media/datan/
# ls -ld /media/datan/
drwxr-x--- 2 root carles 512 24 may 08:36 /media/datan/
Otorgar permisos rw al grupo propietario del directorio montado
# chmod 770 /media/datan
$ ls -ld /media/datan/
drwxrwx--- 2 root carles 512 24 may 08:00 /media/datan/
En este punto debería estar listo para anclar el sistema de ficheros remoto en la máquina cliente:
# mount_nfs 192.168.3.1:/datan /media/datan/
Montar automáticamente directorio compartido NFS:
teclee la siguiente línea a /etc/fstab:
freebsdsvr:/datan /media/datan nfs rw,bg,hard 0 0
Donde bg significa que si un primer intento de contacto con el servidor falla, seguirá intentando el montaje en segundo plano y hard quiere decir que si el servidor no responde, hacer que las operaciones que intenten accederlo se bloqueen hasta que el servidor esté activo (El cliente debe esperar hasta que el sistema exportado por el servidor este disponible.)
Ya puede copiar y pegar utilizando el navegador de archivos Nautilus.
http://www.freebsd.org/doc/es/books/handbook/network-nfs.html
martes, 20 de mayo de 2014
FreeBSD Server NAT IPFW
FreeBSD Server NAT IPFW
Nuestro servidor FreeBSD está dotado con dos tarjetas de red.
em0 interface LAN IP 192.168.3.1/24
em1 interface WAN (internet) 192.168.1.250/24
Algunos pasos adicionales son necesarios para que el servidor FreeBSD se convierta en router intermedario entre Internet y la red interna.
Después de intalar FreeBSD 9.1-RELEASE tendremos que recompilar el KERNEL para Habilitar NAT + FIREWALL, no sin antes tener las fuentes del núcleo instaladas.
Instalar las fuentes del kernel:
Si el directorio /usr/src/sys no existe quiere decir que las fuentes del kernel no están instaladas.
# fetch ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/9.1-RELEASE/src.txz
Descomprimir el archivo en /usr/src:
# tar -C / -xvzf src.txz
Ahora desde el directorio arch/conf copiar el archivo de configuración GENERIC utilizando cualquier nombre:
# cp /usr/src/sys/amd64/conf/GENERIC /usr/src/amd64/conf/MYKERNEL
Añadir las siguientes opciones a /usr/src/sys/amd64/conf/MYKERNEL
# ee /usr/src/sys/amd64/conf/MYKERNEL
...
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=5
options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPDIVERT
...
Recompilar el kernel:
# cd /usr/src
# make buildkernel KERNCONF=MYKERNEL
# make installkernel KERNCONF=MYKERNEL
El nuevo kernel se copiará al directorio raíz como /kernel y el viejo kernel tendrá de nombre kernel.old.
Reiniciar el sistema con el nuevo kernel.
Nos conectamos vía SSH para comprobar el nuevo kernel:
$ ssh -p 2222 remoto@freebsdsvr
Password:
$ hostname
freebsdsvr.linux.bcn
$ uname -a
Archivos de configuración:
$ cat /etc/rc.conf
gateway_enable="YES" # igual que net.inet.ip.forwarding=1
natd_enable="YES" # Habilita NAT
natd_interface="em1" # nombre de la interfaz NIC conecta a Internet
natd_flags="-dynamic -m" # -m = preserve port numbers; additional
firewall_enable="YES" # activa ipfw firewall
firewall_type="simple" # protege red interna (LAN)
firewall_logging="YES" # habilita log
firewall_script="/etc/rc.firewall" # path scrip IPFW
$ cat /boot/loader.conf
ipfw_load="YES"
ipdivert_load="YES"
autoboot_delay="2"
loader_color="YES"
FreeBSD - The power to Serve!
http://www.pl.freebsd.org/doc/handbook/firewalls-ipfw.html
Unix es genial!.
jueves, 8 de mayo de 2014
Actualizar FreeBSD a STABLE
Actualizando FreeBSD a la última -STABLE version.
FreeBSD cambia todo el tiempo, y los cambios en la fuente se comprueban todos los días. La actualización a la última versión -STABLE ofrece todo este nuevo código sin romper programas instalados.
El nombre de "estable" se entiende mal a menudo. Esto no significa sólido o constante. -STABLE significa que mientras que el código se puede cambiar, el ABI (Application Binary Interface) se mantiene estable y no cambia. Programas compilados para ejecutar en FreeBSD 9.0-RELEASE, o 9.1-RELEASE, o 9.2-RELEASE continuarán trabajando en FreeBSD-STABLE 9.
Subversion debe estar instalado antes de que pueda ser utilizado para revisar el contenido de cualquiera de los repositorios. Instalar subversion como un paquete:
# pkg_add -r subversion
El FreeBSD código fuente en /usr/src es actualizado con svn desde el port devel/subversion. En este caso el directorio /usr/src existe y no fué creado con svn, por lo que hay que eliminar o renombrar:
# mv /usr/src /usr/src-old
Obtener el código fuente. svn conecta al mirror y descarga todo el source stable/9 al directorio /usr/src:
# svn checkout https://svn0.eu.freebsd.org/base/stable/9 /usr/src
Verifique la huella digital del servidor con las huellas dactilares que aparecen en los mirrors enlazados con anterioridad .
La comprobación sólo hay que hacer una vez. Después, la fuente se puede actualizar de forma rápida a la última versión en el repositorio Subversion con un comando de actualización:
# svn up /usr/src
Ahora que!
# rm -rf /usr/obj
# cd /usr/src
# make buildworld
# make kernel
Protesta!, falta el usuario auditdistd.
Creando el usuario auditdistd:
# pw useradd -n auditdistd -g audit -c "Auditdistd unprivileged user" -d /var/empty -s /usr/sbin/nologin
# make installworld
Antes de utilizar mergemaster, se recomienda copiar el actual directorio /etc en algún lugar seguro. Incluya -R que hace una copia recursiva y -p que conserva los tiempos y las titularidades de los archivos:
# cp -Rp /etc /etc.old
# mergemaster -Ui
# shutdown -r now
# cd /usr/src
# make check-old
Fuente: www.wonkity.com Warren Block
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html
Unix es genial!.
martes, 15 de abril de 2014
Nas FreeNAS
Fuente: freenas 9.2.1 guide ixsystems
FreeNAS es un NAS basado en FreeBSD. Un NAS provee un sistema operativo optimizado para almacenar y compartir archivos.
Soporta AFP, CIFS, FTP, NFS, SSH (incluido SFTP), y TFTP para compartir archivos, Directorio Activo o LDAP, crear e importar ZPS pools, replicación segura snapshots, administración y configuración desde interfaz gráfica. y un largo etc..
Un segundo disco duro de 250GB será utilizado para almacenamiento y compartición de datos (ada1).
Antes de crear conjunto de datos, determine cuales usuarios tendrán acceso a qué datos. FreeNAS soporta usuarios, grupos, y permisos.
Después de crear el volumen ZFS (recomendado para obtener el máximo rendimiento del sistema FreeNAS), dividimos el ZFS pool en datasets para proveer más flexibilidad al configurar el acceso de los usuarios a los datos.
http://192.168.3.45
Configurar volumen y datasets:
Configurar /mnt/dades
Establecer una cuenta de correo electrónico para el usuario root.
Importantes mensajes del sistema serán enviados al usuario root. Por razones de seguridad está desactivado el password login para la cuenta root.
Para cuentas de sistema la entrada Home Directory será /nonexistent. Si la opción CIFS, "Habilitar directorios (home)" está habilitada un directorio con el mismo nombre de la cuenta de usuario será creado para cada usuario.
Al contrario de la shell para una cuenta de usuario, la shell será nologin para cuentas de sistema.
Apple (AFP): Para entornos de computadoras que ejecutan Mac OS X.
Unix (NFS): Accesible por Mac OS X, Linux, BSD, y versiones profesionales de Windows. Ideal en redes mixtas.
Windows (CIFS): FreeNAS utiliza Samba para proveer el servicio SMB/CIFS. Este tipo de recurso compartido es accesible por computadoras con Windows, Mac OS X, Linux y BSD, pero más lento que un recurso compartido NFS. Si su red contiene solo sistemas Windows es buena elección.
Una vez los usuarios y grupos son creados, puede asignar usuarios como miembro de un grupo, para este ejemplo el grupo se llamará usuario:
Miembros del grupo usuario:
NFS configuración:
nobody acceso cuenta NFS
nobody propietario
nobody mapall user
nobody mapall group
Con esta configuración, no importa qué cuenta de usuario se conecta a la compartición NFS, ya que será asignado a la cuenta de usuario nobody y sólo se dispone de los permisos que ha especificado en el volumen/conjunto de datos. Por ejemplo, incluso si el usuario root puede conectarse, no va a tener acceso root al recurso compartido.
Montar en cliente freebsd recurso compartido. Tener la biblioteca cliente para acceder compartidos NFS y Agregar al archivo /etc/rc.conf
nfs_client_enable="YES"
Iniciar el servicio
# /etc/rc.d/nfsclient start
Copiar archivos desde pendrive 2GB hacia carpeta freenas
Windows (CIFS):
Si no utiliza Directorio Activo o LDAP, crear una cuenta de usuario por cada usuario.
- El nombre de usuario y la contraseña debe coincidir con el nombre de usuario y contraseña en el sistema cliente.
- Directorio de inicio. Navegar por el volumen a compartir.
- Repita este proceso para crear cuentas de usuario a todos los usuarios que necesiten tener acceso al recurso compartido CIFS.
- Agregar un grupo. Una vez creado, agregar las cuentas de usuario creadas con anterioridad.
Dar permiso al grupo para el volumen de almacenamiento.
Propietario: nobody
Grupo: usuario
Modo: derecho de escritura para el grupo
Abrir los puertos utilizados por CIFS en el Firewall
TCP 139 (smbd)
TCP 445 (smbd)
UDP 137 (nmbd)
UDP 138 (nmbd)
Configurar CIFS:
Para evitar que el explorador de Windows se cuelgue cuando acceda al recurso compartido se debe mapear el recurso compartido como una unidad de red.
Conectar desde un cliente Windows 7 utilizando la cuenta de usuario axel:
Recurso compartido para el usuario Windows axel:
Rsync es una utilidad para copiar automáticamente datos de un sistema a otro en una red. Una vez copiados los datos iniciales, rsync reduce la cantidad de datos mediante el envío sólo las diferencias entre los archivos de origen y destino (copia incremental).
La configuración rsync a través del modo SSH entre dos sistemas FreeNAS está detalladamente documentada en freenas 9.2.1 guide.pdf
Acceder vía ssh a freenas:
Desde la consola puede comprobarse el archivo de configuración de samba:
# testparm /usr/local/etc/smb.conf
Suscribirse a:
Entradas (Atom)






































