Samba server en Debian 8

Samba server en Debian 8

En esta entrada veremos con instalar samba server para conectar por red diferentes equipos, ya sean windows o linux, e incluso mac. Con esto podremos compartir recursos como impresoras, carpetas, ficheros …

Para instalarlo primeramente actualizamos el sistema con la siguiente orden

#apt-get update
#apt-get upgrade

Una vez que tenemos el sistema actualizado pasamos al siguiente paso

Instalación de samba server

como root tecleamos

#apt-get install samba

Nos mostrará las dependencias necsarias para poderse intalar, le decimos que si y esperamos la descarga e instalación de todos los paquetes. Esta parte es la sencilla, dar a si y esperar la descarga.

Configuración

Nuestro servidor samba podemos configurarlo en varios modos, los que se denominan server role, para este tutorial lo configuraremos como standalone server, que quiere decir como servidor independiente.

Ello quiere decir que servirá por si mismo carpetas o impresoras. Os dejo un fragmento del fichero de configuración y los diferentes modos que admite.

# Server role. Defines in which mode Samba will operate. Possible
# values are “standalone server”, “member server”, “classic primary
# domain controller”, “classic backup domain controller”, “active
# directory domain controller”.

Para entrar en la configuración deberemos editar el fichero /etc/samba/smb.conf y utilizaremos nano como editor de texto.

#nano /etc/samba/smb.conf

Lo primero que nos fijaremos es en workgroup, con esto podremos decirle como se llamará el grupo de trabajo de la red. Si bajamos por el fichero llegamos hasta el apartado share definitions, y nos aparece de primero entre corchetes [homes], esto es para compartir la carpeta home de cada usuario.

Pasando a la práctica

Si lo que queremos es compartir una carpeta, crearé primeramente una de ejemplo y le daré permisos totales dentro del equipo, luego ya veremos como permitir si por la red damos permisos de solo lectura o de lectura y escritura.

#mkdir /home/abc
#chmod 0777 /home/abc

volvemos al fichero de configuración de samba /etc/samba/smb.conf y al final del mismo tecleamos los siguiente.

[nombre]
comment = hola
path = /home/abc/
public = yes
browsable = yes
writable = yes
directory mask = 777
create mask = 777

Explico un poco que es cada línea. La primera y entre corchetes será el nombre con la que la carpeta se compartirá por la red, comment es un comentario, si se lo queremos agregar, no sería necesario. En path debemos colocar el lugar exacto de la carpeta a compartir.

Public, le decimos que será pública la carpeta y podrá verla todo aquel que acceda por la red a nuestro equipo. Con browsable le indicamos si podemos navegar por ella (subcarpetas) con writable le decimos si podemos escribir o modificar ficheros y con las últimas serían los permisos que otorgamos.

[nombre]
comment = hola
path = /home/abc/
public = yes
browsable = yes
read only = yes

 

En este otro ejemplo, la misma carpeta la compartiremos como solo lectura, no se podrán borrar ni crear ficheros por la red, tan solo visualizar y leer.

Con esto tendremos lo básico para compartir ficheros entre diferentes equipos, ya sean linux, windows o mac. Puede ser también interesante utilizar samba junto con servidores DLNA como tenemos visto en Instalar MiniDLNA en debian

 

Instalar LEMP  ( Linux nginx + MySQL + PHP7 ) en Ubuntu

Instalar LEMP ( Linux nginx + MySQL + PHP7 ) en Ubuntu

Instalación nginx

Yo estoy como root, puse sudo su antes de empezar.

Empezamos instalando nginx con apt-get install nginx

Le damos a s, para que continue.

 

Accedemos desde nuestro navegador a nuestra dirección ip y nos debe aparecer algo así si todo ha ido bien

Instalación mysql

Para instalar mysql escribimos  apt-get install mysql-server

y lo siguiente

Nos pide contraseña

Seguidamente nos pedirá confirmarla, tendremos que introducir la misma

Instalación de php

Para instalar php escribimos apt-get install php-fpm php-mysql

Confimamos con s
Una vez instalado accedemos al php.ini para modificarle un par de cosas y que nos funcione bien

 

Modificamos path info para que quede así:

Y añadimos el nombre de nuestro server (en este caso la dirección ip)

Descomentamos el location de php

