Tríptico en QuarkXPress

Led Zeppelin
View SlideShare presentation or Upload your own. (tags: led zeppelin)

Calendario 2009 en QuarkXPress

Calendario
View SlideShare presentation or Upload your own. (tags: calendario)

jueves, 6 de mayo de 2010

Function Max & Min

Max ---> Determina el valor máximo del rango de datos seleccionado

Min ---> Determina el valor mínimo del rango de datos seleccionado

Format ---> Page. Permite modificar el formato de la hoja de cálculo de la misma manera que el menú de Printer Settings

martes, 27 de abril de 2010

Logical IF

Sintaxis: IF(Test; Then_value; Otherwise_value)

Ejemplo -----> IF(D2>80; "Bueno"; "Regular")

martes, 20 de abril de 2010

Procedimientos para cambiar el ancho de las columnas

1. Doble click entre las cabeceras de las columnas involucradas
2. Click y arrastro el cursor entre las cabeceras de las columnas involucradas
3. Menú Format ---> Column ---> Width

Desde el menú File en la opción de Printer Settings, podemos cambiar tanto el tamaño de la hoja como la orientación de la misma; y desde el menú edit en la opción de Headers & Footers podemos configurar el encabezado y los pies de página del documento.

Con la herramienta Borders, se puede asignar un tipo de borde específico a un rango de celdas delimitado.

En el menú data, podemos seleccionar la opción de sort, desde donde podemos ordenar los datos de la manera que queramos.

domingo, 18 de abril de 2010

Práctica en C# --> Cálculo de área y perímetro del círculo


De arriba hacia abajo:

* Class Círculo. Inicializa una nueva clase con el nombre de Círculo

* double Área (int r). Inicializa un nuevo método con el nombre de Área

* double a=Math.PI*Math.Pow(r,2). Inicializa una variable "a" de tipo double, la cual guardará el valor de la operación matemática de multiplicar el número Pi (3.14159...) por la variable "r" (especificada más adelante) elevada al cuadrado (.Pow)

* return a. Regresa el valor de la variable "a" calculada en este método a la pantalla.

[Nota] Los dos puntos anteriores representan una función [Nota]

* double Perímetro (int d). Inicializa un nuevo método con el nombre de Perímetro

* double a=Math.PI*d. Inicializa una variable "a" de tipo double, la cual guardará el valor de la operación matemática de multiplicar el número Pi (3.14159...) por la variable "d" (especificada más adelante)

* return a. Regresa el valor de la variable "a" calculada en este método a la pantalla

[Nota] Los dos puntos anteriores representan una función [Nota]

= A partir de este punto, el programa comienza su ejecución de manera normal =

* Console.WriteLine ("Ingresa el radio");

* int r = int.Parse (Console.ReadLine ());. Es aquí donde se inicializa la variable "r" que es utilizada en el método de Área y Perímetro en la clase Círculo

* Círculo c = new Círculo ();. Aquí se inicializa, como si fuera una variable cualquiera, una nueva clase Círculo, que ejecutará la clase de arriba incluyendo los métodos y sus funciones

* Console.WriteLine ("Área del círculo {0:n}\n",c.Área (r));. Imprime en pantalla el texto "Área del círculo" y además el resultado de llamar el método de Área ({0:n}\n) con su función. Al final se especifica la variable (r) porque es esa variable (int.Parse) la que se va a procesar en el método especificado

* Console.WriteLine ("Perímetro del círculo {0:n}\n",c.Perímetro (r*2));. Imprime en pantalla el texto "Perímetro del círculo" y además el resultado de llamar el método de Perímetro ({0:n}\n) con su función. Al final se especifica la variable (r*2) porque es esa variable (int.Parse) la que se va a procesar en el método especificado

* Console.ReadLine ();

jueves, 15 de abril de 2010

Programación Orientada a Objetos (POO)

La programación orientada a objetos es un paradigma de programación que usa objetos y sus interacciones, para diseñar aplicaciones y programas de ordenador. Está basado en varias técnicas, incluyendo herencia, abstraccion, polimorfismo y encapsulamiento. En la actualidad, existe variedad de lenguajes de programación que soportan la orientación a objetos. La programación orientada a objetos tomó posición como el estilo de programación dominante a mediados de los años ochenta, en gran parte debido a la influencia de C++, una extensión del lenguaje de programación C. Su dominación fue consolidada gracias al auge de las Interfaces gráficas de usuario, para las cuales la programación orientada a objetos está particularmente bien adaptada.

POO en lenguaje de programación C#.

C# es un lenguaje de programación orientado a objetos que utiliza clases y estructuras para implementar tipos como formularios Windows Forms, controles de interfaz de usuario y estructuras de datos. Una aplicación de C# típica se compone de clases definidas por el programador, junto con clases de .NET Framework.

C# ofrece varias maneras eficaces de definir clases, por ejemplo, proporcionar niveles de acceso diferentes, heredar características de otras clases y permitir que el programador especifique qué sucede cuando se crean o destruyen instancias de tipos.

OBJETOS ---> Los objetos son construcciones de programación que se componen de datos, comportamiento e identidad. Los datos del objeto se encuentran en los campos, propiedades y eventos del objeto; los métodos e interfaces del objeto definen los comportamientos del objeto. Los objetos tienen identidad, es decir, dos objetos con el mismo conjunto de datos no son necesariamente el mismo objeto.

En C#, los objetos se definen mediante classes y structs, que conforman el plano único a partir del cual operan todos los objetos de ese tipo.

