Professional Documents
Culture Documents
Administracin de Servidores II
Manual
Instalacin del Sistema Operativo Deban, Matar Procesos, Permisos, Encriptacin, Administracin de Usuarios y grupos, etc.
Catedrtico:
Pues bien, empecemos con el primer tema que ser la instalacin de un Sistema Operativo Libre, en este caso Deban, que es un sistema operativo libre parecido a Ubuntu u Open Solaris. Lo primero es tener grabado en un disco el sistema operativo de Deban, o en otro caso hacerlo en una maquina virtual, como Virtual Box, y para ello necesitaremos la imagen iso de dicho sistema operativo, bueno teniendo esto reiniciamos el equipo o en el otro caso montamos la imagen para comenzar con la instalacin. Una ves que reiniciado el equipo seleccionamos el orden de arranque y lo dejamos ya sea desde el disco o USB, despus nos aparecer una pantalla como esta.
Seleccionamos la primera opcin y presionamos Enter, despus nos aparecer otra pantalla en la que escogeremos el idioma de instalacin.
En esta parte escogeremos la distribucin de nuestro teclado, en este caso latinoamericano como se muestra a continuacin.
Aparecer otra pantalla y pedir si queremos configurar la red, por el momento lo dejaremos en blanco y presionamos continuar.
Aqu pondremos nuestro nombre de dominio, pero por el momento lo dejaremos en blanco y presionamos siguiente.
Ok, hecho lo anterior nos pedir que introduzcamos la contrasea del sper usuario, tenemos que tener en cuenta que la clave o contrasea del sper usuario no es la misma que la del administrador o del nombre de la cuenta con la que normalmente iniciamos esta debe ser diferente.
Ahora escogeremos el tipo de particin, en mi caso como lo estoy realizando en una maquina virtual escoger la opcin en la que voy a utilizar todo el disco.
Una vez hecho lo anterior se realizara el esquema de particin, es recomendable que si no sabemos mucho acerca de particiones lo dejemos en la primera opcion.
10
Para acabar con el particionado nos preguntara que si queremos escribir los datos en el disco.
11
Ahora nos pedir el pas ms cercano, en este caso Mxico que es donde nos encontramos.
12
13
Despus de esto se reiniciara nuestra maquina y nos aparecer una pantalla negra como la siguiente, que es la que nos muestra como carga tanto el entorno grafico como los servicios.
14
Y a disfrutar de nuestro sistema operativo Debian, si estas familiarizado con sistemas operativos como Ubuntu este no te parecer complicado y si no es asi, deban tiene una interfaz de usuario fcil de entender y usar.
15
Permisos en Linux con chmod Pero Primero, Qu es chmod o que significa? chmod ("change mode", cambiar modo en idioma ingls) es una llamada al sistema y su comando asociado en el sistema operativo UNIX, que permite cambiar los permisos de acceso de un archivo o directorio. Pues bueno indagando encontr esto, espero y les sirva de algo a ustedes tambin. Este comando se aplica sobre ficheros o carpetas, en el caso de que sean carpetas podemos usar la opcin -R para dar permisos recursivamente a todas las carpetas y ficheros que contenga recursivamente. En cuanto a la sintaxis del comando, podemos decir que responde a: Chmod [opciones] XXX nomFichero/nomCarpeta Donde: Opciones podemos especificar por ejemplo cosas como R. XXX es el nmero de permisos tal y como especificamos a continuacin: Relacin Numrica con los Permisos 0 = Ningn permiso (Lectura = 0 + Escritura = 0 + Ejecucin = 1 = Permiso de Ejecucin (Lectura = 0 + Escritura = 0 + Ejecucin = 2 = Permiso de Escritura (Lectura = 0 + Escritura = 2 + Ejecucin = 3 = Permiso de Escritura y Ejecucin (Lectura = 0, Escritura = 2, Ejecucin = 4 = Permiso de Lectura (Lectura = 4 + Escritura = 0 + Ejecucin = 5 = Permiso de Lectura y Ejecucin (Lectura = 4 + Escritura = 0 + Ejecucin = 6 = Permiso de Lectura y Escritura (Lectura = 4 + Escritura = 2 + Ejecucin = 7 = Permiso de Lectura, Escritura y Ejecucin (Lectura = 4 + Escritura = 2 + Ejecucin = Qu son los 0) 1) 0) 1) 0) 1) 0)
permisos?
Existen tres permisos independientes, llamados permisos bsicos, que pueden ser permitidos (estado 1) o denegados (estado 0) a un archivo y/o directorio.
16
Otro ejemplo seria, en mi caso que usaba Ubuntu, chmod 777, esto significa que le damos todos los permisos tanto al propietario como a grupos y los dems usuarios. Veamos otros ejemplos: chmod 766 file.txt # brinda acceso total al dueo Y lectura y escritura a los dems. chmod 770 file.txt # brinda acceso total al dueo y al grupo Y elimina todos los permisos a los dems usuarios. chmod 635 file.txt # Permite lectura y escritura al dueo, Escritura y ejecucin al grupo, y lectura y ejecucin al resto. Nota: Evidentemente el comando chmod contiene muchas ms opciones y formas de asignar permisos, como de la siguiente forma: Modo carcter Posee 3 modificadores que permiten realizar la tarea:
+ aade un modo elimina un modo = especfica un modo (sobrescribiendo el modo anterior) # agrega permisos de lectura a todos los usuarios # agrega permisos de escritura al dueo # elimina el permiso de ejecucin a todos # los usuarios chmod u=rw,go= arch.txt # establece los permisos de lectura y escritura # al dueo y elimina todos los permisos a los dems usuarios
chmod +r arch.txt
17
Bien, como nos damos cuenta se ha creado el directorio en el Escritorio, a nuestra izquierda nos aparece una serie de letras las cuales corresponden a lo siguiente: D: directorio Ahora, como mencionamos anteriormente los primeros tres caracteres corresponden al propietario, que son r: read (lectura), w: write (escritura) y x: ejecucin. Despus los siguientes tres que corresponden al grupo en el que esta el usuario del sistema, que en este caso al igual que el propietario tiene todos los privilegios. Y por ultimo tenemos los otros usuarios que como vemos solo tienen los permisos de lectura y ejecucin, ya que como son otros usuarios no podemos darles el privilegio de escribir. Si fuera con nmeros en vez de letras seria ms fcil y algo asi:
18
Como se dan cuenta las letras han cambiado, ahora tambin el grupo solo tiene permisos de leer y ejecutar al igual que los dems usuarios. Veamos otro ejemplo:
Aqu ya especificamos que solo el propietario tiene acceso total al archivo, el grupo solo puede leer y los dems usuarios no tiene privilegios, por seguridad. En mi caso se me facilita mas de esta manera, es decir con nmeros, y para los dems archivos como imgenes, msica, videos, archivos de texto, etc., vendra siendo lo mismo. Como Encriptar y desencriptar archivos en Linux? En opinin personal, a quien no le gustara proteger un archivo de manera que nadie pueda abrirlo o visualizarlo, yo creo que la mayora concordara conmigo en este caso, bien en las ditribuciones Linux, como Ubuntu que adems de ser un Sistema Operativo gratuito y libre (que creo que la mayora ahora ya conoce) nos brinda diversos mtodos de proteccin de datos con contraseas, restricciones, etc. Pero bien sabemos que esto no garantiza que nuestra informacin personal este segura, sin duda desde hace aos y hasta la actualidad, la mejor manera de mantener nuestra informacin segura es utilizando el cifrado. Para Encriptar y desencriptar archivos con una clave, se puede utilizar el comando gpg. Es una herramienta de encriptado y firmado para sistemas operativos Linux/UNIX as como para FreeBSD/Solaris.
19
Paso 1.- Vamos a verificar que tengamos el paquete gpg instalado, para ello abre una terminal y teclea: whereis gpg
Debe devolverte algo como esto - gpg: /usr/bin/gpg /usr/share/man/man1/gpg.1.gz Esto significa que tenemos el paquete instalado y podemos seguir, en caso contrario usamos synaptic o el centro de software de Ubuntu para descargarlo. Paso 2.- Vamos a suponer que tenemos un archivo llamado Fotos.rar, que ser el archivo que queremos proteger, por lo tanto tu puedes sustituirlo por lo que tu quieras. Abrimos una terminal y tecleamos gpg -c Fotos.rar
Al introducir el comando anterior la terminal nos pedir una contrasea. Nota: Si quieres que este bien protegido no pongas palabras del diccionario, busca que sea una combinacin de letras y nmeros de aproximadamente 8 caracteres, esto te brindara una muy buena proteccin. Te pedir que la escribas de nuevo y a partir de ahora tendrs un archivo llamado Fotos.rar.gpg , en la misma carpeta que contena el archivo original. Este ser nuestro archivo protegido en el cual podemos confiar. Desencriptar / Desproteger el archivo Ahora si queremos desencriptar el archivo para poderlo ver, modificar etc. lo unico que tenemos que hacer es teclear en consola gpg Fotos.rar Con lo que se nos pedir la contrasea con la que lo encriptamos, la introducimos y listo
20
Ahora para activar o desactivar los servicios solo presionamos espacio, bueno en la parte de arriba y abajo nos da opciones de que es lo que podemos hacer, por ultimo solo presionamos la tecla Q para salir y listo, ya arrancamos servicios, los detuvimos, activamos y desactivamos servicios. Linux ofrece multitud de servicios o servidores, estos pueden iniciar o arrancar junto con la carga del sistema o pueden despus ser puestos a funcionar cuando se requieran (es lo mejor). Parte esencial de la administracin de sistemas Linux es continuamente trabajar con los servicios que este proporciona, cosa que es bastante sencilla. En este tutorial aprenders todo lo necesario sobre como inicar/detener/reinicar etc. los servicios de tu equipo GNU/Linux. Iniciando servicios manualmente, directorio init.d Dentro de esta carpeta ubicada en /etc o en /etc/rc.d dependiendo de la distribuccin, se encuntran una serie de scripts que permiten inicar/detener la gran mayora de los servicios/servidores que estn instalados en el equipo.
21
Los argumentos son autodescriptivos, y tienen permisos de ejecuccin, entonces siendo root es posible iniciar un servicio de la siguiente manera, por ejemplo samba: #> /etc/rc.d/init.d/smb start Starting Samba SMB daemon [OK]
Solo que hay que cambiar start por stop | restart | status para detenerlo, reiniciarlo (releer archivos de configuracin) o checar su estatus. Ahora bien si ests parado dentro del directorio puedes hacerlo asi. #> pwd /etc/rc.d/init.d #> ./smb stop Shutting down Samba SMB daemon
[OK]
Se trata de tan solo un script asi que con el permiso de ejecuccin (x) puedes ejecutarlo con ./ seguido del nombre del servicio, sin espacios y despus el argumento que necesites, inicarlo, detenerlo etc. El comando service En varias distros, como Fedora o RedHat, existe el comando service, este comando permite tambin iniciar y/o detener servicios, de hecho funciona exactamente igual a como si escribieramos la ruta completa haca el directorio init.d, con service se indica de la siguiente manera: #> service mysql status Checking for service MySQL: stopped Si se desea iniciarlo: #> service mysql start Starting service MySQL [OK]
Iniciando servicios desde el arranque del sistema En muchos casos es conveniente que un servidor o servicio inicien junto con el arranque del equipo en si, por ejemplo el servidor web Apache o alguna base de datos, esto es para que estn disponibles todo el tiempo y no se requiera de intervencin del administrador para iniciarlos.
22
0 Detener o apagar el sistema 1 Modo monousuario, generalmente utilizado para mantenimiento del sistema 2 Modo multiusuario, pero sin soporte de red 3 Modo multiusuario completo, con servicios de red 4 No se usa, puede usarse para un inicio personalizado 5 Modo multiusuario completo con inicio grfico ( X Window) 6 Modo de reinicio (reset)
Por ejemplo el nivel 0, que apaga el equipo, mata o detiene a todos los procesos del sistema, todos los servicios, lo mismo hace el 6 con la diferencia que despus inicia un script que permite reiniciar el sistema. El nivel por omisin o por default del sistema esta definifo en /etc/inittab, en la lnea initdefault: $> grep initdefault /etc/inittab id:5:initdefault: # runlevel 0 is System halt (Do not use this for initdefault!) # runlevel 6 is System reboot (Do not use this for initdefault!) La salida es de una distro OpenSuse 10. Como se puede apreciar existe una lnea que comienza con id, seguido por 5 que indicara entonces el nivel por default del sistema, basta con cambiar este valor con cualquier editor, reiniciar el equipo y se entrara a otro nivel, por ejemplo el 3 que tiene una funcionalidad completa pero sin sistema de ventanas X Window (ideal para equipos obsoletos o con pocos recursos de hardware). Ntese que en el listado previo aparecen dos lneas de comentarios, las que empiezan con #, que hacen la advertencia de no usar nunca los niveles 0 y 6 de initdefault, ya que jams arrancara el equipo. Se tendra que usar un mtodo de rescate. (He aqui la importancia de jams dejar una terminal abandonada con una sesin de root abierta ya que podra llegar un bromista y rpidamente cambiar la lnea initdefault a 6 por ejemplo, y despus estara muy divertido viendo a un pobre administrador novato trtandose de explicar porque diablos el equip se resetea hasta el infinito sin nunca entrar a una pantalla de login). El nivel de ejecuccin actual del sistema puede ser consultado con who -r y con el comando runlevel, este ltimo muestra dos nmeros el primero es el nivel previo en que se estaba y el segundo el nivel actual, si no se ha cambiado de nivel aparece una N. Comando init Este comando te permite cambiar el nivel de ejecuccin actual por otro, es decir puedes estar en el nivel 3 y en cualquier momento pasar al 5 o viceversa, o entrar a un modo monousuario para tareas de mantenimiento como utilizar fsck. Esto sin necesidad de cambiar la lnea initdefault en /etc/inittab, simplemente usando el comando init: #> init 3 Puedes reiniciar el equipo con init 6 o incluso apagarlo con init 0, de hecho shutdown y otros comandos como halt, lo que hacen es invocar a init para apagar el equipo mas otras tareas como sincronizar buffers, etc. Si ests en una mquina que tenga particiones con sistemas de archivos
23
Ntese que todos son enlaces al directorio init.d que como ya se vi previamente es donde realmente estn ubicados los scripts de arranque de los servicios o servidores. Tambin, todos los enlaces comienzan con K (kill) o con S (start), es pues fcil deducir que los que comienzan con K son scripts que recibirn el argumento stop y los que comienzan con S el de start, es decir, se inician. Esta gran simplicidad ofrece una enorme potencia al momento de configurar servicios ya que basta con agregar o quitar enlaces con el formato indicado para personalizar los niveles de ejecuccin a nuestro gusto. Despus de la K o S sigue un nmero consecutivo, seguido generalmente del nombre del servicio que afectan, el nmero secuencial es simplemente el orden en que se leeran los scripts, primero los K comenzando con el 01 y haca adelante y despus los S. Entonces si por ejemplo no queremos que se inicie el samba en el nivel 3 bastara con borrar su enlace en este directorio: #> pwd /etc/rc.d/rc3.d #> rm S54smb
24
Con la opcin --list nos da una lista completa de todos los servicios instalados y para cada nivel si arrancar (on) al entrar a ese nivel o se detendr (off) o simplemente no se iniciara. Ntese que al final de la lista vienen los servicios que dependen del superservidor xinetd.
25
26
Pues te muestra los procesos de tu usuario, pero permite parmetros para mostrar ms datos. Por ejemplo "pues -ef" te mostrara en versin larga todos los procesos del sistema.
Si lo que buscas es saber quien gasta ms o menos CPU o memoria, entonces es mejor utilizar "top". Te muestra una lista de los que ms CPU utilizan que se actualiza automticamente. Una vez arrancados permite cambiar el orden de la lista, matar procesos, etc.
Te recomiendo que consultes las maginas del man "man pues" y "man top" para tener ms informacin de las posibilidades (que no son pocas).
27
Esta es una excelente herramienta aunque ustedes lo pueden hacer de la forma mas conveniente. Como comandos rpidos y ms tiles podemos utilizar:
ps: el comando estndar, lista los procesos con sus datos de usuario, tiempo, identificador de proceso y lnea de comandos usada. Una de las opciones :utilizada es ps ef, pero hay muchas opciones disponibles (ver man). top, htop: una versin que nos da una lista actualizada a intervalos. kill: permite enviar seales a procesos como, por ejemplo, la de terminacin kill -9 PID,donde indicamos el identificador del proceso. til para procesos con comportamiento inestable o programas interactivos que han dejado de responder.
28
2 Forma: Forzar el cierre En Gnome tenemos la posibilidad de aadir a nuestro panel un botn para forzar el cierre de una aplicacin. Para agregarlo a nuestro panel, y tenerlo siempre a mano, tan solo tenemos que hacer click derecho sobre el panel donde deseamos situar el botn y click en Aadir al panel. En la ventana que se abre buscaremos Forzar el cierre, y posteriormente pulsaremos Aadir.
29
Si se nos vuelve a colgar una ventana de una aplicacin, solo tenemos que hacer click en el icono de Forzar cierre y a continuacin en la ventana que haya dejado de responder. 3 Forma: xkill Abrimos la consola y tecleamos: xkill El puntero del ratn cambiar a una forma de X. Ahora haremos click en la ventana que se haya colgado o que nos est dando problemas. 4 Forma: kill Personalmente, esta es una de las mejores formas, ya que permite matar procesos incluso aunque no tengan ningn elemento visible en el escritorio (como una ventana, etc.).
30
Como podemos observar, este comando nos ofrece informacin sobre cada uno de los proceso que se ejecuta en nuestra computadora: El usuario al que pertenece el proceso, la carga de CPU, su nombre, etc. Para terminar la ejecucin de un proceso, tan solo debemos conocer su PID y teclear en consola: kill PID_del_proceso. Vemoslo con un ejemplo:
31
Como vemos ya no se encuentra activo en la barra lateral, ni en la lista de procesos. 5 Forma: killall En ocasiones, una aplicacin dispone de varios procesos activos (varios PID), y para finalizarla es necesario utilizar varias veces el comando kill. En estas ocasiones podemos utilizar el comando killall, el cual finaliza todos los procesos que abre un comando. killall recibe como parmetro el CMD de la aplicacin: killall CMD 6 Forma: pkill pkill es similar a kill pero ms fcil de utilizar, ya que usa como argumento el nombre del proceso: pkill nombre_del_proceso Por ejemplo: pkill firefox La tecla Tab (tabulador) puede servinos de ayuda para completar el nombre del proceso.
32
Y ya se ha creado nuestro nuevo usuario Marcos Nolasco, si es que queremos ver los usuarios en el directorio home, solo tecleamos el siguiente comando:
Y si queremos ver de manera grafica, nos vamos a carpeta personal, despus en sistemas de archivos damos click en home y nos aparecer esta pantalla:
33
34
Cambiar contraseas con passwd Crear al usuario con useradd es el primer paso, el segundo es asignarle una contrasea a ese usuario. Esto se logra con el comando passwd que permitir ingresar la contrasea y su verificacin:
En este caso cambiamos la contrasea de nuestro usuario actual. A continuacin te presento un resumen de los comandos y archivos vistos en este tutorial ms otros que un poco de investigacin.
35
36
Anteriormente cree un grupo con el nombre de servidores, ahora modificamos por otro nombre que ahora es servidores2. Eliminando grupos: Por ltimo, vamos a ver como se eliminan los grupos de usuarios que ya no necesitamos. Utilizaremos para ello el comando groupdel o delgroup, como se muestra a continuacin, aqu eliminamos el grupo que acabamos de crear ya que no tenia agregado aun ningn usuario y no hacamos uso de l.
Cmo cambiar de propietario y grupo a nuestros ficheros: Queda ahora conocer como hacer propietario de un archivo o directorio a un usuario, o hacer que este fichero sea propiedad de un grupo. Bien este es otro tema que tiene igual de importancia saberlo, asi como las dems. Para ello existen los comandos chown y chgrp. El primero cambia de propietario a un fichero existente de esta forma: [chown] [Usuario] [Archivo] Pues bien creamos un archivo nuevo llamado hola.txt
37
Si por ejemplo tenemos un fichero llamado hola.txt, que es propiedad de root y queremos cambiarlo a otro propietario como marcos, haremos: ]# chown marcos hola.txt
Veamos otro comando, CHGRP. Para cambiar de grupo a un fichero utilizaremos el comando chgrp de este modo: [chgrp] [Grupo] [Archivo] Si por ejemplo tenemos un fichero llamado prueba.sh perteneciente al grupo alberto: # ls -l |grep prueba.sh -rw-rr 1 root alberto 2 2008-04-10 15:41 prueba.sh y queremos que su grupo principal sea root, haremos: # chgrp root prueba.sh Vemos el resultado # ls -l |grep prueba.sh -rw-rr 1 root root 2 2008-04-10 15:41 prueba.sh Al igual que antes, aadiremos la opcin -R para que lo haga de modo recursivo: [chgrp] -R [grupo] [directorio]
38