Y accedemos desde cualquier navegador introduciendo nuestra dirección ip/info.php asi comprobamos que esta bien instalado y en funcionamiento

Y ya lo tenemos todo listo para usarse

Mini guía webmin, utiliza tu hosting

Mini guía webmin, utiliza tu hosting

Hace ya unos meses en esta otra guía Instalar webmin y virtualmin en debian jessie, vimos como instalar este control panel en diferentes sistemas linux. Webmin es uno de los mejores paneles gratuítos que he probado, aparte de estar disponible para varias distribuciones, está siendo constantemente actualizado y revisado. Todo esto lo hace un candidato ideal para utilizarno como panel de control de nuestro servidor web.

Voy a enumerar algunas de las características que instala.

  • Servidor web apache2.
  • Base de datos, podemos elegir entre mysql y postgresql.
  • Servidor DNS BIND.
  • Servidor FTP
  • Servidor de correo electrónico
  • File manager, muy útil para copiar, mover, editar ficheros, incluso subir y bajar ficheros.
  • Firewall.

Esto son algunas, pero desde luego no las únicas, podemos programar tareas cron, backups de nuestros dominios (lo que nos guardará absolutamente todo) nos guardará usuarios, mails, web, base de datos, configuraciones de php… Una solución muy completa, como os digo son algunas de las funciones que tiene.

Vamos a loguearnos por primera vez en el panel, si no sabeis como podeis verlo aquí, tras la instalación y la primera vez que nos logueemos nos saldrá un Post-Installation Wizard, si, está en inglés, ya luego modificaremos y lo pondremos en español. Es importante realizar estos pasos, pues definirá el comportamiento de nuestro servidor, tal como memoria asignada a mysql, dar una contraseña de usuario root a la base de datos y otras configuraciones. Veámoslo con imágenes.

screenshot_1

screenshot_2

Tal como nos dice esta segunda foto, podemos incrementar la velocidad de procesamiento de mails y la interfaz de usuario, pero que ello conlleva un gasto de memoria. Como esto afecta al backend, y si lo que quiero es alojar una web y no enviar y recibir miles de correos, la opción lógica es dejarlo como está, ahorrar ram para otros menesteres, como podría ser la base de datos. Todas estas configuraciones son relativas, dependerán siempre del hardware de nuestro servidor y en que queremos aprovecharlo más.

screenshot_3

screenshot_4

En estas otras dos, más de lo mismo, si queremos que el antivirus y spamassasin procesen más rápido los mails, lo seleccionamos, a costa de más memoria. Repito, si los mails no será lo fuerte, solo se enviarán o recibirán los que podríamos decir un volumen normal, no compensa, pero si nuestro servidor va sobrado, adelante. Esto es a criterio de cada uno. Todo este wizard, lo podemos repetir y modificar opciones, y probar a ver que diferencias hay entre unas opciones u otras.

screenshot_5

Aquí elegimos que base de datos vamos a utilizar, MySQL, PostgreSQL, ninguna o ambas. Es marcar la opción deseada y next. Lo más común es usar mysql, wordpress, joomla, drupal por nombrar algún CMS, Vbulletin, phpbb por nombrar algún foro utilizan MySQL.


Black Friday 2016 & Cibermonday

Los mejores regalos frikis o freak

Portátiles por menos de 400 euros


Yo en mi caso he elegido MySQL, y al darle a siguiente me pide que ingrese la password para root de la base de datos, ojo, no confundir con root del sistema.

screenshot_6

Siguiente paso, muy importante, asignarle memoria a la base de datos. Aquí recomiendo dar la máxima posible según las posibilidades de nuestro server. Nos da opciones de si el server tiene 512 MB, 1GB o más de 2GB. Él se encargará de configurar my.cnf según nuestra elección.

screenshot_7

Después de esto, los siguientes pasos los dejamos como vienen por defecto y ya tenemos el servidor casi listo para agregar nuestro primer dominio. Al terminar le decimos que haga un check, para comprobar que todo está funcionando correctamente. Es recomendable hacerlo o nos lo recordará constantemente. Si todo ha ido bien, obtenderemos esto.

screenshot_9

Vamos a cambiar el idioma, para ello vamos arriba ala izquierda donde pone webmin y hacemos como se muestra en la imagen a continuación. Deciros que también podéis modificar el theme.