MÉTODOS ---> Los métodos son un bloque de código que contiene una serie de instrucciones. En C#, cada instrucción se ejecuta en el contexto de un método.Los métodos se declaran en una clase o estructura especificando el nivel de acceso, el valor devuelto, el nombre del método y los parámetros de método. Los parámetros de método se incluyen entre paréntesis y separados por comas. Los paréntesis vacíos indican que el método no requiere ningún parámetro.

CAMPOS ---> Son objetos o valores contenidos en una clase o estructura. Los campos permiten a las clases y estructuras encapsular datos.Para mayor simplicidad, estos ejemplos utilizan campos que son public, pero esto no se recomienda en la práctica. Los campos generalmente deberían ser private. El acceso a campos por parte de clases externas debería ser indirecto, por medio de métodos, propiedades o indizadores.

FUNCIONES --> Una función es un módulo de un programa separado del cuerpo principal, que realiza una tarea específica y que puede regresar un valor a la parte principal del programa u otra función o procedimiento que la invoque.

La forma general de una función es:

Tipodato Nomfun(parametros)

{

cuerpo de instrucciones;

return [dato,var,expresión];

}

Donde tipo dato especifica el tipo de dato que regresará la función.

La instrucción RETURN es quien regresa un y sólo un dato a la parte del programa que la esté llamando o invocando, sin embargo es de considerar que RETURN puede regresar un dato, una variable o una expresión algebraica (no ecuación o fórmula) como lo muestran los siguientes ejemplos:

a) return 3.1416;

b) return area;

c) return x+15/2;

La lista de parámetros formales es una lista de variables separadas por comas (,) que almacenarán los valores que reciba la función; estas variables actúan como locales dentro del cuerpo de la función.

PROCEDIMIENTO ---> Un procedimiento es un grupo de instrucciones, variables, constantes, etc, que están diseñados con un próposito particular y tiene su nombre propio.

Es decir un procedimiento es un módulo de un programa que realiza tareas específicas y que no puede regresar valores al programa principal u a otro procedimiento que lo esté invocando.

Después de escribir un procedimiento se usa su propio nombre como una sola instrucción o llamada al procedimiento.

En C# Net su formato es void NomProc(){instrucciones;};

Un programa puede tener tantos procedimientos como se deseen, para hacer una llamada o invocación al procedimiento durante la ejecución de un programa sólo se deberá escribir el nombre del procedimiento y los paréntesis en blanco.

Fuentes:

* http://www.programacionfacil.com/csharp_net/start
* http://msdn.microsoft.com/es-es/library/67ef8sbd%28v=VS.80%29.aspx


martes, 13 de abril de 2010

NeoOffice

NeoOffice es un equivalente al Office desarrollado por Microsoft, puesto que contiene lo necesario para procesar textos, hojas de cálculo, páginas web, dibujo, etc. Además de que es un software de licencia libre.
NeoOffice proviene de OpenOffice, y presenta una gran capacidad de compatibilidad con archivos .docx y .doc, además de una interface más amigable.

Manipulación de Imágenes ---> NeoOffice presenta la posibilidad de manipular imágenes dentro de la hoja del procesador de textos, con las herramientas equivalentes al office de microsoft. NeoOffice también permite exportar los archivos generados como PDF protegidos con contraseña.

Spreadsheet ---> Similar a Microsoft Excel. Contiene:

Formula Bar ---> Contiene la llamada Name Box, Function Wizard, Sum, Input Line.

Al igual que cualquier hoja de cálculo, las filas se identifican con letras, y las líneas con números, siendo la intersección de éstas el nombre de las celda seleccionada.

lunes, 1 de marzo de 2010

Espacio De Nombres

Es una clasificación especial utilizada para agrupar un conjunto de clases y estructuras relacionadas, así como aislar ese grupo de nombres en conjuntos de datos. No se deben tener dos clases con el mismo nombre en un espacio de nombres, y pueden ser predefinidos o definidos por el usuario.

Sintaxis:

namespace NombreEspacio
{
// aquí van las clases del espacio de nombres
}

Clase. Unidad básica en la programación orientada a objetos. Todo programa en C# se organiza en clases que encapsulan datos y comportamientos.

Una clase se construye con la palabra seguido del nombre de la clase y el símbolo de inicio y final de un bloque para delimitar la codificación de sus miembros.

class NombreClase
{
// Aquí se codifican los miembros de la clase
}

Métodos para escribir datos

1. Write --> Escribe sin añadir el caracter de fin de línea a la cadena
2. WriteLine --> Sí añade el caracter del fin de línea a la cadena, de modo que lo siguiente que se escriba se colocará en la siguiente línea.

Ejemplo:
Console.Write ("Hola");
Console.WriteLine ("Pepe");
Console.Write ("Cómo Estás, ");
Console.WriteLine ("¿bien?");

Ofrecería este resultado en la consola:

HolaPepe
Cómo estás, ¿bien?


Métodos para leer datos

variable = Console.Read(); //Lee un caracter
cadena = Console.ReadLine (); //Lee una cadena


Variables y Constantes

Variable --> Condición con nombre en memoria donde se almacena un valor de un cierto tipo de dato y puede ser modificado. Las variables pueden almacenar cadenas, números y estructuras. Tiene un nombre (un identificador) que describe su propósito.

Constante --> Variable cuyo valor no puede ser modificado


Tipos de Números

Números Enteros --> Probablemente el tipo de dato más familiar identificado con la palabra reservada int

Números Reales --> Números decimales o números muy grandes

Caracteres --> Cualquier elemento de un conjunto de caracteres o alfabeto (letras, dígitos, símbolos y signos de puntuación)

domingo, 28 de febrero de 2010

jueves, 25 de febrero de 2010

SSH (Secure SHell)

Es un programa que permite la conexión segura con otra computadora con el objetivo de compartir recursos.

