sábado, 23 de julio de 2016

Aprende de la mejor manera tus primeros pasos con Debian.

Creado por Felipe Barrios

Post6

Bienvenidos a esta nueva sección, el blog que Backtrack academy desarrollando con mucho afecto para todos  nuestros alumnos de la comunidad, en agradecimiento por todo su apoyo.
Uno de nuestros principales objetivos es apoyar  tu proceso de aprendizaje, que podamos cubrir todas tus dudas respecto al aprendizaje.

Es por ello que vamos a partir desde lo más básico, vamos aprender conceptos rápidos relacionado con Linux especialmente distribuciones que estén basadas en Debían , como es el caso de Kali Linux. Desde una vista rápida y sencilla, aprenderemos a identificar los tipos de versiones, como realizar particiones en nuestro disco, gestores de arranque, instalación de paquetes repositorios y algunos comandos más utilizados.

Esperamos que esta información sea útil para nuestros usuarios que por primera vez se inician en este sistema operativo.

Para tener más información o querer descargar alguna de estas distribuciones:
  1. https://www.kali.org/
  2. https://www.debian.org/index.es.html
  3. http://www.ubuntu.com/

1.       Tipos de versiones

El proyecto Debian GNU/Linux posee tres ramas: “stable”, “testing” y “unstable”:

a)       Unstable: Como su nombre indica es la distribución más inestable porque contiene paquetes muy nuevos. La utilizan los desarrolladores de Debian para depuración. Contiene software muy reciente y puede traer problemas de estabilidad graves.

b)       Testing: Como su nombre indica esta distribución ya paso un tiempo de prueba, pero que aún debe pasar una fase de test adicionales para considerarlo estable, es la utilizada por aquellos usuarios que desean disfrutar de las nuevas características del S.O. y de las versiones de software mas reciente sin esperar a la liberación oficial de una nueva versión. 

c)       Stable: Como su nombre indica es la más estable de las distribuciones, ya que su software a superado varios meses de pruebas y correcciones.

2.       Particionado de disco

En Linux cada partición se monta en tiempo de arranque. El proceso de montaje hace disponible el contenido de esa partición dentro del sistema. El directorio raíz (/) será la primera partición.

Las particiones, cuando se montan, aparecen como un árbol de directorios unificado en vez de unidades separadas, el software de instalación no diferencia una partición de otra. Solo hay que preocuparse de en que directorio esta cada archivo. Como consecuencia de ello, el proceso de instalación distribuye automáticamente sus archivos por todas las particiones montadas, así que las particiones montadas representan diferentes partes del árbol de directorios donde se sitúan los archivos.

Al configurar un servidor, es recomendable tener particiones separadas para algunos directorios, tales como:

a)       /home, donde están los directorios de todos los usuarios.
b)       /usr, donde se sitúan todos los archivos de programa.
c)       /var, el destino final de los archivos log.
d)       /tmp, donde se sitúan los archivos temporales.

Adicionalmente tenemos una partición denominada “swap”. Este es un sistema de archivos no accesible para el usuario. Es donde se almacena el archivo de memoria virtual, tenerlo en otra partición mejora el rendimiento del S.O.
Es usado como memoria secundaria cuando la memoria principal está completamente usada. Por estar en disco es más lenta que la memoria RAM.

3.       Gestores de arranque
El gestor de arranque indica al computador que S.O. o kernel se iniciara y donde se encuentran los archivos necesarios para ejecutarlo. Dependiendo del tipo de distribución escogida se instalara por defecto uno de estos dos gestores de arranque:

a)       Lilo
b)       Grub

Durante este proceso se añadirán automáticamente los diferentes S.O. que tengamos instalados en nuestro equipo. Posteriormente los parámetros pueden ser configurados desde consola (terminal) o mediante una herramienta de administración gráfica como: “Webmin”.

4.       Instalación de  paquetes
Este proceso se puede realizar de diferentes maneras, dependiendo del tipo de repositorio, comando y paquetes a instalar. A continuación se describen 3 de ellas.

4.1.  Dpkg (Debian Package)
Si en vez de paquetes fuentes lo que tenemos es un paquete pre-compilado o binario podemos utilizar el gestor de paquetes dpkg. A continuación se especifican las opciones más comunes:

Comando                                                            Descripción

#dpkg -l                                                                Lista paquetes instalados
#dpkg -i <paquete>                           Instala paquete
#dpkg --install <paquete>                                Instala paquete
#dpkg -r <paquete>                           Elimina paquete
#dpkg -remove <paquete>                              Elimina paquete
#dpkg --purge <paquete>                                Borra un paquete incluidos los archivos de configuración
#dpkg -c <paquete>                          Lista los archivos contenidos
#dpkg --contents <paquete>            Lista los archivos contenidos y sus directorios
#dpkg --info <paquete>                    Información del paquete

4.2.  Apt (Advanced Packaging Tool)
El programa apt se encarga de manejar automáticamente las dependencias del conjunto de paquetes del sistema. Como parte de su funcionamiento, apt utiliza el archivo sources.list, que contiene las “fuentes” en donde se encuentran los paquetes, su ubicación es: /etc/apt/sources.list

