Router# crypto key generate rsa label CS-KEYS modulus 2048 exportable
The name for the keys will be: CS-KEYS
%The key modulus size is 2048 bits
%Generating 2048 bit RSA keys, keys will be exportable….[OK]
Sharing my IT experience…
Router# crypto key generate rsa label CS-KEYS modulus 2048 exportable
The name for the keys will be: CS-KEYS
%The key modulus size is 2048 bits
%Generating 2048 bit RSA keys, keys will be exportable….[OK]
To test if our email server is working correctly we can use the following logic 🙂
1 – If we do now have sure of what is our email server address we can check it easily using nslookp.
Normally has any website our email server has to have a name associated to a ip address. If we want to confirm if the name is resolving to the correct ip address we will need to do a nslookup query.
Use the following syntax to confirm if the server has the correct address.
After this we can use this name to connect via telnet or resolve the name to a ip address.
now to start a telnet connection to the server we only need to write this on the command line:
1 – telnet mail.hjfr-info.com 25
if the connection is successfully established you should see something like this:
Now it is possible to begin sending a email.
The telnet also can be used to verify other things on the SMTP server.
For example we have the commands VRFY and EXPN that might be used to identify valid users.
VRFY = This command will request that the receiving SMTP server verify that a given email username is valid. The SMTP server will reply with the login name of the user.
ESPN = is similar to VRFY, except that when used with a distribution list, it will list all users on that list. This can be a bigger problem than the “VRFY” command since sites often have an alias such as “all”.
Os primeiros 4 são os que definem o “flow”
512 544 576 1024 1546 2048 2560 3072 3684 4096 4608
.000 .000 .000 .000 .000 .000 .000 .000 .000 .000 .000
IP Flow Switching Cache, 4456704 bytes
1 active, 65535 inactive, 1 added
32 ager polls, 0 flow alloc failures
Active flows timeout in 30 minutes
Inactive flows timeout in 15 seconds
IP Sub Flow Cache, 533256 bytes
1 active, 16383 inactive, 1 added, 1 added to flow
0 alloc failures, 0 force free
1 chunk, 1 chunk added
last clearing of statistics never
Protocol Total Flows Packets Bytes Packets Active(Sec) Idle(Sec)
——– Flows /Sec /Flow /Pkt /Sec /Flow /Flow
SrcIf SrcIPaddress DstIf DstIPaddress Pr SrcP DstP Pkts
Fa0/0 10.10.1.1 S0/0/0 10.10.2.2 01 0200 0050 255
R1# show ip flow export
Flow export v9 is enabled for main cache
Export source and destination details :
VRF ID : Default
Source(1) 1.1.1.1 (Loopback0)
Destination(1) 10.1.10.100 (99)
Version 9 flow records
0 flows exported in 0 udp datagrams
0 flows failed due to lack of export packet
0 export packets were sent up to process level
0 export packets were dropped due to no fib
0 export packets were dropped due to adjacency issues
0 export packets were dropped due to fragmentation fail ures
0 export packets were dropped due to encapsulation fixup failures
R1#
Ao contrário do que algumas pessoas pensam o STP toolkit não é nenhuma ferramenta disponível para nos ajudar com o protocolo STP.
São sim, um conjunto de extensões que a CISCO fez à sua implementação do protocolo para o tornar mais eficiente.
Spanning-Tree protocol permite que as redes da camada 2 do modelo de OSI (Layer 2) com redundancia funcionem em condições preveningo loops indesejaveis. Este algoritmo automaticamente calcula a topologia e decide quais as portas que devem ficar em standby para impedir loops na rede, garantindo assim uma maior eficiencia.
Por defenição o comportamento do protocolo é determinista ou seja nós sabemos exactamente como se deve comportar numa rede. Por vezes não o é, seja por alterações feitas na rede ou por aparelhos na camada de acesso que são controlados pelos utilizadores finais ou falhas de ligações.
Para optimizar a performance do protocolo a CISCO fornece o STP toolkit. Este conjunto de ferramentas permite optimizar e tornar mais seguras as redes L2 (Layer 2).
As ferramentas que fazem parte deste kit são:
PortFast – Faz com que as portas do equipamento entrem em estado forwarding imediatamente, passando assim os estados normais de aprendizagem. A porta configurada ainda faz parte da topologia STP e pode imediatamente transitar de estados diminuindo assim o tempo de convergencia. Podendo passar ao estado blocked se necessario. Pode ser activada em portas trunk Pode ter valores operacionais diferentes dos configurados.
notas:
BPDUGuard – Quando activa desliga a porta que recebe um BPDU (Bridge Protocol Data Unity). Permite uma maior segurança contra más configurações porque o administrador pode colocar a porta de novo a funcionar. Quando configurado ao nivel de uma porta coloca a porta imediatamente em estado desligado independentemente da configuração PortFast.
notas:
BPDUFilter – Impede uma porta de receber ou enviar BPDU
notas:
UplinkFast – Fornece Convergência depois de uma falha na ligação, permite balanceamento de carga com a utilização de grupos de Uplink.
notas:
RootGuard – Previne uma porta de se tornar uma root port ou blocked port.
Quando configurada numa porta e esta recebe um valor de BPDU superior ela passa imediatamente ao valor de de Root-Inconsistent (Blocked) state.
BackboneFast – Iniciado quando uma root port ou uma porta bloqueada recebe um BPDU de valor inferior de um designated Bridge.
Permite uma maior rapidez em caso de falha.
LoopGuard – Ajuda a prevenir “bridging loops” que pode ocorrer devido a falhas de ligações unidirecionais. Quando activado globalemte aplica-se a todas as ligações ponto a ponto. Detecta as portas em estado blocked e as root ports garantindo que continuam a receber informação das portas designadas do systema. Pode ser activado por porta. É autmaticamente aplicado a todas as intancias de VLAN’s activas no systema. Quando activado numa ligação Etherchanel pode afectar todas as conecções até que a conecção com problemas seja removida do link agregado.
Testar SMTP e utilizadores
Há imensas aplicações para testar portas de servidores, uma mais complexas outras mais simples.
Apesar do universo ter uma escolha não estava satisfeito.
Decidi criar a minha aplicação, como estava a tentar aprender Python decidi começar a fazer um simples esboço em Python.
Esta aplicação estabelece uma ligação á porta 25 (SMTP) e tenta verificar se um utilizador especifico existe.
Como entrada do scritpt recebe um ficheiro (smtpServers.txt) com uma lista de máquinas que queremos testar a porta 25 o retorno é feito para o ecrã.
Aqui fica o meu primeiro script em Python…
#!/usr/bin/python import socket import sys if len(sys.argv) !=2: print "Usage: SMTP_Test " sys.exit(0) #ReadFile with Machines f = open('../smtpServers.txt','r') lines = f.readlines() f.close for x in lines: #Create Socket print x s=socket.socket(socket.AF_INET, socket.SOCK_STREAM) #Connect to the Server connect=s.connect((x,25)) #receive Banner banner=s.recv(1024) print banner #VRFY a user s.send('VRFY ' + sys.argv[1] + 'rn') result=s.recv(1024) print result #close the socket |
Secure boot.
Aparentemente o windows 8 vai ter novas funcionalidades em relação ao boot.
É sabido que uma das grandes dores de cabeça em termos de segurança é o controlo da parte de boot do sistema operativo das nossas máquinas.
A Fase em que a BIOS acaba de entrar e o S.O. começa a arrancar é uma das mais criticas. É aqui que se pode subverter a segurança implementada no S.O. arrancando com outro S.O. que permita a corrupção do existente ou mesmo instalando aquilo a que vulgarmente se chama de root kit.
Com o windows 8 e as novas BIOS UEFI (Unified Extensible Firmware Interface) a Microsft veio tentar alterar o paradigma.
O UEFI inclui uma opção de secure boot para impedir “Boot Loader Attacks”.
Qualquer código que é carregado na fase de boot do sistema terá que estar identificado com uma chave de segurança permitindo ao UEFI bloquear qualquer tentativa de correr código não autorizado.
Os fabricantes O.E.M terão de implementar esta funcionalidade para obterem certificação do seu equipamento (autocolante de windows 8 compatible.)
Para o utilizador esta funcionalidade é muito boa, mas para o fabricante a funcionalidade também é excelente, porque passa a existir uma base de dados de chaves “Key Enrollment Key database (KEK)” onde a microsoft poderá realizar a actualização de chaves para novos S.O. mas também poderá revogar chaves para os seus sistemas operativos que terão sido comprometidos ou na minha opinião pirateados!
A forma de funcionar é simples, haverão várias bases de dados de chaves que serão consultadas no processo de boot.
Depois de validadas o windows arranca o software “Anti-Malware”.
Finalmente o windows arranca os “Kernel Drivers” e inicializa o “User Mode”
Mais informações em http://www.hjfr-info.com/Noticias/NoticiasRecentes.php
Esta tradução de endereços adiciona um nível de segurança na nossa rede pois impede a divulgação de endereços internos na rede externa.
Os dispositivos NAT também podem funcionar de forma inversa, traduzindo múltiplos endereços públicos para um ou mais endereços privados.
1 2 3 4 5 6 7 | enable configure terminal ip nat inside source static 192.168.1.2 209.200.160.100 interface fa 0/0 Interface com ligação ao interior ip nat inside interface fa0/1 Interface com ligação ao exterior ip nat outside |
1 2 3 4 5 6 7 8 9 | enable configure terminal access list 11 permit 192.168.1.0 0.0.0.255 Criação da lista de endereços que podem ser traduzidos pelo nat ip nat pool nomepool 209.200.160.100 209.200.160.110 prefix-lenght 24 conjunto de endereços externos que vão ser usados na tradução dos endereços internos. ip nat inside source list 1 pool nomepool associação dos endereços internos á pool de endereços externos int fa 0/0 interface da rede interna ip nat inside int fa 0/1 interface da rede externa ip nat outside |
1 2 3 4 5 6 7 8 9 | enable configure terminal access-list 1 permit 192.168.1.0 0.0.0.255 ip nat pool nomepool 209.200.160.100 209.200.160.100 prefix-length 24 ip nat inside source list 1 pool nomepool overload int fa0/0 ip nat inside int fa0/1 ip nat outside |
1 2 3 4 5 6 7 8 9 | enable configure terminal access-list 1 permit 192.168.1.0 0.0.0.255 ip nat pool nomepool 209.200.160.100 209.200.160.110 prefix-length 24 ip nat inside source list 1 pool nomepool overload int fa0/0 ip nat inside int fa0/1 ip nat outside |
Aqui ficam os tempos por defeito que podem ser alterados:
1 2 3 4 5 6 7 8 9 | enable configure terminal access-list 1 permit 192.168.1.0 0.0.0.255 ip nat pool nomepool 192.168.1.2 192.168.1.10 prefix-length 24 ip nat outside source list 1 pool address pool interface fa 0/0 ip nat inside interface fa 0/1 ip nat outside |
Mais informação sore o NAT
Para activarmos o SNMP no nosso equipamento Cisco é necessário escrever os seguintes comandos:
enable
configure terminal
snmp-server contact xpto at “numero telefone” (numero de contacto)
snmp-server location rua x (morada)
snmp-server chassis-id 123456 (numero de serie do dispositivo)
Configurar visualizações de SNMP.
snmp-server view ciscoview mib-2 included (criar e incluir uma visualização de SNMP (sub-tree))
Configurar uma comunidade SNMP
snmp-server comunity xpto ro (criação de uma view com permissões de leitura ao conteúdo total da MIB)
snmp-server comunity xpto2 view ciscoview (criação de uma view com permissões apenas para a “sub-tree” da MIB-2 definida anteriormente.)
Para configurar SSH num equipamento cisco sem hostname e sem domain name podemos recorrer aos seguintes comandos:
1 2 3 4 5 | enable configure terminal ip ssh rsa keypair-name ciscopair generate rsa usage-keys label ciscopair modulus 1024 ip ssh version 2 |
É uma forma de controlo de acessos que restringe o acesso aos recursos baseado-se nas funções dos utilizadores.
Este método de controlo pode ser utilizado pelas grandes empresas para atribuir acessos aos funcionários tendo por base a sua função.
Assim consegue-se cumprir as melhores recomendações de segurança segregando acessos e atribuindo privilégios de administração a quem de direito.
Para activar a funcionalidade num router ou switch cisco temos de seguir os seguintes passos:
1 – activar as “cli view’s”
2 – configurar as várias “cli views” para os diferentes administradores
3 – opcionalmente pode-se criar views para grupos diferentes de utilizadores com passwords diferentes para aceder a um “CLI” particular.
Comandos:
1:
Enable
Configure terminal
Enable view ( entra em modo root view que permite criar varias views)
2:
Parser view my-view ( criar um nome de view)
Secret xpto (atribuir um enable secret)
Commands exec include show access-list (especificar comandos no modo exec.)
Commands exec include configure terminal ( especificar comandos no modo exec.)
Commands configure include ip access-list extended (especificar comandos no modo de configuração)
Commands Ipneacl include all deny ( especificar sub comandos do modo de configuração)
Commands ipenacl all permit
As opções possíveis são:
Include – adiciona um comando especifico ou interface a uma view
Include-exclusive – adiciona um comando especifico ou interface numa view mas exclui o comando de todas as outras
Exclude – nega acesso ao comandos especificados.
All – funciona como wildcard.