La sintaxis es la siguiente:

* ssh usuario@computadora
* say Text. La computadora "controlada" habla


SFTP

Permite transferir archivos desde una computadora remota o a una computadora remota. Utiliza la misma sintaxis que SSH.

* get File Name. Copia el archivo seleccionado a la dirección en donde nos encontramos
* put File Name. Envía el archivo seleccionado a la ubicación en la terminal

miércoles, 24 de febrero de 2010

Antecedentes de C# (1970-Actualidad)

*Principio de la década de los 70s ----> El Prolog (o PROLOG), proveniente del francés PROgrammation en LOGique, es un lenguaje de programación lógico e interpretado, bastante conocido en el medio de investigación en Inteligencia Artificial.

*Año 1970 ----> Pascal es un lenguaje de programación desarrollado por el profesor suizo Niklaus Wirth a finales de los años 60. Su objetivo era crear un lenguaje que facilitara el aprendizaje de la programación a sus alumnos. Sin embargo con el tiempo su utilización excedió el ámbito académico para convertirse en una herramienta para la creación de aplicaciones de todo tipo.

*Año 1972 ----> C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell como evolución del anterior es decir el lenguaje B, a su vez basado en BCPL.

*Año 1973 ----> En 1973, el lenguaje C se había vuelto tan potente que la mayor parte del kernel Unix, originalmente escrito en el lenguaje ensamblador PDP-11/20, fue reescrita en C. Éste fue uno de los primeros núcleos de sistema operativo implementados en un lenguaje distinto al ensamblador.

*Mediados de la década de los 70s ----> Scheme es un lenguaje de programación. Es un lenguaje funcional (si bien impuro, ya que, por ejemplo, sus estructuras de datos no son inmutables) y un dialecto de Lisp. Fue desarrollado por Guy L. Steele y Gerald Jay Sussman en la década de los setenta e introducido en el mundo académico a través de una serie de artículos conocidos como los Lambda Papers de Sussman y Steele.

*Año 1978 ----> En 1978, Ritchie y Brian Kernighan publicaron la primera edición de El lenguaje de programación C, también conocido como La biblia de C. Este libro fue durante años la especificación informal del lenguaje. El lenguaje descrito en este libro recibe habitualmente el nombre de "el C de Kernighan y Ritchie" o simplemente "K&R C"

*Año 1979 ----> ADA Ada es un lenguaje de programación orientado a objetos y fuertemente tipado de forma estática que fue diseñado por Jean Ichbiah de CII Honeywell Bull por encargo del Departamento de Defensa de los Estados Unidos. Es un lenguaje multipropósito, orientado a objetos y concurrente, pudiendo llegar desde la facilidad de Pascal hasta la flexibilidad de C++

*Finales de la década de los 70s ----> A finales de la década de 1970, C empezó a sustituir a BASIC como lenguaje de programación de microcomputadores predominante.

*Década de los 80s ----> Bjarne Stroustrup empezó a trabajar con algunos compañeros de Bell Labs para añadir funcionalidades de programación orientada a objetos a C. El lenguaje que crearon, llamado C++, es hoy en día el lenguaje de programación de aplicaciones más común en el sistema operativo Microsoft Windows

*Año 1983 ----> C++ es un lenguaje de programación diseñado a mediados de los años 1980 por Bjarne Stroustrup. La intención de su creación fue el extender al exitoso lenguaje de programación C con mecanismos que permitan la manipulación de objetos. En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido.

*Año 1984 ----> MATLAB (abreviatura de MATrix LABoratory, "laboratorio de matrices") es un software matemático que ofrece un entorno de desarrollo integrado (IDE) con un lenguaje de programación propio (lenguaje M). Está disponible para las plataformas Unix, Windows y Apple Mac OS X.Entre sus prestaciones básicas se hallan: la manipulación de matrices, la representación de datos y funciones, la implementación de algoritmos, la creación de interfaces de usuario (GUI) y la comunicación con programas en otros lenguajes y con otros dispositivos hardware.

*Año 1987 ----> Perl es un lenguaje de programación diseñado por Larry Wall en 1987. Perl toma características del lenguaje C, del lenguaje interpretado shell (sh), AWK, sed, Lisp y, en un grado inferior, de muchos otros lenguajes de programación. Estructuralmente, Perl está basado en un estilo de bloques como los del C o AWK, y fue ampliamente adoptado por su destreza en el procesado de texto y no tener ninguna de las limitaciones de los otros lenguajes de script.

*Año 1989 ----> Tras un proceso largo y arduo, se completó el estándar en 1989 y se ratificó como el "Lenguaje de Programación C" ANSI X3.159-1989. Esta versión del lenguaje se conoce a menudo como ANSI C, o a veces como C89 (para distinguirla de C99).

*Año 1990 ----> En 1990, el estándar ANSI (con algunas modificaciones menores) fue adoptado por la Organización Internacional para la Estandarización (ISO) en el estándar ISO/IEC 9899:1990. Esta versión se conoce a veces como C90. No obstante, "C89" y "C90" se refieren en esencia al mismo lenguaje.

*Año 1991 ----> Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en sí mismo toma mucha de su sintaxis de C y C++, pero tiene un modelo de objetos más simple y elimina herramientas de bajo nivel, que suelen inducir a muchos errores, como la manipulación directa de punteros o memoria.

*Año 1995 ----> PHP es un lenguaje de programación interpretado, diseñado originalmente para la creación de páginas web dinámicas. Es usado principalmente en interpretación del lado del servidor (server-side scripting) pero actualmente puede ser utilizado desde una interfaz de línea de comandos o en la creación de otros tipos de programas incluyendo aplicaciones con interfaz gráfica usando las bibliotecas Qt oGTK+.