El archivo sources.list puede contener varios tipos de líneas. APT sabe cómo interpretar líneas del tipo http, ftp y file (archivos locales). La primera palabra de cada línea indica el tipo de archivo:

a)       deb, indica un paquete pre-compilado (binario)
b)       deb-src, indica código original (fuentes)

A continuación se especifican las opciones más comunes.

Comando                                                            Descripción

#apt-get update                                                  Sincroniza el índice de paquetes respecto a su fuente. Actualiza la lista local de paquetes con el archivo /etc/apt/sources.list

#apt-get upgrade                                               Instala la versión más nueva de todos los paquetes instalados en el sistema provenientes de alguna de las fuentes listadas en el archivo /etc/apt/sources.list.

#apt-get dist-upgrade                                       Actualiza a la distribución más reciente
#apt-get install <paquete>                               Instala paquete
#apt-get remove <paquete>                            Desinstala paquete
#apt-get remove --purge <paquete>              Desinstala paquete y borra sus archivos de configuración
#apt-cdrom ident                                                                Identifica un CD
#apt-cdrom add                                                  Añade un CD a /etc/apt/sources.list
#apt-cache show <paquete>                           Muestra información de un paquete especifico
#apt-cache depends <paquete>                    Muestra de que paquetes depende

4.3.  Aptitude
El programa aptitude, es una herramienta gráfica que se encarga de manejar el conjunto de paquetes del sistema.

5.       Comandos generales

La forma general de los comandos en Linux es:

$ comando [opciones] [parámetros]

Las opciones son modificadores para los comandos y no siempre es necesario teclear alguna. Las opciones se suelen indicar con el signo – seguido por una letra. Los parámetros son informaciones que el comando puede necesitar para ejecutarse. Esta necesidad depende de cada comando concreto. A continuación vamos a ver algunos comandos básicos.

a)       man, es uno de los comandos más útil del modo texto. La forma de ejecutarlo es teclear man seguido del nombre del comando sobre el que queremos obtener ayuda.

Ejemplo: man ls

b)       ls, lista el contenido del directorio especificado como parámetro. Si no se indica ningún directorio se utiliza el directorio actual. Este comando tiene multitud de opciones para alterar el tipo de información mostrada.

Ejemplos:

ls –l                        Lista extendida de archivos y directorios del directorio actual
ls –l /var/log          Lista extendida del directorio /var/log
ls –a                       Lista de todos los archivos y directorios, incluídos los acultos, que en Linux
empiezan por el carácter punto ( .)

ls –R                      Lista de archivos y directorios y de todos los directorios dentro de él.

c)       

cd: Cambia el directorio actual por el especificado como parámetro. Ejemplos:
cd /usr/local/doc                 Ejemplo del comando cd utilizando una ruta absoluta
cd local/doc                          Suponiendo que nos encontramos en /usr, igual que el anterior pero usando ruta relativa
cd ..                                        Cambio al directorio un nivel por encima del actual
cd                                           Cambio al directorio home del usuario.

Nota:
Ruta absoluta: Es la ruta completa desde el principio del árbol hasta el directorio al que nos referimos. Una ruta absoluta siempre comienza con el directorio raíz (/).

Ruta relativa: Es la ruta a un archivo o directorio desde el directorio actual. Es decir, es el camino de directorios que hay que recorrer, partiendo del directorio actual.

"Si te gusto este post y quieres más post de este estilo, comenta pidiendo el próximo y te regalaré un descuento en nuestro próximo curso Premium!"

d)       pwd: muestra el directorio actual (o la ruta al directorio actual).

e)       mkdir: crea un directorio. 

Ejemplo: mkdir directorio1

f)         rmdir: borra un directorio. 

Ejemplo: rmdir directorio1

g)       cp: Copia archivos (o, opcionalmente directorios). 

Ejemplo: cp /etc/apt/sources.list   /home/directorio1

h)       rm: borra archivos. Por lo normal no borra directorios, pero cuando se especifica la opción –r o –R se borra el árbol de directorios entero a partir del directorio especificado (se incluyen los subdirectorios). 

Ejemplos:
rm /home/directorio1/sources.list
rm –r directorio1

i)         mv: mueve o renombra archivos o directorios
mv /etc/apt/sources.list   /home/directorio1
mv /etc/apt/sources.list   /home/directorio1/sources.txt

j)         find: busca archivos en la estructura de directorios que cumplan la condición especificada, admite muchas opciones de búsqueda diferentes, tales como:
-name ‘nombre’   busca archivos con el nombre especificado.
-user usuario1     busca archivos que pertenezcan al usuario usuario1.
-group                   busca archivos que pertenezcan al grupo especificado.

Ejemplos:

find –name ‘sources.*’                       busca en el directorio actual archivos que se llamen sources, con cualquier extensión.
find /tmp –user usuario1                   busca en el directorio /tmp archivos que pertenezcan al usuario1.