screenshot_10

Veamos también unas opciones interesantes antes de añadir nuestro primer dominio.

screenshot_11

La i, nos dará información referente al sistema, horas sin reiniciar, uso de CPU, uso de RAM, si hay actualizaciones del sistema, entre otras. La estrellita nos permite guardar favoritos. Las tuercas, nos permite una configuración de pantalla, de qué nos mostrará cuando pulsemos la i. Luego nos aparece el usuario con el que estamos logueados, en este caso root, la opción de salir y recargar la pantalla.

Visto esto, estamos preparados para añadir un dominio, esto lo haremos pinchando arriba donde pone virtualmin, lo que nos creará un servidor virtual para alojar nuestra web y servicios como correo y ftp, usuario, base de datos. Todo ello con configuración exclusiva para ese dominio.

screenshot_12

Aquí hay que cubrir los campos, nombre de dominio, midominio.com, la descripción es opcional, darle un password. En usuario administrativo, si dejamos automático nos creará un usuario con nombre igual que el dominio, pero sin extensión, en este ejemplo crearía el usuairo midominio, si no queremos ese nombre de usuario, seleccionamos custom username y le damos el que queramos.

screenshot_13

Es interesante pinchar en Enabled features, ahí veremos que servicios activaremos para ese hosting. Por lo general está bien así, curiosamente el de FTP, debe quedar desmarcado, ya que es un servicio global y si lo activamos daría problemas. Todas estas opciones son activables o desactivables a posteriori. Pinchando en create server ya tendremos preparado para alojar una web.

Recordar, esto nos crea un usuario ftp con password, y una base de datos con un usuario y password igual al que le hemos dado ahí arriba, al crear el servidor virtual. Así que es un usuario y contraseña para todo. En las últimas versiones, instala el servicio de FTP, como SFTP y por el puerto 2222 en vez del 21. Tenerlo en cuenta para cuando querais conectaros por FTP configurar correctamente vuestro cliente de FTP. Una buena opción es FileZilla .

Ya para finalizar, algo que recomiendo hacer siempre que creemos un servidor virtual, es revisar los límites de PHP.

screenshot_14

screenshot_15

Subir memory allocation mínimo a 256M, HTTP POST mínimo a 64 (sobre todo foros), el Maximum file upload size por defecto viene dos, pero si vais a subir fotos en wordpress, o audio o algo que pese más de dos megas, no podríais, este parámetro queda a vuestra discreción. Lo de los tiempos es cuanto queremos que se pueda ejecutar php sin que lo detenga o de un error de time out (sobre este particular mejor googlear).

Tras realizar los cambios y salvarlos, debemos ir a apache y aplicar cambios, para que tenga en cuenta estos nuevos valores. También es válido reiniciar.

Esto es un manual muy general de lo que webmin y virtualmin son capaces de hacer, pero con esto podrás instalarte ya tu gestor de contenidos, un foro, un blog. Recordad, podremos alojar webs que utilicen HTML, PHP y como base de datos MySQL.


Quizá os interese revisar como preparar el servidor y como instalar webmin

Instalar webmin y virtualmin en debian jessie

CONFIGURA Y ASEGURA TU VPS

Cambiar password, permisos y propietario en linux

Cambiar password, permisos y propietario en linux

Hoy veremos unos comandos básicos para realizar estos cambios en nuestro sistema.

Para cambiar la password del user que tenemos logueado hemos de escribir lo siguiente

$passwd

El sistema nos pedirá la nueva contraseña, y que la repitamos una vez más, si lo que queremos es cambiarla a otro usuario, debemos estar logueados como root, o utilizar sudo si está activo. En ese caso escribiremos passwd usuario y nos solicitará la nueva contraseña para el usuario indicado.
#passwd sloth

Si queremos crear un usuario podemos hacerlo de dos formas useradd y adduser,  ambas nos creará el usuario, pero una de ellas aparte nos permitirá crear contraseña, creará su directorio dentro de /home y nos pedirá si queremos introducir otros datos como nombre real, dirección … por otro lado la otra orden solo creará el usuario, luego habría que crearle una contraseña, un directorio home …. más largo, pudiendo acortar os recomiendo usar adduser.

#adduser prueba

c1

