sistema linux
TRANSCRIPT
Implementación de Servidores
bajo el Sistema GNU/LINUX
Temario
• Introducción• Perspectiva histórica•¿Qué es GNU/Linux?
• Instalación
• Preparativos• Hardware y software
• Aspectos de configuración• Particiones y el disco duro• El proceso de instalación• Las cuentas de usuarios
• Uso de comandos básicos • El software GNU/Linux
• Actualización, archivos RPM
• Configuración de red (LAN) • Configuración de servicios
• web, vsftp, ssh, sftp• sendmail• squirrelmail
I. Introducción a GNU/Linux
Hasta los comienzos de 1980 era común compartir y modificar código, para ser implementado en diferentes plataformas. Empresas comerciales comienzan a obligar a sus programadores a firmar contratos de confidencialidad para no revelar el código de los programas desarrollados. Quienes revelaran datos de esos programas serían considerados “piratas”.
En 1984, un investigador del Laboratorio de Inteligencia Artificial del MIT, Richard Stallman, renuncia al mismo en contraposición a la prohibición a no poder compartir el código de programas entre colegas. Funda en ese momento una Fundación en apoyo al Software Libre. Free Software Fundation.
Se plantea la siguiente pregunta:
¿ Hay algún programa que yo pueda realizar y compartir a una nueva comunidad?
Perspectiva histórica
La respuesta no fue difícil de encontrar
Sistema Operativo
Así podría existir una nuevacomunidad cooperando einvitar a cualquiera a unirse
Un S.O. similar UNIX, parafácil migración de usuarios
Nace de esta manera el Proyecto GNU
GNU es un acrónimo recursivo de GNU´s Not UNIX
El S.O. contaría para comenzar con:
• Ensambladores• Compiladores• Depuradores• Editores de Texto• Aplicaciones• Etc.
Introducción. Algunas fechas
1962 CTSS @ MIT: tiempo compartido y protección
1967 MULTICS @ MIT, Bell, GE: el SO más avanzado de su época. Multiusuario, multiproceso, árbol de ficheros, intérprete de órdenes (shell).
1973 UNIX@ Bell (Thompson, Ritchie) escrito en C
1978 3BSD @ Berkeley memoria virtual paginada
1980 4BSD @ Berkeley (DARPA) Internet
1984 GNU (Richard Stallman) Emacs
1988 X y NeWS: sistema de ventanas distribuido
1990 Normalización : Sun + AT&T, POSIX, XOPEN
1991 386BSD, Kernel Linux, versiones libres
Introducción - Definiciones
El Software Libre nada tiene que ver con su valor económico,sinocon la Libertad. Free Software no es Software Gratis, sino Software Libre
Para que un software sea considerado libre, debe cumplir con lo siguiente:
• Libertad para ejecutar un programa con cualquier propósito• Libertad para modificar el programa y adaptarlo a sus necesidades• Libertad para distribuir copias gratuitamente• Libertad para distribuir versiones modificadas
Para ello es necesario Acceder al Código del Programa
De esta manera Toda la comunidad se beneficia
Nace así el CopyLEFT. Su implementación jurídica es la GNU GPL
General Public Licence - Licencia Pública General
Introducción. Migración
Algunas aplicaciones
Emacs
Glade
KDE Studio
Kylix
JBuider
Netscape
Konqueror
Galeon
Firefox
Mozilla
Evolution
StarOffice
Netscape
Kmail
Mozilla
PostgreSQL
MySql
DB2 (IBM)
Oracle (Comercial)
Informix (Comercial)
StarOffice
OpenOffice
Koffice
AbiWord
Gnumeric
DesarrolloNavegadoresMailBases de DatosOficina
Seguridad Informática
- Libre de Virus- Firewalls - iptables- Proxy - Squid- Herramientas de Auditoria
Soluciones Web
- Servidores Apache- Desarrollo PHP – MySql- Servidores de Mail - SendMail
Introducción . ¿Qué es GNU/Linux?
Comienzos de los 90
El S.O. GNU estaba casi listo.
Surge la necesidad de un núcleo
De manera totalmente independiente al Proyecto GNU, Linus Torvaldsjunto a un grupo de programadores había dado los primeros pasos en el
desarrollo de un núcleo similar a MINIX y UNIX compatible.
Linus pone a disposición ese kernel bajo las licencias GPL y pasa a serparte del proyecto GNU
Es gracias a LINUX que en la actualidad podemos ver funcionar un Sistema GNU
Introducción - Características Principales
• Sistema Operativo similar a UNIX. • Libre • Soporta 486, Pentium, AMD, Cyrix, SPARC, DEC, Alpha,PowerPC, Mac • Uso Personal (PC), Servidores y Estaciones de Trabajo • Soporta redes TCP/IP y otros protocolos
Multi-Usuario, Multi-Tarea, MultiPlataforma
Introducción. Mas de 80 Distintas Distribuciones
Orientada a servidores en producción, sistema con soporte para grandes equipos, basado en RHEL
CENTOS
Usa el mismo formato de archivos que RedHat y Suse (RPM) Es la más fácil de instalar. Trae GNOME. Se actualiza muy seguido.
MANDRAKE
Es amena. Buenas herramientas de administración. Buenos manuales en español. Viene con KDE.
SUSE
Preferida por los Programadores – Es la más grande “no comercial” – Aventaja a las demás en herramientas. Fácil instalación.
DEBIAN
KNOPPIX
Es la más extendida – Eso da gran ventaja. Buenos entornos gráficos. Buen Soporte. Fácil instalar
REDHAT
FEDORA
II. Instalación de GNU/Linux
Requerimientos mínimos de hardware
• CPU 486, celeron, pentium, pentium pro, II, III, IV, centrino,AMD Athlon, Athlon XP, Familia x86 AMD64, Power PC, Itanium • Bus ISA, EISA, PCI, VESA, AGP, USB, FIREWIRE
• RAM >256 Mb
• HD >4Gb
Aspectos de configuración
• Aceptar licencia GPL • Espacio en disco, particiones
• Tipo de instalación, personal, estación de trabajo, servidor
• Uso horario,Idioma, teclado, red
II. Instalación de GNU/Linux
CENTOS
• Es una distribución basada en Redhat Enterprise • Libre, orientado a servidor• El costo de RHEL es de 3,000 USD• Estabilidad• Compatibilidad• Actualizaciones• Soporte
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
II. Instalación de GNU/Linux
Administración de Usuarios
Metas de una administracióncorrecta de usuarios
• Privacidad• Organización• Compartir recursos• Niveles de Privilegio
Usuarios Propios de Linux Mail, FTP, Daemons, etc.
Usuarios de Alto Privilegio Root, alguno que asigne Root
Usuarios Privados: Determinados por los permisos
Grupos Privados: Usuarios con iguales privilegios
Cambia permisoschmod
Elimina usuariosuserdel
Modifica datos de un usuariousermod
Cambia la contraseñapasswd
Agrega usuariosuseradd
Seguridad en LINUX
1) Seguridad Física
2) Políticas de Seguridad
• Políticas de contraseñas• Políticas de respaldos• Determinación de niveles de Acceso• Políticas de bitácoras
3) Seguridad Lógica Nivel Software
• No preocuparse por Virus Informáticos• Estar al tanto de vulnerabilidades y emparchar o actualizar software con fallas• Desactivar todos los servicios que no se utilicen• Cerrar puertos no utilizados• Contar con reglas de Firewall (iptables)• Programación Segura• Auditar permanentemente la Red
La contraseña
• Función de dispersión: consiste en un sistema de cifrado en un solo sentido.
• Visible: /etc/passwd
• Elegirla adecuadamente:
– Evitar palabras del diccionario, nombres, números
– Evitar palabras en idiomas comunes
– Combinar letras con números
– Elegir claves que tengan algún sentido (que sea fácil de recordar)
– Cambiarla con cierta frecuencia
Otras formas de acceder
• Desde el entorno local en modo textual
– máquina login:
– Password:
• Desde otro sistema de la red
– En modo textual
• ssh usuario@maquina
– En modo gráfico
• ssh –X usuario@maquina kcalc
• scp archivo usuario@maquina:archivo
Facilidades de interacción
• Renombrar órdenes complicadas– alias rm=”/bin/rm -i”
• Manejar la historia– Utilizar las flechas– history– !! (repetir la última orden)– !3 (repetir el 3)– !expre:p (busca la última orden ejecutada que
empieza por expre)
• Directorios de usuarios ~ ~alex
• Completar el nombre de archivos <TAB>
Tipos de órdenes
• Informativas
– man (por secciones), info, mozilla, lynx, gv
– date, cal, ps, pwd
• Ejecutivas
– De usuario: lpr, cp, mv, rm
– De sistema: sync, halt, reboot, shutdown
• Procesadoras
– editores (kedit, kwrite, nedit, pico, vi, emacs)
– od, strings, head, tail, grep, awk
– diff, find
Sistema de ficheros
• Uniforme– ficheros, directorios, dispositivos, comunicación– un fichero es una secuencia de bytes– el significado se lo da el programa que lo usa
• sufijos y prefijos• tipo o números mágicos
• Nombres largos
• Maneja otros tipos de sistemas de ficheros– BSD 4.2 (dispositivos y particiones)– CD-ROM (ISO, RockRide, Joliet)– Memoria– FAT 16, FAT 32 o NTFS– Remotos (NFS, NetBios)
Sistema de ficheros jerárquico
• El sistema de ficheros es jerárquico– Se parte de una estructura mínima /
– El resto se monta en alguna de las ramas
• mount (también se puede ver con df)/dev/hda4 on / type ext2 (rw)
none on /proc type proc (rw)
/dev/hda2 on /usr type ext2 (rw)
/dev/hda5 on /home type ext2 (rw)
/dev/hdb2 on /windows type vfat (rw,noexec,nosuid)
none on /dev/pts type devpts (rw,mode=0622)
/dev/hdc on /mnt/cdrom type iso9660 (ro,noexec,nosuid,nodev,user=tomas)
• Sistema de ficheros distribuido– monta dispositivos de otras máquinas como directorios locales.
Navegación por el sistema de ficheros
• Camino absoluto– Para acceder a un fichero hay que dar su camino absoluto
desde la raíz del sistema.– cat /usr/share/doc/gcc-3.0/README– cd $HOME– cd ~
• Camino relativo– cd /usr/share/doc/gcc-3.0– pwd– cat README– cd ../gzip ; cat README
• ls -alrt directorio (ordenados por tiempo, incluidos .*)
• ls -R directorio (clasificado y recursivo)
Manipulación de ficheros
mkdir directorios crear directoriosrmdir directorios borra directorios
rm ficheros borra ficherosrm -r nombres borra recursivo
-i borra preguntando-f borra sin preguntar
mv nombreA nombreB cambia nombresmv fichero directorio mover ficheros
cp ficheroA ficheroB copiarcp ficheroA directorioB copiar a otro directorio
cp -r directorioA directorioB copiar recursivo-p conservando atributos-i preguntando
FIN
Ing. Alejandro [email protected]