Sei sulla pagina 1di 54

Formación online “Linux Essentials”

Cisco Networking Academy

Sergi Pons: Responsable Técnico CNA y LPI


PUE (PROYECTO UNIVERSIDAD EMPRESA)
Área de Proyectos de Educación
Índice

2. Aplicaciones Open Source y licencias


3. El uso de Linux
4. Habilidades en línea de comandos
Módulo 2 - Aplicaciones Open Source y licencias

Objetivos
– Conozca la historia de Linux y Unix
– Entender las partes de un sistema Linux
– Aprender acerca de Open Source
– Averiguar funcionamiento de Linux
Diferentes roles de Linux

• Servidores suelen ser desatendido y manejan


datos en nombre de otras máquinas
– servidores de archivos, servidores web, servidores
de correo, …
• De escritorio o clientes son más interactivos,
con interfaz gráfica (GUI)
• Móviles para tabletas o teléfonos
• Desarrollo es muy similar a un terminal de
escritorio, pero con más capacidades
Servidores Web

• Servir las páginas web estáticas a los clientes a


través de HTTP
• También se puede servir contenido dinámico
mediante la adición de PHP, Java, Ruby,
Python, etc
• Apache y Nginx son los servidores web más
populares
– 65% de los sitios web utilizan Apache o Nginx
Servidores de Correo

• Mail Transfer Agents (MTA) o Agentes de


Transferencia de Correo envían correos entre
servidores
– Sendmail, Postfix
• Mail Delivery Agents o Agentes de Entrega de
Correo entregan el correo electrónico al buzón de
un usuario
– Procmail o software personalizado
• Servidores POP / IMAP permiten descargar
correo electrónico a los clientes
– Dovecot, Cyrus
Servidores de archivos

• Network File System (NFS) es el protocolo de


uso compartido de archivos nativo UNIX
• Samba permite que una máquina Unix pueda
emular un cliente y servidor Windows
• Netatalk permite que una máquina Unix
pueda emular un servidor de archivos de
Apple
Infraestructura

• ISC bind es un servidor de nombres de


dominio (DNS)
– resuelve nombres a direcciones y más
• OpenLDAP es un servidor LDAP de directorios
de información
• ISC DHCP configura clientes dinámicos a través
del Protocolo de Configuración Dinámica de
Host (DHCP)
Bases de datos

• MySQL y PostgreSQL son servidores de bases


de datos relacionales
• Servidores de bases de datos de
almacenamiento e información estructurada
• SQL es un lenguaje utilizado para consultar
una base de datos relacional:
– SELECT * FROM usuarios;
Entorno de escritorio

• X-Window es el sistema gráfico de base


– Proporciona ventanas y herramientas visuales
– Alias X11 o X.org
• Ventanas con menús y su propia gestión (abrir,
cerrar, ocultar, etc)
• Los entornos de escritorio ofrecen gestores de
ventanas y herramientas para utilizarlas
Gestores de ventanas

• Compiz, FVWM, Enlightenment, Metacity


• Toma las ventanas básicas y proporciona
herramientas para mover, cerrar, abrir, etc
• Permite cambiar entre las aplicaciones en
ejecución
• Añade menús para ejecutar las aplicaciones
Entorno de Escritorio

• KDE, GNOME, Unity


• Gestor de ventanas + herramientas
– Herramientas básicas como calculadora, juegos,
bloc de notas, etc.
– Gestor de archivos
– Herramientas de flujo de trabajo, tales como
accesos directos para iniciar o buscar aplicaciones
en el ordenador
Oficina / Productividad

• LibreOffice es una herencia de OpenOffice


• Incluye procesador de textos, hoja de cálculo,
paquete de presentaciones, herramienta de
dibujo
• Alta compatibilidad con formatos de archivo
de Microsoft Office
Web y Correo electrónico

• El Chrome y FireFox son los navegadores de


código abierto populares
– Estos navegadores también son multiplataforma y
popular, lo que garantiza un excelente soporte
• Thunderbird, Evolution, y KMail son clientes
de correo electrónico
– Utilice POP / IMAP para recuperar el correo
electrónico
Las herramientas de consola

• La Shell es la principal forma de interactuar


con el sistema
– Familia shell Bourne
– Familia shell C
– Otros Shell híbridas como ksh y zsh
• Editores de texto
– Vi / vim
– Emacs
– Pico /nano
Desarrollo

• Los lenguajes son compilado o interpretado


– C, C ++, Java se compilan
– PHP, Perl, Ruby, Python se interpretan
• Compensación de la productividad del
programador vs recursos informáticos
• Las Librerías reducen la cantidad de código
necesario
Licencias de software

• El creador del software posee los derechos de


autor al software
• El creador otorga al software un tipo de
licencia para los usuarios del mismo
• Los diferentes tipos de licencias otorgan
diferentes tipos de derechos
Free Software Foundation

• Iniciado por Richard Stallman en 1985