k)       su: permite cambiar de usuario. Ejemplo:
su usuario1          permite cambiar del usuario actual al usuario1
su                           permite cambiar del usuario actual al usuario root

l)         who: muestra los usuarios que se encuentran conectados al equipo (los usuarios del sistema).

m)     whoami: muestra el nombre del usuario actual.

n)       finger: muestra información sobre usuarios. 
Ejemplo: finger usuario1    muestra información del usuario1

o)       ps: muestra la lista de procesos que se están ejecutando en el sistema. 

Ejemplos:

ps                           muestra los procesos de un usuario, ejecutados desde la shell correspondiente.
ps –u usuario1    muestra mas información de los procesos de un usuario, ejecutados desde la shell correspondiente.

p)       top: muestra información en tiempo real de la actividad del procesador así como de los procesos que se están ejecutando en el sistema.

q)       kill: permite terminar un proceso. Ejemplos:
kill                           permite terminar un proceso mediante su PID (identificación numérica)
killall                      permite terminar un proceso mediante su nombre

r)        chown: cambia el propietario de un archivo

s)       chgrp: cambia el grupo al que pertenece el archivo

t)         ifconfig: muestra la configuración de las interfaces de red

u)       ping: permite determinar rápidamente si existe conexión entre hosts.

6.       Usuarios
Es muy recomendable crear usuarios de trabajo dentro del sistema, ya que con el usuario root es posible crear, modificar o eliminar cualquier archivo del S.O., lo que supone un riesgo ya que se podría dañar el sistema en caso de cometer algún error.

El comando necesario para crear un nuevo usuario es adduser.

Ejemplo: adduser usuario1

Este mandato crea una nueva entrada en el archivo /etc/passwd. Este archivo contiene información como el nombre de usuario, contraseña, directorio de trabajo y shell predeterminado.
Podemos modificar la contraseña de cualquier usuario si hemos iniciado una sesión de root, o nuestra propia contraseña en caso de iniciar una sesión con nuestra cuenta, mediante el comando passwd.

 Ejemplo: passwd usuario1

Si el sistema está bien administrado, se ha de almacenar información imprescindible de los usuarios. Para cambiar la información de una cuenta se usa el comando chfn.

Ejemplo: chfn usuario1

Y para remover o eliminar al usuario se utiliza el comando deluser. 

Ejemplo: deluser usuario1

7.       Grupos

Para añadir un nuevo grupo al sistema se utiliza el siguiente comando:
groupadd -g [GID] [nombregrupo]        donde GID es el n° de grupo que se asignara.

Si tenemos usuarios ya creados y deseamos añadirlos o eliminarlos de un grupo podemos usar:

gpasswd -a [nombreusuario] [nombregrupo]                  añadir usuario
gpasswd -d [nombreusuario] [nombregrupo]                  eliminar usuario

8.       Permisos de archivos
Hay tres niveles de permisos de archivos y directorios. Estos tres niveles pertenecen a las siguientes categorías:

a)       Usuario (el propietario)
b)       Grupo
c)       Otros

Cada nivel o categoría tiene los privilegios asociados de:

a)       Lectura
b)       Escritura
c)       Ejecución

Un archivo está identificado por el grupo al que pertenece y su propietario. Cuando realizamos un listado de un archivo, encontramos los siguientes parámetros:

ls -l <archivo>

- rwx rwx rwx root root 512 Jan 7 10:50 nom
archivo

El primer carácter identifica el tipo de archivo. Podemos encontrar por ejemplo:

-              Archivo normal (generalmente un archivo binario o de texto ASCII)
d             Directorio

8.1.  Modificación de permisos
Para modificar los permisos de acceso a un archivo se utiliza el comando chmod. Es necesario especificar los siguientes elementos:

a)       Nivel que se va a modificar (propietario, grupo o otros)
b)       Permiso que se va a modificar (lectura, escritura o ejecución)
c)       Archivo o archivos que se van a modificar

Los permisos pueden ser especificados con letras:

chmod g+w /home/archivo       da permiso de lectura al grupo
chmod g-w /home/archivo        quita permiso de lectura al grupo 

O con números:

chmod 751 /home/archivo        da lectura, escritura y ejecución al propietario; Lectura y ejecución al grupo; Ejecución a otros.

Las opciones de chmod, son:

Opción          Descripción

u                     Propietario
g                     Grupo
o                     Otros
a                     Todos

r                      Lectura
x                     Ejecución
w                    Escritura
0                     Sin privilegios
1                     Ejecución
2                     Escritura
3                     Escritura y ejecución
4                     Lectura
5                     Lectura y ejecución
6                     Lectura y escritura
7                     Lectura, escritura y ejecución

Esperamos que toda esta información sea de mucha utilidad y de gran ayuda para tu proceso de aprendizaje.

Fuente : http://backtrackacademy.com/posts/aprende-de-la-mejor-manera-tus-primeros-pasos-con-debian


https://view.genial.ly/5dee5944ae1d2d0fb3a4916c/learning-experience-challenges-prueba


No hay comentarios:

Publicar un comentario