*Año 1999 ----> C# (pronunciado si sharp en inglés) es un lenguaje de programación orientado a objetosdesarrollado y estandarizado por Microsoft como parte de su plataforma .NET, que después fue aprobado como un estándar por la ECMA e ISO. En enero de 1999, Anders Hejlsberg formó un equipo con la misión de desarrollar un nuevo lenguaje de programación llamado Cool (C Orientado a Objetos). Este nombre tuvo que ser cambiado debido a problemas de marca pasando a llamarse C♯ aunque habitualmente se escribe C#.1 La biblioteca de clases de la plataforma .NET fue migrada entonces al nuevo lenguaje.

*Año 2000 ----> Tras el proceso de estandarización de ANSI, la especificación del lenguaje C permaneció relativamente estable durante algún tiempo, mientras queC++ siguió evolucionando. Sin embargo, el estándar continuó bajo revisión a finales de la década de 1990, lo que llevó a la publicación del estándar ISO 9899:1999 en 1999. Este estándar se denomina habitualmente "C99". Se adoptó como estándar ANSI en marzo de 2000.

*Año 2001 ----> C♯, como parte de la plataforma .NET, está normalizado por ECMA desde diciembre de 2001.

*Año 2005 ----> El 7 de noviembre de 2005 salió la versión 2.0 del lenguaje que incluía mejoras tales como tipos genéricos, métodos anónimos, iteradores, tipos parciales y tipos anulables.

*Año 2007 ----> El 19 de noviembre de 2007 salió la versión 3.0 de C# destacando entre las mejoras los tipos implícitos, tipos anónimos y LINQ (Language Integrated Query -consulta integrada en el lenguaje).

Elementos Léxicos de un Programa

1. Comentarios. Anotaciones para documentar el programa. Existen dos formas de colocar comentarios:

// Para un renglón ÚNICAMENTE
/* Para más de un renglón */

2. Palabras Reservadas. Palabras que tienen un determinado significado para el compilador

3. Identificadores. Nombres que los programadores dan a los diferentes elementos de un programa. Deben de tener las siguientes características:

1) Letras, Dígitos o Caracteres
2) Diferentes a las palabras reservadas
3) No comenzar con dígitos
4) Sensible a mayúsculas y minúsculas
5) Debe contener nombres significativos

4. Operadores y Punteros. Los operadores identifican las operaciones y los punteros agrupan o separan. { }

5. Literales. Valores constantes escritos directamente en el programa

6. Directivas del pre-procesador. Instrucciones al compilador. Comienza con signo de #


SENTENCIAS Y BLOQUES

La sentencia es la representación de una acción o secuencia de acciones ejecutables (operaciones) o no ejecutables (declaraciones).

Los bloques son grupos de sentencias delimitadas por llaves ({ })


MÉTODO MAIN

Es el punto de entrada al programa, y la ejecución siempre inicia en el método Main.
El método Main debe ser:

Declarado Static en una clase u estructura, debe regresar "void" o "int". Debe ser escrito Main, y puede no tener parámetros y recibir un arreglo de Strings

martes, 23 de febrero de 2010

Scripts

Un Script es un conjunto o secuencia de instrucciones almacenadas en un archivo que el sistema operativo puede ejecutar. Un Script puede contener:

1. Comandos de Unix
2. Variables, Constantes y cualquier otra herramienta de un lenguaje de programación

Un Script puede ser generado desde cualquier editor de textos.

echo hola > bienvenido En Nano
* Comando: ./file name. Ejecuta el script en la ubicación en la que nos encontrábamos.

Procesos

* Comando: ps -U alumno



PID. Process ID. Muestra los programas que se están ejecutando
CMD. CoManD. Muestra la ruta desde donde está corriendo dicho programa

* Comando: Kill PID. Finaliza el proceso especificado

* Comando: open /Applications/Calculator.app. Abre la aplicación especificada

lunes, 22 de febrero de 2010

C#

¿Qué es programar?

Programar es hacer que la computadora siga una serie de instrucciones bien detalladas. Usando un lenguaje de programación indicamos a la computadora qué tiene que suceder en cada momento, y cómo debe de reaccionar ante la interacción con el usuario.

Se conoce como programación de computadoras a la implementación de un algoritmo en un determinado lenguaje de programación, conformando un programa.

Programa

Concepto desarrollado por Von Newmann en 1946. Se define como la unión de una secuencia de instrucciones que una computadora puede interpretar y ejecutar. Y una o varias estructuras de datos que almacenan la información independiente de las estructuras que dicha secuencia de instrucciones maneja.

Según Niklaus Wirth, un programa está formado por algoritmos y estructuras de datos.


Lenguaje de Programación

Es la traducción del lenguaje "hombre" al lenguaje "máquina", el cual tiene un número limitado de datos y palabras.
Está constituido por un conjunto de reglas:

1. Sintácticas. Especifican la formación de instrucciones válidas
2. Semánticas. Especifican el significado de estas instrucciones

lunes, 15 de febrero de 2010

Cisco ACL

Paso 1: Limitar el cliente A a una subred

Se le solicita limitar el cliente A a solamente la subred a la cual se encuentra actualmente vinculado. El cliente A necesita poder acceder al servidor A, pero no necesita acceso a Internet ni al servidor B. ¿Dónde colocaría la lista de acceso?



Paso 2: Limitar el acceso del cliente A al servidor A, pero permitir el acceso al servidor B y a Internet

Se le solicita que limite el acceso del cliente B al servidor A, pero el cliente B necesita acceso a Internet y al servidor B. ¿Dónde colocaría la lista de acceso?



Paso 3: Permitir que sólo el cliente A acceda a los routers solamente con el SSH