• También ejecutada en el proyecto GNU que
proporciona herramientas para Linux y otros
Sistemas Operativos Unix
• Licencias GPLv2 y GPLv3 le permiten modificar
y redistribuir el software
• Copyleft impone que se debe compartir el
código fuente con los cambios realizados
GPL

• GPL es una licencia popular de Software Libre


• GPL es "viral", los cambios también deben usar
GPL
• LGPL permite vincular librerías no GPL
• GPL3 impide "Tivoización"
– Software con licencia Copyleft
– El uso de hardware propietario de eludir disposiciones
GPL
• Puede cobrar un precio simbólico para cubrir sus
costos de distribución
Open Source Iniciativa

• Bruce Perens y Eric Raymond empezaron en


1998 la OSI (Open Source Iniciativa)
• La licencia Copyleft es demasiado extrema,
FSF es demasiado política
• OSI no tiene licencias, sólo las avala
• Licencias FSF son aprobadas por OSI, pero las
licencias OSI no están necesariamente
aprobadas por la FSF
Software Libre Permisivo

• Una licencia OSI permite que el código fuente


sea accesible, para ser modificado,
redistribuido, y para ser utilizado por
cualquier persona con cualquier propósito
• Las licencias BSD y MIT permiten utilizar y
redistribuir el software, o mantener los
cambios realizados en privado y utilizar como
software propietario
FOSS / FLOSS

• Free (Libre) and Open Source Software


• Un término comodín
• El software puede ser libre de uso y / o libre
de lenguaje
Licencias no software

• El arte y la escritura también pueden otorgar


licencias
• Dominio público rechaza cualquier restricción
de derechos de autor
• Creative Commons tiene una variedad de
licencias para permitir a la gente a utilizar el
trabajo bajo ciertas restricciones
Creative Commons

• Reconocimiento - debe reconocer al autor


• Compartir bajo la misma licencia - copyleft
• No-Obras Derivadas - Usted no puede cambiar el
contenido
• No comercial - Sin uso comercial
• Las combinaciones están permitidas, como de
Reconocimiento-No-Obras Derivadas-No
comercial
• No hay derechos reservados - de dominio público
Ganar dinero con Open Source

• Vender servicios, soporte, garantía


• Programación a medida a cambio de dinero
• Utilice software Open Source en su trabajo diario
y/o de consultoría
• Utilice tiempo de trabajo para fijar / mejorar
software Open Source
• Construir plugins / modules de pago (sujeto a
restricciones de licencia)
• Trabajar en proyectos de código abierto dan
credibilidad a tu marca personal
Módulo 3 – El uso de Linux

Objetivos
– Uso de una máquina virtual Linux
– Adquirir habilidades de uso de distribuciones
– Introducción a la línea de comandos
– Aprender acerca de la industria de Linux, la
computación en nube y la virtualización
Uso de una máquina virtual Linux
• VirtualBox
https://www.virtualbox.org/wiki/Downloads
• Máquina virtual Debian
Tenemos 2 opciones:

- Descargar ISO i instalar una máquina virtual nuevo


- Descargar la máquina virtual que os he dejado disponible a
través de los anuncios de la plataforma Cisco NetSpace
GUI vs CLI

• Modo gráfico (GUI) ejecuta un servidor X,


cuenta con ventanas y menús
• El modo no gráfico es sólo texto, se centra en
el acceso a la Shell
• Puede ejecutar varios terminales en modo
gráfico, cada uno en su propia ventana
Acceder al Terminal

• Buscar Xterm o Terminal


– Realizar una búsqueda
– Buscar en el menú “Utilidades" o "Sistema"
• Puede tener varias ventanas de Terminal
abiertas
• Cortar y pegar entre diferentes aplicaciones
• Las mismas acciones que en modo no gráfico
(CLI)
Trabajar con Linux

• Software disponible para realizar trabajo de


oficina con Linux
– LibreOffice proporciona un paquete de procesador
de textos, hoja de cálculo y presentación que son
compatibles con las aplicaciones de Microsoft
– Firefox o Chrome para la navegación web
– Distribución o entorno de escritorio proporciona
herramientas de correo electrónico y otras
aplicaciones como una calculadora o bloc de notas
Conceptos básicos de seguridad
de Linux
Manteniendo la Seguridad

• Las cookies se envían a través del navegador


en cada petición web
• Las cookies proporcionan las mayores
violaciones de privacidad
– Se puede desactivar las cookies por completo
– O simplemente limpiar al final de la sesión
– También podrá deshabilitar cookies de origen a
terceros
Contraseñas

• Use contraseñas únicas y fuertes en todas