Para quitar un usuario utilizaríamos deluser. Borrará el usuario, pero dejará el directorio de ese usuario sin tocar, habría que borrarlo a mano. Pasamos ahora a como modificar permisos, para ello utilizaremos la orden chmod.

#chmod 0UGT fichero

vamos a explicar esto un poco la estructura de permisos 0UGT. El primer cero debemos ponerlo siempre, luego el primer dígito se refiere a permisos de usuario, el segundo permisos de grupo y el tercero permiso a todos los usuarios.

[U] = Permiso concedido al usuario dueño del fichero o carpeta puede tener valores entre  0~7
[G] = Permiso concedido al grupo dueño del fichero o carpeta puede tener valores entre  0~7
[T] = Permiso concedido a todos puede tener valores entre  0~7

0 = No tiene ningún permiso
1 = Sólo permite la ejecución
2 = Sólo permite la escritura
3 = Permite la escritura y ejecución
4 = Sólo permite la lectura
5 = Permite la lectura y ejecución
6 = Permite la lectura y escritura
7 = Permite lectura, escritura y ejecución

En el nombre del fichero podemos utilizar comodines como *, con ello modificaríamos todos los ficheros contenidos en el directorio donde nos encontramos, veamos un ejemplo.

chmod 0741 ejemplo.txt
chmod 0741 *

Puede aplicarse a directorios los permisos, impidiendo el acceso así a usuarios, protegiendo contra escritura de invitados … Es cuestión de probar las muchísimas combinaciones que se pueden dar. Para hacer un apunte, si queremos cambiar permisos de una carpeta y todo su contenido recursivamente sería así.

chmod -R 0777 /carpeta

Ya por último y para no alargarse veremos como cambiar de propietario un fichero o un directorio con la orden chown usuario:grupo fichero. aquí como con chmod, podemos utilizar comodines * o la opción -R para hacerlo recursivo por toda una carpeta y subcarpetas. Veamos un ejemplo.

#chown sloth:users fichero.txt

Explicando el ejemplo, al fichero.txt le he puesto de dueño al usuario sloth y lo he incluído en el grupo users a fichero.txt.

Espero sea de ayuda, visitarnos, compartir.

Instalar webmin y virtualmin en debian jessie

Instalar webmin y virtualmin en debian jessie

INSTALAR WEBMIN + VIRTUALMIN

Como vimos en el anterior manual, vimos unos pequeños trucos de como implementar algo de seguridad en un VPS. Hoy veremos como instalarle un panel para alojar las webs, con ftp, base de datos y correo electrónico, sin olvidarnos del servidor web apache y servidor DNS.

El panel que me ha gustado bastante es webmin+virtualmin, es de código libre y gratis, tiene muchas funciones y es bastante completo a mi parecer. Si es cierto que existe un virtualmin pro que es de pago, pero las funciones que trae la versión gratis son más que suficientes para un uso personal.

Lo primero es entrar como root en nuestro sistema.

# cd /tmp
# wget http://software.virtualmin.com/gpl/scripts/install.sh
# chmod +x install.sh
# ./install.sh

virtual1Decimos que si y a esperar que haga la instalación. Comentar aquí, que este instalador es compatible

The systems currently supported by install.sh are:
CentOS/RHEL/Scientific Linux 7 on x86_64
CentOS and RHEL 5-6 on i386 and x86_64
Scientific Linux 6 on i386 and x86_64
Debian 6, 7, and 8 on i386 and amd64
Ubuntu 12.04 LTS, 14.04 LTS, 16.04 LTS on i386 and amd64

Lo cual nos facilita mucho el instalarlo en cualquiera de esas distros. Por supuesto hay más formas de instalarlo, esta me parece la más sencilla. Una foto del progreso

virtual2

Una vez que terminó, abrimos nuestro navegador favorito y en dirección tecleamos lo siguiente

virtual3

 

https://192.168.1.102:10000 "cambiar 192.168.1.102 por la ip de vuestro servidor"

En la mayoría de los navegadores os saldrá un aviso de seguridad de certificado, pero eso es debido que utiliza uno autofirmado, aceptar el aviso y continuar.

virtual4

Entrar con vuestro usuario root y vuestra contraseña. Otro día pondré una breve miniguía de como configurar una web desde el panel.

Advertisment ad adsense adlogger