En esta entrada te vamos a mostrar ejemplos de qué hacer después de instalar Debian 9 Stretch, basándonos en una instalación simple del sistema. Estos primeros pasos después de instalar Debian 9 son acciones que pueden ser muy interesantes para dejar un entorno de trabajo más cómodo y potente tras una nueva instalación de nuestro sistema operativo favorito.
Tabla de contenidos
Acciones para realizar con root
Unas breves tareas para realizar con root. No hay mucho trabajo que hacer, puesto que con root no vamos a trabajar habitualmente.
Cómo mostrar colores en consola
Vamos a darle un poco de vida a nuestra consola mediante la visualización de información con colores, como mostrar archivos en distinto color según el tipo de archivo de que se trate. Con tu editor favorito, en mi caso es nano, editamos el archivo /root/.bashrc para realizar esta configuración:
# ~/.bashrc: executed by bash(1) for non-login shells. # Note: PS1 and umask are already set in /etc/profile. You should not # need this unless you want different defaults for root. # PS1='${debian_chroot:+($debian_chroot)}\h:\w\$ ' # umask 022 # You may uncomment the following lines if you want `ls' to be colorized: # export LS_OPTIONS='--color=auto' # eval "`dircolors`" # alias ls='ls $LS_OPTIONS' # alias ll='ls $LS_OPTIONS -l' # alias l='ls $LS_OPTIONS -lA' # # Some more alias to avoid making mistakes: # alias rm='rm -i' # alias cp='cp -i' # alias mv='mv -i'
Como podemos ver, todo lo que aparece en el archivo está desactivado mediante comentarios. Eliminaremos la almohadilla de las líneas relacionadas con los colores en consola:
# ~/.bashrc: executed by bash(1) for non-login shells. # Note: PS1 and umask are already set in /etc/profile. You should not # need this unless you want different defaults for root. # PS1='${debian_chroot:+($debian_chroot)}\h:\w\$ ' # umask 022 # You may uncomment the following lines if you want `ls' to be colorized: export LS_OPTIONS='--color=auto' eval "`dircolors`" alias ls='ls $LS_OPTIONS' alias ll='ls $LS_OPTIONS -l' alias l='ls $LS_OPTIONS -lA' # Some more alias to avoid making mistakes: # alias rm='rm -i' # alias cp='cp -i' # alias mv='mv -i'
Tras guardar los cambios, estos no se activan de inmediato, sino en el siguiente inicio de sesión.
Vemos que hemos activado algunos alias muy interesantes del comando ls, que es uno de los que más usamos. Ahora en vez de tener que escribir «ls -l» basta con «ll«, y además colorea los resultados.
Cómo dar permisos de superusuario
Durante la instalación hemos creado un usuario estándar que tiene pocos privilegios, los justos para trabajar con sus archivos y directorios, así como manejar comandos básicos de uso seguro.
Sin embargo, tarde o temprano necesitamos hacer alguna tarea para la que necesitamos permisos de root. Trabajar a diario con root no es buena idea, de hecho es peligroso. Es mejor trabajar con un usuario estándar que en un momento dado pueda realizar una tarea con privilegios.
Vamos a darle privilegios de root para ser usados a través del comando sudo a uno de los usuarios del sistema.
En primer lugar necesitamos instalar el comando sudo, que viene en el paquete del mismo nombre:
~# apt -y update && apt -y install sudo
Ahora ya tenemos disponible el comando sudo y podemos emplearlo para darle privilegios a un usuario estándar. La forma de hacerlo es añadir ese usuario al grupo sudo:
~# adduser chacho sudo Añadiendo al usuario `chacho' al grupo `sudo' ... Añadiendo al usuario chacho al grupo sudo Hecho.
En este ejemplo hemos añadido el usuario chacho al grupo sudo. Por tanto, este usuario podrá elevar sus privilegios para realizar tareas especiales, cuando lo necesite, usando el comando sudo.
Como ya tenemos un usuario para trabajo a diario con posibiliad de realizar tareas reservadas a root, cerramos sesión y la iniciamos con el usuario estándar.
Acciones para realizar con tu usuario de trabajo
Al igual que hicimos con root, la primera tarea será darle un poco de vida a nuestra consola editando el archivo ~/.bashrc. Haremos los mismos cambios, buscaremos estas secciones:
... # uncomment for a colored prompt, if the terminal has the capability; turned # off by default to not distract the user: the focus in a terminal window # should be on the output of commands, not on the prompt #force_color_prompt=yes ... # enable color support of ls and also add handy aliases if [ -x /usr/bin/dircolors ]; then test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" alias ls='ls --color=auto' #alias dir='dir --color=auto' #alias vdir='vdir --color=auto' #alias grep='grep --color=auto' #alias fgrep='fgrep --color=auto' #alias egrep='egrep --color=auto' fi ... # some more ls aliases #alias ll='ls -l' #alias la='ls -A' #alias l='ls -CF' ...
Y haremos los cambios que consideremos oportunos, eliminando caracteres # donde corresponda:
... # uncomment for a colored prompt, if the terminal has the capability; turned # off by default to not distract the user: the focus in a terminal window # should be on the output of commands, not on the prompt force_color_prompt=yes ... # enable color support of ls and also add handy aliases if [ -x /usr/bin/dircolors ]; then test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" alias ls='ls --color=auto' #alias dir='dir --color=auto' #alias vdir='vdir --color=auto' alias grep='grep --color=auto' #alias fgrep='fgrep --color=auto' #alias egrep='egrep --color=auto' fi ... # some more ls aliases alias ll='ls -l' alias la='ls -A' alias l='ls -CF' ...
Básicamente hemos activado el color para el prompt de la línea de comandos y una serie de alias, uno para «colorizar» el comando grep y alias cortos para diferentes párametros del comando ls.
En el siguiente inicio de sesión estos cambios estarán disponibles.
Con respecto a darle color al prompt de la línea de comandos, antes de los cambios tendríamos algo así:
Después de activarse los cambios pasamos a tener algo así:
Se nota la diferencia bastante, ¿verdad? Al tener el prompt un color llamativo, de un vistazo podemos ver cuántos comandos se han introducido y cuál es la salida de cada uno.
Limpiar y actualizar los repositorios de apt
Recién instalado, la lista de repositorios de apt, que se encuentra en /etc/apt/sources.list, contiene lo siguiente:
# # deb cdrom:[Debian GNU/Linux 9.6.0 _Stretch_ - Official i386 NETINST 20181110-12:18]/ stretch main #deb cdrom:[Debian GNU/Linux 9.6.0 _Stretch_ - Official i386 NETINST 20181110-12:18]/ stretch main deb http://ftp.es.debian.org/debian/ stretch main deb-src http://ftp.es.debian.org/debian/ stretch main deb http://security.debian.org/debian-security stretch/updates main deb-src http://security.debian.org/debian-security stretch/updates main # stretch-updates, previously known as 'volatile' deb http://ftp.es.debian.org/debian/ stretch-updates main deb-src http://ftp.es.debian.org/debian/ stretch-updates main
Se incluyen los repositorios de código fuente, que prácticamente nunca se utilizan y el medio físico de instalación desactivado. Haciendo una copia de seguridad previa, podemos eliminar todas esas líneas que no nos sirven y, opcionalmente, añadir el repositorio non-free para paquetes que no cumplen la licencia GPL.
Así quedaría la nueva versión del archivo sources.list:
deb http://ftp.es.debian.org/debian/ stretch main non-free deb http://security.debian.org/debian-security stretch/updates main deb http://ftp.es.debian.org/debian/ stretch-updates main non-free
Para comprobar que los cambios son correctos, actualizamos la información de los repositorios:
~$ sudo apt -y update Ign:1 http://ftp.es.debian.org/debian stretch InRelease Obj:2 http://security.debian.org/debian-security stretch/updates InRelease Obj:3 http://ftp.es.debian.org/debian stretch-updates InRelease Obj:4 http://ftp.es.debian.org/debian stretch Release Leyendo lista de paquetes... Hecho Creando árbol de dependencias Leyendo la información de estado... Hecho Todos los paquetes están actualizados.
Y todo funciona como esperaríamos, sin errores ni advertencias.
Actualizar los datos de los repositorios es una tarea rutinaria para nuestro usuario de trabajo, de hecho, es una buena práctica hacerlo justo antes de instalar cualquier paquete nuevo (si ha transcurrido cierto tiempo desde la última vez, claro).
Instalar comandos de uso frecuente
Si partimos de una instalación mínima es fácil echar de menos comandos y utilidades que se usan con frecuencia. Comandos como:
- ifconfig (paquete net-tools): Está obsoleto, ahora se usa el comando ip. Pero si te gusta, ¿por qué no usarlo mientras esté disponible?
Una vez que tengamos en mente los comandos que necesitamos, los podemos instalar todos de una vez, junto con sus dependencias si las hay, con apt:
~$ sudo apt update && sudo apt install -y net-tools
No tienes que instalar todos los paquetes que se sugieren en este ejemplo, puedes añadir y quitar según tus necesidades y costumbres.
Acceder remotamente a Debian 9 mediante certificado RSA
Si accedemos a nuestro servidor Debian remotamente mediante SSH, podemos mejorar la seguridad del acceso usando un certificado RSA.
Para ello creamos dentro de nuestro directorio personal otro llamado .ssh/ con permisos exclusivos para nuestro usuario (700, que equivalen a lectura, escritura y ejecución, al tratarse de un directorio). Dentro de ~/.ssh/ crearemos el archivo autorized_keys también con permisos exclusivos de usuario (600, lectura y escritura) y lo editaremos para pegar la clave pública del certificado RSA.
~$ mkdir ~/.ssh ~$ chmod 700 ~/.ssh/ ~$ touch ~/.ssh/authorized_keys ~$ chmod 600 ~/.ssh/authorized_keys ~$ nano ~/.ssh/authorized_keys [...]
Habiendo ya añadido la clave pública en ~/.ssh/authorized_keys y guardados los cambios, configuraremos nuestro cliente SSH favorito con los datos de conexión, que serán dirección o nombre del servidor, usuario que inicia la sesión y ubicación del certificado RSA correspondiente a la clave pública que acabamos de indicar.
Si necesitas información adicional sobre esta tarea, lo tienes explicado en profundidad en la entrada cómo crear claves RSA para acceso remoto.
Conclusión
Aparte de la instalación en sí de nuestro sistema Debian 9, siempre solemos hacer una serie de tareas repetitivas para amoldar el entorno a nuestro gusto. En esta entrada, y a modo de ejemplo, hemos cubierto algunas. Seguramente tú tienes tus propias personalizaciones sin las que no puedes pasar. La cuestión es confeccionar un guión que seguir, si instalamos servidores Debian a menudo.
¿Y tú? ¿Qué otras cosas haces después de instalar Debian 9? Cuéntamelo en un comentario. Igualmente, si tienes alguna duda, pregunta, corrección o sugerencia de nuevos artículos, la sección de comentarios es toda tuya.
No olvides que si te ha gustado este artículo, puedes colaborar con el mantenimiento de este sitio dejando 1 $ de propina con PayPal:
O, si te sientes especialmente agradecido, puedes invitarnos a un café:
¡Gracias!
Muy buenos tus artículos. Muy descriptivos y bien explicados. Seguiré consultadolos…
¡Muchas gracias! Seguiré incluyendo contenido.