partes
• Software como KeePassX guarda sus
contraseñas, así que no es necesario recordar
de memoria
• Una contraseña segura es al azar
– 10 o más caracteres
– Mezcla de mayúsculas y minúsculas
– Añadir símbolos (# [;! ...
Protección del equipo

• Utilice un firewall
– La política por defecto “negar trafico entrante y
permitir tráfico saliente” suele ser muy eficaz
– iptables es el firewall de Linux
• Manténgase al día
– Su distribución debería hacer más fácil comprobar e
instalar actualizaciones
– Las actualizaciones (updates) suelen fijar problemas
de seguridad
– Se pueden automatizar
Módulo 4 – Habilidades con línea de comandos

Objetivos
– Comprender utilización básica de la Shell (consola)
– Trabajo con comandos y sus opciones
– Aprenda los efectos de las variables y
entrecomillado
CLI o Basic Shell
La interfaz de línea de comandos

• Interfaz basada en texto


• Acceso a través de un terminal
– Terminales basados ​en GUI
– Terminales virtuales
• Comandos a través de la Shell
• Intérprete de comandos:
[sysadmin@localhost~]
Características de la Shell

• Historial de comandos - capacidad de volver a


ejecutar comandos anteriores rápidamente
• Scripting - crear programas que ejecutan
secuencia de comandos de la Shell escritos en
un archivo
• Alias ​- crear accesos directos a los comandos
más largos
• Variables - Almacenar la información que se
puede utilizar para modificar la funcionalidad
de la Shell o de los comandos
Entender la estructura de los
comandos
Formato del comando

• Formato básico:
– comando [opciones] [argumentos]
• Las opciones cambian el comportamiento
de los comandos
• Los argumentos se utilizan para
proporcionar información adicional para un
comando
Las opciones de comando

• Varían en función de cada comando


• Formato de opciones: -a
– Se puede combinar: -abc = -a -b -c
• Nuevo formato de opciones (GNU) : --all
Histórico de comandos

• Ver comandos anteriores: history


• Saca comandos anteriores: flecha
hacia arriba
• Modificar comandos anteriores: flecha
izquierda, flecha derecha, Etc.
• Ejecutar un comando anterior: !<num>
Variables
Variables de shell

• Se utiliza para almacenar la información del


sistema
• Ver con el comando echo:
echo $HISTSIZE
• Modificar: HISTSIZE=500
• Los cambios son temporales
• Si queremos cambios permanentes,
tendremos que añadir los comandos en
~/.bashrc
Variable PATH

• Determina desde donde se ejecutan los


comandos
• Puede ser necesario modificarlo por
software específico
• Ejemplo:
Ruta de acceso a comandos
y alias
Encontrar la ubicación de comandos

• Es difícil determinar donde se encuentra


un comando
• En lugar de buscar directorios en la
variable PATH manualmente, utilice el
comando which:
– which cal
– which date
Alias

• Se utiliza para crear accesos directos para


los comandos más largos
• Ver alias: alias
• Crear alias: alias=comando
• Los cambios son temporales
• Para hacer permanente, colocar el
comando alias en ~/.bashrc
Estructura de comandos
adicionales
Caracteres de expansión

• Se utiliza para conjuntos de archivos en un


directorio
• * = Coincidir con cero o más caracteres
• ? = Coincidir exactamente con cualquier carácter
• [] = Coincidir exactamente con uno de un
conjunto de caracteres:
– echo [abc]*.txt
– echo [!abc]*.txt (negación)
Entrecomillado

• Las comillas dobles (“ ”) - se utiliza para


desactivar el significado de algunos
metacaracteres, como los caracteres generales
• Las comillas simples (‘ ’) - se utiliza para
desactivar el significado de todos los
metacaracteres
– Se puede usar \ para desactivar únicamente el
siguiente carácter
• Comillas inversas (``) - Se utiliza para ejecutar un
comando dentro de otra línea de comandos
Declaraciones de control

• Carácter ;- Se usa para separar comandos


en una línea de comandos
• Los caracteres && - se utiliza para ejecutar
el segundo comando SI el primer comando
se ejecuta correctamente
• Los caracteres || - se utiliza para ejecutar
el segundo comando si el primer comando
falla
Gracias por vuestra atención

Sergi Pons: Responsable Técnico CNA y LPI


PUE (PROYECTO UNIVERSIDAD EMPRESA)
Área de Proyectos de Educación

PUE - Proyecto Universidad Empresa, SL. · Avda. Diagonal, 98-100 - Distrito 22@ · Barcelona (España, 08019) · Tel: 932060249 • Fax: 932060646
Próxima sesión…

abril mayo junio


L M X J V S D L M X J V S D L M X J V S D
1
2 3 4 5 6 7 8 1 2 3 4 5 6 1 2 3
9 10 11 12 13 14 15 7 8 9 10 11 12 13 4 5 6 7 8 9 10
16 17 18 19 20 21 22 14 15 16 17 18 19 20 11 12 13 14 15 16 17
23 24 25 26 27 28 29 21 22 23 24 25 26 27 18 19 20 21 22 23 24
30 28 29 30 31 25 26 27 28 29 30

Fin del curso Webinars del curso

Potrebbero piacerti anche