Se le solicitó asegurar el acceso a los routers sólo para el cliente A, que será la PC de administración para esos routers. Usted quiere limitar el acceso del cliente A a sólo el SSH y evitar el acceso a Telnet. ¿Dónde ubicaría la lista de acceso?

Ayuda: Se necesita más de una interfaz para más de un router para controlar el SSH y el acceso a Telnet a los routers.

jueves, 11 de febrero de 2010

Imágenes Packet Tracer Chapter 8

Packet Tracer Activity 1


Packet Tracer Activity 2

domingo, 7 de febrero de 2010

Cisco Actividades Capítulo 8

Activity One. Differences between IPS & IDS



Activity Two. Phases of Disaster Recovery Plan

Cisco Cuestionario

1.- ¿Qué son las ACL?

ACL significa Access Control List, y es un concepto de seguridad informática usado para fomentar la separación de privilegios. Es una forma de determinar los permisos de acceso apropiados a un determinado objeto, dependiendo de ciertos aspectos del proceso que hace el pedido.

Las ACLs permiten controlar el flujo del tráfico en equipos de redes, tales como routers y switches. Su principal objetivo es filtrar tráfico, permitiendo o denegando el tráfico de red de acuerdo a alguna condición. Sin embargo, también tienen usos adicionales, como por ejemplo, distinguir "tráfico interesante" (tráfico suficientemente importante como para activar o mantener una conexión) en ISDN.

Fuente Info: http://es.wikipedia.org/wiki/Lista_de_control_de_acceso


2.- Proceso detallado de configuración de ACL

El proceso de creación de una ACL se lleva a cabo creando la lista y posteriormente asociándola a una interfaz entrante o saliente.
Configuración de ACL estándar

Router(config)#access-list[1-99][permit|deny][dirección de origen][mascara comodín]

Donde:

1-99 Identifica el rango y la lista.

Permit|deny indica si esta entrada permitirá o bloqueará el tráfico a partir de la dirección especificada.

Dirección de origen identifica la dirección IP de origen.

Mascara comodín o wildcard identifica los bits del campo de la dirección que serán comprobados.

La mascara predeterminada es 0.0.0.0 (coincidencia de todos los bits).
Asociación de la lista a una interfaz

Router(config-if)#ip access-group[nº de lista de acceso][in|out]

Donde:

Número de lista de acceso indica el número de lista de acceso que será aplicada a esa interfaz.

In|out selecciona si la lista de acceso se aplicará como filtro de entrada o de salida.
Ejemplo de una ACL estándar denegando una red:

Router#configure terminal
Router(config)#access-list 10 deny 192.168.1.0 0.0.0.0
Router(config)#access-list 10 permit any
Router(config)#interface serial 0
Router(config-if)#ip access-group 10 in

Se ha denegado al host 192.168.1.0 y luego se ha permitido a cualquier origen,
Posteriormente se asocio la ACL a la interfaz Serial 0.
Configuración de ACL extendida

El proceso de configuración de una ACL IP extendida es el siguiente:

Router(config)#access-list[100-199][permit|deny][protocol][dirección de origen][mascara comodín][dirección de destino][mascara de destino][puerto][establisehed][log]
100-199 identifica el rango y número de lista
Permit|deny: indica si la entrada permitirá o bloqueara la dirección especificada.
Protocolo: como por ejemplo IP, TCP, UDP, ICMP

Dirección origen y destino: identifican direcciones IP de origen y destino.

Mascara wildcard origen y mascara destino: Son las mascaras comodín. Las 0 indican las posiciones que deben coincidir, y los 1 las “que no importan”.

Puerto:(opcional) puede ser por ejemplo: lt (menor que), gt (mayor que), eq (igual a), o neq (distinto que) y un número de puerto de protocolo correspondiente.

Establisehed: (opcional) Se usa solo para TCP de entrada. Esto permite que él rafico TCP pase si el paquete utiliza una conexión ya establecida (por ejemplo posee un conjunto de bits ACK)

Log: (opcional) Envía un mensaje de registro a la consola a un servidor syslog determinado.

Algunos de los números de puertos más conocidos:

20 Datos del protocolo FTP
21 FTP
23 Telnet
25 SMTP
69 TFTP
53 DNS



Asociación de la lista a una interfaz

Router(config-if)#ip access-group[nº de lista de acceso][in|out]

Donde:

Número de lista de acceso indica el número de lista de acceso que será aplicada a esa interfaz.

In|out selecciona si la lista de acceso se aplicará como filtro de entrada o de salida.



Ejemplo de una ACL Extendida denegando un host hacia el puerto 80 de una red:

Router(config)#access-list 120 deny tcp host 204.204.10.1 any eq 80
Router(config)#access-list 120 permit ip any any
Router(config)#interface serial 1
Router(config-if)#ip access-group 120 in

Se ha denegado al host 204.204.10.1, (identificándolo con la abreviatura “host”) hacia el puerto 80 de cualquier red de destino (usando el termino any). Posteriormente se permite todo trafico IP. Esta ACL se asocio a la interfaz Serial 1 como entrante.
Aplicación de una ACL a la linea de telnet

Para evitar intrusiones no deseadas en las conexiones de telnet se puede crear una
lista de acceso estándar y asociarla a la Line VTY. El proceso de creación se lleva a cabo como una ACL estándar denegando o permitiendo un origen hacia esa interfaz. El modo de asociar la ACL a la Línea de telnet es el siguiente:

router(config)#line vty 0 4
router(config-line)#access-class[Nº de lista de acceso][in|out]



Como eliminar las listas de acceso

Desde el modo interfaz donde se aplico la lista:

Router(config-if)#no ip access-group[Nº de lista de acceso]

Desde el modo global elimine la ACL

router(config)#no access-list[Nº de lista de acceso]

Fuente Info: http://aprenderedes.com/2006/11/03/proceso-de-configuracion-de-acl/

jueves, 4 de febrero de 2010

Permisos

* ls -l ---> Brinda información detallada y extendida de los archivos y directorios en el lugar donde estamos.

De izquierda a derecha, lo que aparece representa lo siguiente:

* "d" (directorio) ó "-" (archivo)

* Siguientes 9 caracteres: Permisos

a) Permisos de Lectura. Letra r
b) Permisos de Escritura. Letra w
c) Permisos de Ejecución (Programa). Letra x

También hay tres perfiles de usuario, que son:

1) Dueño (del archivo o directorio)
2) Grupo
3) Todos los demás

Los tres primeros caracteres son del dueño, los siguientes tres pertenecen al grupo y los últimos tres pertenecen a los demás.

*Los permisos de lectura se asignan en los caracteres 1, 4 & 7 ("r"= permiso; "-"= no permiso)
*Los permisos de ejecución se asignan en los caracteres 3, 6 & 9
*Los permisos de escritura se asignan en los caracteres 2, 5 & 8

-------------------- Modos de Archivo --------------------------




r w x Valor r w x
- - - 0 0 0 0
- - sí 1 0 0 1
- sí - 2 0 1 0
- sí sí 3 0 1 1
sí - - 4 1 0 0
sí - sí 5 1 0 1
sí sí - 6 1 1 0
sí sí sí 7 1 1 1


-Modo 653 ---> Dueño= Permisos de Lectura y Escritura
Grupo= Permisos de Lectura y Ejecución
Los demás= Permisos de Escritura y Ejecución

* chmod "modo deseado" "File Name" ---> Cambia los permisos al modo especificado

martes, 2 de febrero de 2010

Más Comandos Unix

* echo "Content" > "File Name" ---> Crea un archivo en la ubicación actual con el nombre que se le asigne
* cat "File Name" ---> Permite ver el contenido de un archivo
* mv "File Name" "New Name" ---> Cambia el nombre al archivo selccionado inicialmente
* cp "File Name" "Copy Name" ---> Duplica un archivo, incluyendo el contenido
* rm "File Name" ---> Elimina un archivo definitivamente

Manejadores de Texto

a) Editores. Maneja el texto en su forma más simple; colores de fuente, fuentes, estilos, etc., no importan para nada. Por ejemplo, vi, emacs & nano (UNIX), text edit (MAC) ó block de notas (WINDOWS)

b) Procesadores. Manejan el texto de una forma que incluye estilos, fuentes, colores, etc. Por ejemplo, Pages & NeoOffice (MAC) ó Word (WINDOWS & MAC)

c) Maquetadores. Se dedican a cómo está dispuesto el texto en un archivo. Por ejemplo, QuarkXPress, Indesign, Publisher, etc.

vi emacs nano (curso)
Prestaciones 3 2 1
Facilidad de Uso 1 2 3

Nano. Presenta diferentes comandos precedidos por la tecla de ctrl, para realizar diferentes acciones, incluyendo la de salvar el archivo (ctrl+O) = Write Out

* nano "Nano File Name" ---> Abre el archivo seleccionado directamente en nano.

martes, 26 de enero de 2010

Comandos Unix (continuación)

date ---> Nos permite saber la hora y fecha del sistema

cal ---> Nos brinda, en forma de calendario, el mes actual

cal "month" year ---> Nos brinda el calendario requerido

echo "any word" ---> Unix responde con la palabra que se introduce
bc ---> Calculadora científica (SIN ESPACIOS)
(a=6
b=4
a+b
10)

quit ---> Nos permite salirnos de la calculadora

Redireccionamiento. Se trata de enviar la respuesta de un comando hacia un archivo usando el operador "mayor que" (>). Si el archivo no existe, el redireccionamiento lo genera. Sin embargo, si el archivo ya existe, se sobreescribe el contenido.

cat "nombre de archivo" ---> Sirve para ver qué es lo que tiene el archivo

cal >> fecha ---> Sirve para agregar información a un archivo sin sobreescribir el contenido del mismo

cat -n fecha ---> Sirve para ennumerar las líneas del contenido del archivo

jueves, 21 de enero de 2010

Directorio Raíz ---> Disco Duro

Home ---> Alumno

Disco Duro ---> Users ---> Alumno (Home) ---> Desktop, Movies, Documents

*cd desktop ---> Cambiamos a la ubicación del Desktop
*cd .. ---> Regresamos al directorio Home (alumno)
*cd / ---> No importa la ubicación actual, nos lleva directamente al directorio raíz

Ruta de Acceso desde el directorio raíz hasta el desktop ---> cd users ---> cd alumno ---> cd desktop
Ruta de Acceso desde el directorio raíz hasta el desktop ---> cd users/alumno/desktop

*mkdir "name" ---> Genera un nuevo directorio con el nombre que se introduce después del espacio en la ubicación en la que nos encontramos

*ls -l ---> Brinda información detallada de los archivos ubicados en el directorio donde nos encontramos.

De izquierda a derecha:

1. "-" o "d". "-" indica que es un archivo, mientras que "d" indica que es un directorio (folder)

2. Siguientes nueve caracteres. Son los denominados permisos; los tres primeros son los permisos para el dueño del archivo o directorio; los tres que siguen corresponden al grupo de trabajo en que está probablemente registrado el dueño; finalmente, los últimos tres son los permisos para todos los demás usuarios del sistema.

