Jay's zone

Login enhancement on Cisco equipment

Dupa cum se vede n-am mai scris pe aici de cam multa vreme, am mai avut din cand in cand cate un impuls de a scrie dar de fiecare data am amanat zicand ca prima data trebuie sa fac upgrade la wordpress care era deja in urma cu cateva revizii majore, iar de fiecare data cand vroiam sa fac treaba asta imi disparea cheful crezand ca va trebui sa fac upgrade-uri intermediare si alte mici workaround-uri (tiganii) pentru a ajunge la versiunea curenta. Dar se pare m-am inselat, upgrade-ul a fost destul de simplu (desi n-am verificat daca functioneaza chiar tot cum trebuie).

Anyway daca tot suntem aici ia sa discutam ceva din aria tehnica. Si anume cateva comenzi simple prin care putem imbunatati securitatea pe echipamentele Cisco.

Eu obisnuiesc sa schimb (mai ales pe servere) portul SSH default (22) pentru a scapa de acele scanari automate de pe host-uri sparte din China si alte chestii de genu’, dar cateodata nu e posibil sa faci asta asa ca ramai oarecum expus.

Cel mai simplu mod de a adresa aceasta problema ar fi printr-un access list.

Dar daca dorim acces din afara adreselor specificate in respectivul access-list e mai nasol (personal am patit sa vreau acces din alta parte…asa ca intra remote desktop de unde este acces…ah nu e pornit PC-ul, dai wake-on-lan…ah nu merge din cine stie ce motiv…etc  ).

Ok, deci in primul rand niste minime setari:

Default, echipamentele vin doar/si cu telnet activ, that’s probably bad, ca sa il dezactivam:

Rutãr(config)#line vty 0 4
Rutãr(config-line)#login local
Rutãr(config-line)#transport input ssh

Apoi trebuie generata o cheie (trebuie sa aveti setat ip domain-name altfel da o eroare):

Rutãr(config)#crypto key generate rsa
The name for the keys will be: Rutãr.JayZone.eu
Choose the size of the key modulus in the range of 360 to 2048 for your
General Purpose Keys. Choosing a key modulus greater than 512 may take
a few minutes.

How many bits in the modulus [512]: 2048
% Generating 2048 bit RSA keys, keys will be non-exportable…

Acum ca SSH este activ, este recomandabil sa il fortam sa functioneze doar pe versiunea 2 si de asemenea ar fi bine sa fie setat si un time-out la autentificare:

Rutãr(config)#ip ssh version 2
Rutãr(config)#ip ssh time-out 60

Iar pentru a crea usere cu care ne putem loga:

Rutãr(config)#username gigel privilege 15 secret 0 ParolaMeaNecriptata

Urmatoarea comanda face ca echipamentul sa intre in “quiet mode” adica nu mai primeste cereri de autentificare daca intr-un anumit interval au fost un anumit numar de tentative esuate:

login block-for nr-secunde attempts nr-tentative within nr-secunde
practic:
Rutãr(config)#login block-for 300 attempts 3 within 30
deci asta inseamna ca daca sunt 3 tentative in 30 de sec intra in quiet mode pt 5 minute

Partea nasoala la asta, este ca odata ce se intra in quiet-mode nu blocheaza doar adresa atacatorului ci intra intr-un fel de lock-down global si nu mai accepta login de la nimeni.
Pentru a rezolva aceasta problema, in caz ca avem anumite retele “trusted” putem face ca de pe acestea sa fie permis oricand login. Trebuie doar sa definim aceste retele intr-un access-list.

Rutãr(config)#ip access-list standard PERMIT-SSH-ANYTIME
Rutãr(config-std-nacl)#remark *** ACCESS LA SSH LA DISCRETIE :) ***
Rutãr(config-std-nacl)#permit 81.196.172.0 0.0.0.255
Rutãr(config-std-nacl)#permit 10.123.0.0 0.0.0.128
Rutãr(config-std-nacl)#exit

Apoi setam:

Rutãr(config)#login quiet-mode access-class PERMIT-SSH-ANYTIME

Pentru a verifica setarile:

Rutãr#show login
A default login delay of 1 seconds is applied.
Quiet-Mode access list PERMIT-SSH-ANYTIME is applied.

Router enabled to watch for login Attacks.
If more than 3 login failures occur in 30 seconds or less,
logins will be disabled for 300 seconds.

Router presently in Normal-Mode.
Current Watch Window
Time remaining: 13 seconds.
Login failures for current window: 0.
Total login failures: 21.

Iar ca sa vedem o lista cu ultimii 50 de atacatori si username-urile cu care au incercat sa se logheze:

Rutãr#show login failures

De asemenea s-ar putea sa observati ca a aparut din senin un nou access-list care arata cam asa:

Rutãr#show access-lists
Extended IP access list sl_def_acl
10 deny tcp any any eq telnet log
20 deny tcp any any eq www log
30 deny tcp any any eq 22 log
40 permit tcp any any eq 22 log

Acesta este generat automat si aplicat cand se intra in quiet-mode.

There you have it, echipamentul vostru cisco este putin mai secure.
Ca fapt divers, in timp ce scriam postul asta cineva incerca sa se logheze pe routerul meu, primul username incercat fiind “root” evident, iar a doua tentativa a fost, atentie…nu cu “test”, “ftp” “www” sau alte username-uri comune ci “georgeta”.
Da, deci nu toti “hacerii” sunt din categoria alora care sparg NASA :)

3 Responses

  1. Zeno PopoviciNo Gravatar Says:

    Welcome back :)

    Mah de ce nu scrii chestii de astea si pe blog-ul CCom? :)

    Z.

  2. JayNo Gravatar Says:

    pai am si uitat de el, da faceti si voi o tema calumea pt el ca ultima data era pe default :)

  3. gigelNo Gravatar Says:

    lolz

Leave a Comment

Please note: Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.