Shells Comandos Linux II

Publicado en [Linux] el Agosto 27, 2008 por kernelstack

Buenas,

Bueno en este tutorial pondre comandos de la shell de linux en referencia a :

- Usuarios.
- Grupos.
- Permisos.
- Cambiar el usuario propietario.
- Cambiar el grupo propietario.
- Control de Procesos.
- Edicion de Texto.

[Comandos] :

Usuarios :

adduser [ Agrega Usuario]
deluser nombreDelUsuario [ Eliminar Usuario]
passwd [Cambia la clave Root]
passwd nombreDelUsuario [Cambia la clave de un usuario Especifico]
su nombreDelUsuario [Ideal para ver archivos de otros usuarios exceptuando Root]
sudo comando [Para ejecutar comandos como root sin comprometer datos]
* Para ejecutar sudo debe estar regristrado en sudoers.
root,miguel ALL=(ALL) ALL Con esto lo añadimos con lo anteriormente dicho.

Grupos :

addgroup [Para crear un grupo nuevo]
adduser nombreDelUsuario nombreDelgrupo [Agregar Usuario Existente a un Grupo]

Permisos :

ls -1 [Nos muestra permisos asignados]

-rw-r–r-r- 1 Andres usuarios 10

- R Lectura
- W Escritura
- X Ejecucion
- D Directorio

Cambiar Usuario Propietario :

chown nombreDelUsuario archivo [Cambiar Propietario Archivo]
chown andresgt test
ls -1

Cambiar el grupo propietario :

chgrp nombreDelGrupo de archivo [Cambiamos al Grupo Admin]
chgrp andres test

Cambiar los Permisos :

chmod cambios+/-permisos archivos [ Cambios Indica los permisos a modificar a U A G O por valores R w x , dependiendo del simbolo se añaden o se elimina]
Ej :
chmod a+rw prueba.txt

chmod g-x xmame [Elimina el permiso de ejcucion para el grupo en el archivo xmame]

chmod ug+w prueba.txt [ Añade permisos de lectura al usuario y grupo]

chmod g+w test
chmod o-r test
[Añadir permisos y eliminar lectura]

chown -R andres [Modificar todos los archivos y directorios recursivamente]

Control de Procesos :

ps [muestra los procesos de la sesion actual]