a) Permisos de Lectura. "r". Caracteres 1, 4 y 7 (dueño, grupo y los demás)
b) Permisos de Escritura. "w". Caracteres 2, 5 y 8 (dueño, grupo y los demás)
c) Permisos de Ejecución. "x". Caracteres 3, 6 y 9 (dueño, grupo y los demás)

Cuando una letra está presente, significa que se puede abrir el archivo o directorio, guardar información y ejecutar posibles aplicaciones.

Por ejemplo:

rwx ---> El dueño puede abrir el directorio, guardar información y ejecutar posibles aplicaciones.
r-x ---> El grupo puede abrir el directorio, NO puede guardar información, pero sí ejecutar aplicaciones.
r-x ---> Los demás usuarios tienen la misma restricción que el grupo.

martes, 19 de enero de 2010

Unix En Mac

Antecedentes:
Final Cut
*1971-Unix aqua
*1975-BSD Darwin
*1976-Apple Computer
*1984-Mac
*1985-NextStep
*1985-Steve Jobs ---> Next (Basado en BSD)
*1997-Steve Jobs ---> Mac OSX
*2000-Darwin/Mac OSX

La interfaz gráfica no fue idea original de Apple, sino de Xerox.

Terminal. Es una aplicación de interface de texto a la cual se le puede cambiar la apariencia.
Consta de una sola ventana en la cual se puede observar la última fecha en que fue abierta la aplicación, la computadora en la cual nos encontramos e inmediatamente después de ésta, aparece el Prompt o "Indicador de Comandos" (L504:-alumno |)

Después del Prompt siguen los comandos, que es la forma en que le indicamos al programa qué es lo que queremos:
Después de los comandos, y separados por espacios se encuentran los:

*Opciones
*Argumentos
*Operadores

Comandos.

Si se escribe un comando que no exista, Unix hace una notificación de error.
Los comandos deben ser aplicados seguidos de un Enter:

pwd ---> Indica en dónde estoy trabajando
ls ---> Muestra el contenido del lugar en el que nos encontramos
clear ---> Limpia la interface de la terminal
Up & Down ---> Permite ver el historial de los comandos que se han introducido en la terminal
man pwd ---> Significa "manual" y el comando en el que queremos ayuda. La letra "Q" nos permite salir del manual. Space Bar nos permite avanzar una página a la vez, mientras que "B" nos permite regresar una página a la vez. Las teclas Up & Down nos perimiten avanzar o retroceder un renglón a la vez.

lunes, 18 de enero de 2010

Variables Con Funciones Específicas

Dentro de los algoritmos, se encuentran los contadores y acumuladores de valores o interruptores. Estas son variables que auxilian el diseño de un algoritmo.

Contadores

Son variables que se utilizan para llevar un conteo dentro de un programa, el cual inicia generalmente desde cero. Las operaciones necesarias para un contador son:

1.- Asignar un valor de inicio que tomará este contador
2.- Incrementar de uno en uno o tomar un valor de incremento determinado

Acumuladores

Son variables que almacenan la suma o el producto de los elementos sucesivos. Esta operación siempre se debe inicializar.

jueves, 14 de enero de 2010

Sistema Operativo ......UNIX.........

Sistema Operativo: Es un programa o conjunto de programas que le permiten a un usuario trabajar con una computadora. De acuerdo a su interface, los sistemas operativos se clasificar en:

*Sistemas Operativos con interface de texto. Como Unix, IOS, MS-DOS
*Sistemas Operativos con interface gráfica. Como Mac, Windows, iPhone OS (Basado en Unix)

***Symbian, Web OS, Android

Unix

1969. Bell Labs (AT&T) presentan el SO denominado Multics, que debió de haber sido multiusuario, multitareas y con un orden jerárquico, sin embargo, no funcionó

1971. Un grupo de ingenieros entre los que estaban Ken Thompson & Dennis Ritchie, siguió el proyecto y lanzó Unix, que era multiusuario, multitarea y con sistema de archivos jerárquico.

1973. Unix reescrito en "C"; ganó portabilidad, podía ser corrido en cualquier sistema.

1975. La universidad de Berkeley en California presenta el BSD (Berkeley Software Distribution) que era la versión de Unix de la universidad. Esta versión de Unix es de las más importantes.

Comienza un "boom" de versiones.
1982. HP lanza HP/UX
Sun Mycrosystems lanza Sun OS (Solaris)

Algunos sistemas que están basados en Unix son:
AIX ---> IBM
BSD
Darwin ---> Apple
Linux
NextStep ---> Next
Solaris ---> Sun Microsystems
Fedora
Ubuntu
Red Hat
HP/UX

Algunas versiones de Unix son de uso gratuito, por otros hay que pagar para poder usarlos.

miércoles, 13 de enero de 2010

Ejercicio

1.- Análisis: ¿Que voy a hacer?
Comprar la despensa

2.- Definición: ¿A quién?
Para toda la familia

3.- Entradas: ¿Qué hay? ¿Con qué estoy contando?
Dinero, la lista de lo que hay que comprar

4.- Salida.
Tener la despensa completa

5.- Proceso
- Tomar llaves del coche y de la casa
- Salir de casa y cerrar con llave
- Subir al carro y encenderlo
- Manejar hasta el centro comercial
-Salir del auto
- Entrar al centro comercial
- Seguir la lista de despensas y buscar los articulos necesarios
- Ir a la caja y pagar

6.- Comprobación
Haber realizado las compras y verificar que no faltó nada

Fases de Solución de un Problema con Computadora

Ejemplo: Solución de una llamada telefónica

1. Análisis. ¿Qué voy a hacer?
Realizar una llamaa telefónica

2. Definición. ¿A quién?
Llamar a Pedro

3. Entradas. ¿Qué hay? ¿Con qué estoy contando?
Teléfono, Tarjeta, Número

4. Salida.
Establecer la comunicación

5. Proceso.
*Llegar al teléfono
*Verificar si hay fila
*Descolgar el teléfono e introducir tarjeta
*Escuchar tono
*Confirmar saldo
*Marcar número
*Escuchar tono

6. Comprobación.
Haber realizado la llamada

lunes, 11 de enero de 2010

Algoritmos

1.- ¿Qué es un algoritmo?
Un algoritmo es un conjunto finito de instrucciones o pasos que sirven para ejecutar una tarea o resolver un problema.

2.- Da tres ejemplos cotidianos de algoritmo
En la vida cotidiana empleamos algoritmos en multitud de ocasiones para resolver diversos problemas, como por ejemplo para poner una lavadora (conjunto de instrucciones pegadas en la tapa de la máquina), para tocar música (partituras), para construir un aeroplano a escala (expresados en las instrucciones), para hacer trucos de magia (pasos para hacer el truco) o, incluso, para hacer recetas de cocina (pasos de la receta).

3.- Características de un algoritmo
Las características fundamentales que debe cumplir todo algoritmo son:
·Un algoritmo debe ser preciso e indicar el orden de realización de cada paso.
·Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez.
·Un algoritmo debe ser finito. Si se sigue un algoritmo se debe terminar en algún momento; o sea, debe tener un numero finito de pasos.

La definición de un algoritmo debe definir tres partes: Entrada, Proceso y Salida. En el algoritmo de receta de cocina citado anteriormente se tendrá:

Entrada: ingrediente y utensilios empleados.
Proceso: elaboración de la receta en la cocina.
Salida: terminación del plato (por ejemplo, cordero).

4.- Símbolos que se ocupan en un diagrama de flujo.



5.- Reglas básicas para realizar un diagrama de flujo.
  • El diagrama puede desarrollarse en cualquier dirección, sin embargo es aconsejable que el desarrollo se realice en lo posible de arriba hacia abajo y de izquierda a derecha.

  • Debe procurarse que el símbolo de inicio se encuentre en la parte superior o superior-izquierda del diagrama.

  • El final se debe procurar que quede en la parte inferior o inferior-derecha. Si esto no es posible, debe separarse ligeramente del cuerpo del diagrama a fin de que sea fácilmente identificado.

  • Se pueden utilizar palabras para especificar la acción dentro del símbolo como es el caso de “Introducir A y B”, aunque esto es innecesario ya que con poner simplemente “A, B” se sobreentiende. Es el mismo caso de poner “Comparar si A>B” o simplemente “A > B”.

  • Es válido hacer que dos flechas apunten a un símbolo, aunque es más estético hacer que la segunda flecha apunte a la primera que si está apuntando al símbolo, tal como se hace en el caso del “FIN”.


Segundo Semestre ---> Diagramas de Flujo

Problema. El problema es un asunto del que se espera una solución, es el inicio de la investigación, ya que la cadena comienza con Problema ---> Investigación ---> Solución.

El problema responde al porqué y se refiere al objeto que provoca una necesidad en algún sujeto, el cual desarrollará una actividad para transformar la situación mencionada.

Para que exista el problema, la situación debe generar una necesidad en el sujeto, así como un problema científico es la consecuencia del límite de conocimientos actuales que genera la insatisfacción de las necesidades del sujeto.

El problema surge del resultado del diagnóstico de la situación del objeto en que se manifiesta un conjunto de fenómenos, hechos y procesos no explicables.

Conceptos de Programación.

Resolución de Problemas por computadora. El proceso de resolución de problemas conduce a la escritura de un programa y a su ejecución en la misma, aunque el proceso de diseño del programa es esencialmente un proceso creativo, y se pueden considerar una serie de fases o pasos comunes que generalmente deben seguir todos los programadores.

Método Científico. El término método es el camino por el que se llega a un resultado; el método científico es un proceso que se sigue en las ciencias para encontrar la verdad y enseñarla. La ciencia recurre a la postulación y prueba de hipótesis para buscar el conocimiento que explica los fenómenos del universo, predice sus relaciones mutuas y establece leyes generales.

Conceptos Generales.

1. Datos: Es una parte que describe un objeto específico.

2. Información: Conjunto de datos que generan un conocimiento en general.

3. Informática: Ciencia que se encarga del tratamiento sistemático y automatizado de la información mediante la creación de métodos y técnicas para el desarrollo de nuevos dispositivos.

4. Computación. Conjunto de disciplinas y técnicas desarrolladas para el tratamiento informático de la información mediante el uso de computadoras.

5. Instrucción. Orden que se da para ejecutar una acción, sinónimo de comando que realiza una acción en lenguaje de programación que puede entender y ejecutar una computadora.

6. Programa. Conjunto de instrucciones que indican a una computadora cómo realizar una operación.

7. Programación. Es la elaboración de programas.

8. Constantes. Es una variable cuyo valor puede determinar el compilador durante la compilación. Para que esto sea posible, se ha de cumplir que el valor de una constante no pueda cambiar durante la ejecución, por lo que el compilador informará con un error de todo intento de modificar el valor inicial de una constante.

Fases de solución de un problema con computadora.

1. Análisis del problema
2. Diseño de algoritmo
3. Codificación
4. Complilación y Ejecución
5. Verificación
6. Depuración
7. Documentación

Las dos primeras fases conducen a un diseño detallado descrito como algoritmo. Durante la tercera etapa, se implementa el algoritmo en un código escrito en un lenguaje de programación. En la etapa cuatro el programa se traduce, y en las siguientes dos etapas, el programa busca errores, haciendo por último la documentación.