ps aux [ muestra todos los procesos con el campo PID y su # que se estan ejecutando en el PC ]

ps aux grep andres [Procesos iniciados en un usuario]

top [Listado que se actualiza continuamente]

kill -9 numeroDelProceso [Eliminar Procesos]

Edicion de Texto :

apg-get install joe [Instalar Editor ]

joe nombreDelArchivo [Para abrir un archivo o crearlo]

Combinanciones de joe :

Ctrl+k+d = Guarda el Archivo
Ctrl+k+f = Busca una Cadena Dentro del Texto
Ctrol+ = termina joe

Bueno esto han sido algunos comandos de shell en practica y un poco de teoria , en el siguiente articulo pondre algunos otros , quizàs mas basicos o quizàs mas avanzados.

Espero que les sirvan.

Saludos

PD : Informacion creada por mi , y soportada por google.

IPTABLES – Firewall Linux

Publicado en [Linux] el Agosto 27, 2008 por kernelstack

Buenas,

En esta oportunidad voy a hablar un poco sobre el firewall de Linux, hablaremos sobre algunos de sus comandos, que es, como funciona, y algunas otras cosas más.

IPTables: Es el Firewall de Linux, generalmente viene incluido en todas las versiones de Linux a partir de la versión 2.4, este trabaja con tablas, estas tablas contienen cadenas de reglas, Estas Reglas son para indicar el ingreso de que entra, que sale y que pasa por nuestro sistema, la tabla principal del sistema contiene 3 cadenas: INPUT, OUTPUT Y Forward.

(Su sitio oficial es http://www.netfilter.org/)

Aun que viene activado y esta en los sistemas linux apartir del 2.4 en adelante igualmente puede ser activado de la sigueinte forma :

service iptables start
chkconfig –level 345 iptables on

A continuación hablaremos sobre sus estructuras de comando y sus tipos de comandos de entrada para permitir o denegar algo.

Su forma básica es: iptables [definición] [cadena] [opciones] [acción]

Explicación de parámetros:

Definición : El parámetro definición viene concadenado con el parámetro cadena , pues ambos requieren de su uso doble para ejecutar parte de la función completa , hay varias opciones posibles de usar el parámetro la primera es A ( para agregar una nueva regla a la cadena ) D ( para borrarla ) o L ( para listar las reglas definidas) , pero este parámetro necesita a la vez una especificación de cadena , la cual es proporcionada por el parámetro opciones.

Opciones: En este parámetro definimos todos nuestros filtros de entrada o de salida de nuestra maquina, si queremos que la ip 10.0.0.1 tenga permiso de acceder a nuestra PC y por que puerto por ejemplo, o lo que salga de mi maquina a nuestra PC, o los parámetros definidos por puerto accesibles a nuestra maquina.

Acción: Este parámetro no sindica que hacer cuando una regla se cumple, si se permite, se niega, etc.

- [EJ]: iptables -A INPUT -p -tcp –dport 80 -j ACCEPT.

Ahora expliquemos esta regla:

(A) una regla para la cadena de entrada que esta seria INPUT, en esta definimos que acepte todo lo que entre por el puerto 80 en el protocolo TCP ( -p -tcp –dport 80 ) sea aceptado ( -j ACCEPT) , El parámetro –dport requiere ser usado siempre el parámetro -p tcp ( Por el Puerto)

Ahora bien , tenemos distintos casos por ejemplo uno con ICMP.

iptables -A INPUT -p icmp -j DROP.

Aquí vemos (A) ya sabemos que es una regla para la cadena de entrada INPUT , -p protocolo ICMP ( Este es el protocolo al cual se recibe los PINGS ) -j DROP , aquí le decimos que no Acepte ningún tipo de ping a nuestra PC exitosamente.

iptables -A OUTPUT -p tcp -d 10.0.0.11 -j REJECT

iptables -A OUTPUT -P tcp -d 10.0.0.11 –dport 80 -j REJECT

Ok aquí le decimos a nuestro que firewall en el primer caso que todo lo que se dirija para esa IP sea rechazado , TODO debido a que no definimos en que puerto , en el segundo caso le decimos que rechace todo lo que se dirija al puerto 80.

A simple vista podemos ver algunas reglas para nuestro firewall y políticas, pero algo que es debido saber que no podemos tener un orden establecido por nosotros de las reglas, si no un orden específico porque si no probablemente haya un mal funcionamiento , iptables lee la reglas de arriba hacia abajo :

iptables -A INPUT -p tcp –dport 21 -j ACCEPT

iptables -A INPUT -p tcp –dport 21 -j DROP

Tenemos estas 2 reglas , que sucede … bien como vemos son dos reglas contradictorios , lo que hace iptables lee las reglas de arriba hacia abajo entonces por tanto en este caso solo aceptara todo lo que entre por el puerto 21 (FTP) , y después no aplicara mas filtros igual , por tanto saltea la segunda regla.

Las políticas de acceso , son reglas predeterminadas , estas definen el acceso total al sistema o inacceso total al sistema , por tanto es un papel difícil , mi recomendación es que sea inacceso total al sistema , después poco a poco vamos armando nuestro firewall a nuestro gusto , agregando reglas ( como excepciones ) , lo único malo de esta política es el “trabajo” que podamos tener a la hora de que si es un usuario normal el que usa la PC , tendrá que abrir los puertos para el uso de programas multimedia , y p2p etc. , o si es un usuario regular o con conocimientos sabrá las brechas de seguridad que puedan existir en los programas y las consecuencias que pueda tener ciertos puertos abiertos.

Bien para definir políticas se usa el parámetro -P , EJ :

iptables -P INPUT DROP , en este caso se niega todo lo que ingresa al sistema.

iptables -P INPUT ACCEPT , en este caso se acepta todo lo que ingresa al sistema.

Bien haciendo un ejemplo de modo básico de estructura de firewall:

iptables -F
iptables -A INPUT -s 10.0.0.0/24 -p tcp –dport 80 -j ACCEPT
iptables -A INPUT -p tcp –dport 80 -j DROP

Bien esto es suponiendo que tenemos un servidor por ejemplo montado compartido con distintas conexiones 10.0.0.1 – 10.0.0.2 etc. , El servidor esta Corriendo con Apache en el puerto 80 , y lo que nosotros queremos hacer es que solo puedan entrar las IPs de nuestra red interna ( dado el caso que nuestro ISP nos permite el puerto 80 Abierto ).

Definimos Con estas políticas que acepte primero todo lo que entra y después no permita nada mas en el puerto 80 ( En este caso no se da que se salte la segunda regla , debido a que son reglas distintas).

Ok Básicamente con esto tenemos las reglas específicas para ya poner a disposición las entradas a nuestro sistema

Esta demás decir que al tipiar -L nos da una lista de reglas definidas ( esto lo indique al comienzo ) , es solo un recordatorio .

Bien Tienen FireStarter Para aquellos que no quieran tipiar , es digamos el modo grafico de IPTABLES , pero en esta oportunidad no hablare de este , simplemente que se defininen reglas por Status , Events y Policy , en Events Definimos nuestras mas reglas , y demás , bien podemos decir que es mas grafico y mas fácil su uso.

Tan solo esto es un tutorial básico sobre IPTABLES , sabemos que hay muchísimos parámetros , reglas , y conjugación ( por así decirlo) de políticas , esto tan solo es una introducción a las IPTables.

Espero que les haya gustado este artículo Sobre IPTABLES – SEGURIDAD en tu Linux.
Si quieren un Tutorial mas Completo desde 0 pueden usar el siguiente :

http://web.mit.edu/rhel-doc/4/RH-DOCS/rhel-sg-es-4/s1-fireall-ipt-act.html

Saludos

PD : Guiado y Basado en distintas fuentes y conocimiento propio.