Jump to content

!_30

Active Members
  • Posts

    606
  • Joined

  • Last visited

Posts posted by !_30

  1. Vedeti voi , acum voi intra intra si eu in detalii ( is beat mort ) , dar nu conteaza.

    Cum se zice femei is destule.Dar ganditi-va putin ( asta e cheia) . Daca tie chiar iti place de ea . am zis daca , nu ai vrea sa o ranesti nu ?

    Eu iti spun cu mana pe inima , o fata care te iubeste/intelege si tine la tine cu adevarat .. te va ierta si nu va pune la suflet.Trebuie sa stii ce sa-i zici.

    Oricum , iti spun eu , creierul uman e configurat , ca la orice atac sa destrame relatia.Daca ea afla de dincolo , se va supara.

    Daca ii vei spune si explica tu daca e .. va intelege.

    Chestia cu fetele , sunt mulioane de futut , dar cateva care chiar merita ..

    Bafta ! Hackingul ? nu combina aceasta arie cu cea a vietii ..

  2. Dude , a-i "hackui" computerul e cea mai penala idee.

    Exista : flopy - uri , CD-uri , DVD-uri , tape-uri , stick-uri de memorie .

    Exista : recovery , backup .

    Daca-l duce putin capul , te fenteaza.

    Ai fost sfatuit sa il atragi in diferite curse.Fratele meu , net-ul ( numit generic ) e o lume incontestabil falsa , virtuala.

    Nu-ti rezolva problemele de "viata" in irealitate.Daca tipul vrea , poate sa te pacaleasca , asa-s romani.

    Oricum , daca tu chiar tineai la tipa aia , nu zic sa nu te f**i cu alta ( doamne fereste ) , dar da-o in p**a mea , sa nu te mai vada altcineva.

    Cand vrei p**a de la ala , asigura-te , prima data.In rest e o chestie de imaginatie.

    Daca chiar o iubesti , spune-i tu primu ei , nu lasa sa afle de la altu .. oricat te-ar iubi , orice atac duce la "distrugerea lenta/rapida" a relatiei.Vorbeste cu tipu , face - to - face.

    Data viitoare , take care !

  3. Salut !

    Voi prezenta o problema "frecventa " , care apare la incepatori cat si la ceilalti , cand vine vorba : " A aparut kernelul ala nou " vanilla " si vreau sa-l am si eu pe server.( Desigur in paralel cu cel vechi , ca la posibile "erori - kernel panic" sau diversitati .. sa putem intra pe cel vechi.

    Am auzit ca aceasta problema este complicata , si useri noi au probleme si o lasa balta.Nu este asa , cel mult in 2-3 ore , daca-ti bati capul , ( + download peste 30 de mega de sursa kernel ) , scapi si de erori , kernel panic-uri si restu , si poti boota frumos dupa kernelul nou.

    Pentru a putea intelege mai bine , trebuie facute niste referiri la kernel , rolul acestuia si unele lucruri , care sunt intelese uneori gresit de "incepatori".

    Ce este defapt kernelul ?

    Asta e intrebarea , pe care multi o rateaza din start.

    -kernel este nucleul sistemului de operare . E bine , mai departe , adica ?

    -Practic , nucleul , adica kernelul este o aplicatie ( low-level ) care are rolul de a "sa zicem" controla , oferi access la hardware.Cineva trebuia sa faca asta.

    -Practic daca citim definitia sistemului de operare , observam ca kernelul Linux ( numit nativ Linux la inceput ) este un OS ( mai primitiv ) care nu are sofisticarii , ci doar face treaba de OS ( no interfata grafica , etc ).

    -Fara sa intram in detalii distro-urile ( distributiile Linux ) gen Fedora , Ubuntu ,Debian ( am ales mai cunoscute ) , care sunt UNIX-like ( deoarece nu au cumparat / platit numele ) , rezolva completarea nucleului ( OS-ul ) , adaugandu-i pachete , GUI , posibilitati ce fac ca acesta sa fie mai usor de folosit si manuit.GUI este decat un pachet , aplicatie care ne ofera o interfata vizuala acceptabila , infara consolei.

    Ne tot tinem la vorba , hai sa trecem la compilarea propiu-zisa.

    Ce avem de facut

    Practic prima data trebuie sa ne hotaram daca vrem defapt sa punem acel kernel nou , are vrun rost ? ne ajuta ? nu ne ajuta .. vrem doar sa invatam ?

    Sa zicem ca am trecut peste prima parte ( peste care multi sar ) , si am ajuns la partea a doua.E relativ simplu , daca vrem un nou kernel ( fie alternativ ) , pe sistemul nostru , avem nevoie de o sursa de kernel. ( Daca vrem sa instalam o aplicatie , intai downloadam pachetul ).

    De unde ? ( Avem destule surse de kernel ) . Voi oferi mai jos niste link-uri :

    http://www.linuxhq.com/ ( kernelul curent adica , chiar de azi 20-septembrie este : 2.6.18 si-l puteti lua de aici :

    ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.18.tar.bz2

    Daca nu vreti cel curent , puteti alege dintr-o arhiva impresionanta de kernele 2.6 de aici : http://www.linuxhq.com/kernel/v2.6/index.html

    il puteti gasi si aici : http://kernel.org

    Voi da exemplele pe kernelul de azi 2.6.18 - 20 sept 2006

    Download kernel

    Ca sa nu ne chinuim prima data dam un cd /usr/src ( pentru a intra in directorul propice de download kernel ) apoi ( presupunem ca dorim ultima versiune 2.6.18 ) il downloadam in /usr/src unde suntem acum :

    wget ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.18.tar.bz2 Atentie : acest tutorial e de acum exemplat pentru versiunea de kernel 2.6.18 , si downloadul acestei versiuni , este un exemplu , daca doriti alta versiune , nu ezitati sa incluiti dupa model , nu poate fi greu , nici pentru un incepator.

    Fitit sigur ca aveti macar minimul necesar de programe pentru a putea compila kernelul cel nou

    - GCC , este neaparat , deoarece este folosit la compilarea propiu-zisa a noului kernel .

    Daca folositi Debian folositi comanda :

    apt-get install gcc pentru a downloada si instala gcc.

    Daca folositi Fedora folositi comanda :

    yum install gcc

    Desigur , se poate instala si in alte moduri , dar am dat un exemplu rapid , pentru ca incepatori sa nu aiba probleme inca de aici ( Desi practic , GCC-ul ar trebui sa fie deja instalat , daca este e bine ).

    Dupa ce ati downloadat sursa kernelului decompresati ( pwd arata tot /usr/src cu bzip2 -d [sursa kernel.tar.bz2] apoi dezarhivati cu tar -xvf [sursa kernel.tar] apoi intrati in acest director cu cd [sursa kernel] .Parantezele patrate nu se pun :P.

    Configurare kernel

    Acum ii configuram optiunile , care vrem sa le includa noul kernel .

    Folosim comanda make menuconfig din directorul sursei ultimului kernel , care va face cateva chestii apoi va aparea o fereastra , modificam pe acolo apoi dam exit de jos de tot , si daca cere save , ii dam save ( la sfarsit ).

    Mai sunt si alte comenzi gen : make xconfig , din GUI pe KDE sau make gconfig , din GUI pe Gnome.

    Compilare propiu-zisa

    Acum urmeaza compilarea propiu-zisa a kernelului cu urmatoarele comenzi , in ordine :

    * make

    * make modules

    * make modules_install

    * make install ( instalare proiu-zisa kernel ).

    Daca pe parcursul acestor operatii intampinam erori , care duc la stoparea imediata a proceselor de compilare / instalare , trebuie sa verificam daca avem programele necesare pentru noul kernel.Sunt mai multe de discutat si nu intru in detalii , se gasesc ..

    Comenzile de mai sus vor instala trei fisiere in /boot . Uitati-va si veti observa.

    Daca folositi GRUB dati update-grub , restart si Evrika , new kernel .Daca folositi lilo , poate va descurcati si voi , v-am dat greul , ramane pe voi ..

    Spor !

    :)

  4. P1tbull;20935 wrote: Deci vreau C ptr Win.... si mai intai vreau sa incep cu aplicatii simple si apoi sa trec la lucrurile mai complicate(keylogere si alte lucruri) poate imi recomanzi ceva dupa ce sa invat.....ce ti s-a parut tie k explica super bine si retii usor..:)

    Deci , cum mi-a spus mie cineva , toata puterea C-ului sta in programare pe shell UNIX , Linux

    Problema sta in felul urmator , majoritatea programeaza C , etc.. in Windows , care insa este mult mai limitat si nu este asa compatibil.Pe cand UNIX e scris peste 90 % in C , programarea pe shell UNIX este o idee excelenta.Portabilitate , o sa-ti placa.

    Dupa mine , programare pe Windows , mi se pare ca suck's , o sa -mi sara in cap lumea , insa pe UNIX ai mult mai multe posibilitati.IN fine.

    Fratele meu , nu ai cum sa inveti sa faci aplicatii simple la inceput, Intai trebuie sa intelegi baza , cum merge sistemul apoi , dureaza .Keylogere , trojeni ? Ha ha ... cand faci primul trojan , contacteaza-ma.E munca multa , trebuie cunostinte din multe domenii , pentru un asemenea task.De ce ? Nu e doar programare . E mult mai mult , e retelistica , trebuie sa stii cum functioneaza protocoalele , socketurile , anumite functii , sa programezi , si e multa mancare de peste acolo , deci e greu , dar nu imposibil.Trebuie sa stii ca altfel , zici decat : fuck off. ( ca multi ) .

    Majoritatea sunt in engleza , si cer ca suporta Pascal , care il considera ei ca un basic.

    Daca doresti un material/materiale bune de inceput , mail : multicos3

    Bafta si spor ! nu uita un asemenea lucru cere mult timp , daruire , dorinta si multa intelegere. Nu prea am timp acum , fiind ocupat cu servaraie ..:D

  5. ori fiindca era prea mult de citit ..ori lipsa de chef....da acum cum l-am citit....

    Lenea frate ...

    .invat mai intai pascal si apoi trec la c ...sau invat direct C

    Pai la scoala se face in general Pascal , dar intr-o masura si C.

    Stiind Pascal , pentru mine unul a fost super usor sa invat C.

    Depinde pe ce OS vrei sa inveti C , pentru ce vrei sa inveti ? adica pentru aplicatii simple , care se fac la scoala in Pascal , sau clienti servere , keylogere si alte lucruri.

    E mult de explicat si intrebarea ta e mega-vaga .

  6. Niste mentiuni pe care le am de facut :

    IQ-ul "aproape corect" se face in functie :

    *nu se folosesc alte materiale ajutatoare ( gen calculator , dictionare , Google sau alte mijloace de inspiratie ).

    *nu se petrce o zi la acelasi test pentru a putea obtine nota maxima , se incearca cat mai repede posibil , depinde si de perspicacitate.

    *nu se face testul de mai multe ori ( stiind in prealabil raspunsul)

    *se incearca a fi cat mai corecti cu putinta si de abia apoi va proclamati "belowww average"

    *se induc scuze pentru cei care au respectat conditiile .

    ;D

  7. Ce drq se intampla aici ?  ;D

    UIn alt imbecil ?

    Bai zexe , explica-ne si noua .. eu insa nu vad nimic de ras , o fi vechi si stiti voi ce si cum ?  :(

  8. Vom vorbi in acest tutorial despre cooki-uri , rolul lor , ciordeala lor , si multe altele.

    Ce este un HTTP cookie ?

    -o bucata de "text" trimisa de web-server la web-browserul clientului.

    -desi unele antispyware/AV-uri le detecteaza pe unele "cooki-uri" ca tracking cookie de exemplu, ele nu sunt nici virusi , nici spyware , just bucati de text.. ele nu fac nimic dar ..

    La ce sunt cele mai folosite ?

    *autentificare

    *tracking

    *menajarea informatii specifice user

    *preferinte site per user ..

    Care ar fi problema ?

    Siguranta pe net :limba: , posibile atacuri si multe alte chestii care probabil ati mai auzit.

    Suportare cookie's de browsere

    Majoritatea browserelor suporta cooki-uri.

    Ati observat ca unele "default" , te intreaba la fiecare cookie in parte daca poate fi acceptat sau nu.EX : "Konquier".

    Pentru a vedea cooki-urile atasate unui anumit site , pe browserul tau , intrati pe site , logati-va , si apoi in loc de URL-ul site-ului scrieti :

    javascript:alert("Cookies: "+document.cookie)

    -veti vedea cooki-urile atasate site-ului.

    Se pot folosi cooki-urile la atacuri ?

    DA !

    Un mic exemplu : sa presupuem ca v-ati autentificat , ati primit cooki-urile ( logare pe un site ) , si altcinva printr-un procedeu v-a furat cook-iurile si le trimite cu browerul lui la site-ul respectiv ... :limba:

    Otravirea cooki-urilor

    Sa presupunem ca avem un cookie de la un site unde avem de platit 100 $ pe un produs.Otravim ( modificam ) cookie si .. punem 1 $ ..

    Dar hai sa intelegem ..

    Vrem sa intram pe site-ul www.yahoo.com .. What will happen after typing www.yahoo.com ( engleaza e pentru sare si piper ).

    browseru matale trimite un HTTP Request ( gogule da si mie pagina ).

    GET /index.html HTTP/1.1
    ( index.html e pagina , pe cand www.yahoo.com .. e numele serverului ).

    Browserul trimite pagina ceruta ( de HTTP request )si HTTP header ( pentru storare cooki-uri ).

    HTTP/1.1 200 OK

    Set-Cookie: name=value

    Content-type: text/html

    Cooki-urile mentin valori , crediute de expirare si multe altele.Logari , etc..

    Ex atac :

    Pentru mai multe amanunte :

    http://www.cookiecentral.com/faq/

    http://en.wikipedia.org/wiki/Web_cookie

    http://www.imperva.com/application_defense..._poisoning.html

    :hi:

  9. Adminu meu d retea intotdeauna imi zice sa imi scot firewallu ca cica imi blocheaza conexiunea i in timp pica :@

    Adminu tau e cretin , martalog =)) Cum drq sa-ti zica asa ceva..

    Daca esti asa de cretin ca adminu tau de retea il in inchizi , daca te duce putin capu il configurezi , ala nu e admin ma ci o mare p**a.

    Da-mi mailul lui sa ma cac pe mine de ras..

  10. Pseudocode for the MD5 algorithm follows.

    //Note: All variables are unsigned 32 bits and wrap modulo 2^32 when calculating

    //Define r as the following

    var int[64] r, k

    r[ 0..15] := {7, 12, 17, 22,  7, 12, 17, 22,  7, 12, 17, 22,  7, 12, 17, 22}

    r[16..31] := {5,  9, 14, 20,  5,  9, 14, 20,  5,  9, 14, 20,  5,  9, 14, 20}

    r[32..47] := {4, 11, 16, 23,  4, 11, 16, 23,  4, 11, 16, 23,  4, 11, 16, 23}

    r[48..63] := {6, 10, 15, 21,  6, 10, 15, 21,  6, 10, 15, 21,  6, 10, 15, 21}

    //Use binary integer part of the sines of integers as constants:

    for i from 0 to 63

        k := floor(abs(sin(i + 1)) Ã 2^32)

    //Initialize variables:

    var int h0 := 0x67452301

    var int h1 := 0xEFCDAB89

    var int h2 := 0x98BADCFE

    var int h3 := 0x10325476

    //Pre-processing:

    append "1" bit to message

    append "0" bits until message length in bits ? 448 (mod 512)

    append bit length of message as 64-bit little-endian integer to message

    //Process the message in successive 512-bit chunks:

    for each 512-bit chunk of message

        break chunk into sixteen 32-bit little-endian words w(i), 0 ? i ? 15

        //Initialize hash value for this chunk:

        var int a := h0

        var int b := h1

        var int c := h2

        var int d := h3

        //Main loop:

        for i from 0 to 63

            if 0 ? i ? 15 then

                f := (b and c) or ((not B) and d)

                g := i

            else if 16 ? i ? 31

                f := (d and B) or ((not d) and c)

                g := (5Ãâ€â€Âi + 1) mod 16

            else if 32 ? i ? 47

                f := b xor c xor d

                g := (3Ãâ€â€Âi + 5) mod 16

            else if 48 ? i ? 63

                f := c xor (b or (not d))

                g := (7Ãâ€â€Âi) mod 16

            temp := d

            d := c

            c := b

            b := ((a + f + k + w(g)) leftrotate r) + b

            a := temp

        //Add this chunk's hash to result so far:

        h0 := h0 + a

        h1 := h1 + b

        h2 := h2 + c

        h3 := h3 + d

    var int digest := h0 append h1 append h2 append h3 //(expressed as little-endian)

    MD4

    http://en.wikipedia.org/wiki/MD4

    MD2

    http://en.wikipedia.org/wiki/MD2

    SHA-0,1,2

    SHA-1 was considered to be the successor to MD5, an earlier, widely-used hash function. Both are reportedly compromised. In some circles, it is suggested that SHA-256 or greater be used for critical technology. The SHA algorithms were designed by the National Security Agency (NSA) and published as a US government standard.

    Note: All variables are unsigned 32 bits and wrap modulo 2^32 when calculating

    Initialize variables:

    h0 := 0x67452301

    h1 := 0xEFCDAB89

    h2 := 0x98BADCFE

    h3 := 0x10325476

    h4 := 0xC3D2E1F0

    Pre-processing:

    append a single "1" bit to message

    append "0" bits until message length in bits ? 448 ? -64 (mod 512)

    append length of message (before pre-processing), in bits as 64-bit big-endian integer to message

    Process the message in successive 512-bit chunks:

    break message into 512-bit chunks

    for each chunk

        break chunk into sixteen 32-bit big-endian words w(i), 0 ? i ? 15

        Extend the sixteen 32-bit words into eighty 32-bit words:

        for i from 16 to 79

            w(i) := (w(i-3) xor w(i-B) xor w(i-14) xor w(i-16)) leftrotate 1

        Initialize hash value for this chunk:

        a := h0

        b := h1

        c := h2

        d := h3

        e := h4

        Main loop:

        for i from 0 to 79

            if 0 ? i ? 19 then

                f := (b and c) or ((not B) and d)

                k := 0x5A827999

            else if 20 ? i ? 39

                f := b xor c xor d

                k := 0x6ED9EBA1

            else if 40 ? i ? 59

                f := (b and c) or (b and d) or (c and d)

                k := 0x8F1BBCDC

            else if 60 ? i ? 79

                f := b xor c xor d

                k := 0xCA62C1D6

            temp := (a leftrotate 5) + f + e + k + w(i)

            e := d

            d := c

            c := b leftrotate 30

            b := a

            a := temp

        Add this chunk's hash to result so far:

        h0 := h0 + a

        h1 := h1 + b

        h2 := h2 + c

        h3 := h3 + d

        h4 := h4 + e

    digest = hash = h0 append h1 append h2 append h3 append h4 (expressed as big-endian)

    SHA-256

    //Note: All variables are unsigned 32 bits and wrap modulo 2^32 when calculating

    //Initialize variables:

    h0 := 0x6a09e667  //232 times the square root of the first 8 primes 2..19

    h1 := 0xbb67ae85

    h2 := 0x3c6ef372

    h3 := 0xa54ff53a

    h4 := 0x510e527f

    h5 := 0x9b05688c

    h6 := 0x1f83d9ab

    h7 := 0x5be0cd19

    //Initialize table of round constants:

    k(0..63) :=        //232 times the cube root of the first 64 primes 2..311

      0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,

      0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,

      0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,

      0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,

      0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,

      0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,

      0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,

      0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2

    //Pre-processing:

    append a single "1" bit to  message

    append "0" bits until message length ? 448 ? -64 (mod 512)

    append length of message (before pre-processing), in bits as 64-bit big-endian integer to message

    //Process the message in successive 512-bit chunks:

    break message into 512-bit chunks

    for each chunk

        break chunk into sixteen 32-bit big-endian words w(i), 0 ? i ? 15

        //Extend the sixteen 32-bit words into sixty-four 32-bit words:

        for i from 16 to 63

            s0 := (w(i-15) rightrotate 7) xor (w(i-15) rightrotate 1b) xor (w(i-15) rightshift 3)

            s1 := (w(i-2) rightrotate 17) xor (w(i-2) rightrotate 19) xor (w(i-2) rightshift 10)

            w(i) := w(i-16) + s0 + w(i-7) + s1

        //Initialize hash value for this chunk:

        a := h0

        b := h1

        c := h2

        d := h3

        e := h4

        f := h5

        g := h6

        h := h7

        //Main loop:

        for i from 0 to 63

            s0 := (a rightrotate 2) xor (a rightrotate 13) xor (a rightrotate 22)

            maj := (a and B) xor (a and c) xor (b and c)

            t2 := s0 + maj

            s1 := (e rightrotate 6) xor (e rightrotate 11) xor (e rightrotate 25)

            ch := (e and f) xor ((not e) and g)

            t1 := h + s1 + ch + k(i) + w(i)

            h := g

            g := f

            f := e

            e := d + t1

            d := c

            c := b

            b := a

            a := t1 + t2

        //Add this chunk's hash to result so far:

        h0 := h0 + a

        h1 := h1 + b

        h2 := h2 + c

        h3 := h3 + d

        h4 := h4 + e

        h5 := h5 + f

        h6 := h6 + g

        h7 := h7 + h

    RSA

    http://en.wikipedia.org/wiki/RSA

  11. Pai  ;D

    Pentru MD4 : vine ceva de genu :

    char s[255];

    printf("Dati stringu ");

    scanf("%s",&s);

    printf("Codificat MD4 este %s",MD4("s")); .. ceva de genu MD4(" ... "); si bagi stringul acolo , nu stiu care e sigur ..

    pentru MD5 .. MD5(" .. ").

    Librariile pe Google , sau foloseste UNIX ( gblic )

    Cred .. oricum , programul de mai sus m cu secundele era alta treaba ... dar in fine  ;)

  12. Multi ati auzit despre ACPI , APM , si habar nu aveati ce legatura are cu computerul vostru si ce mama drq mai e si asta.

    Pai fiti atenti.Este un standard care are urmatoarele roluri :

    *recunoastere hardware

    *configurarea device-urilor din PC-u

    *menejarea alimentarii cu energie ( power ).

    Insa ACPI asta se ocupa mai mult cu ultima parte menajarea , dirijarea energiei care eeste alocata sistemului.

    Practic el da OS-ului ( Sistemului de operare ) controlul la chestia asta , sa menajejeze alimenterea cu curent al device-urilor.

    De ce avem nevoie de acest standard , si ce face el ? Pai let think .. cand avem un PC si vrem sa-i facem o revizie , nu stiu ce.. adica o defragmentare , sau mai stiu eu ce,nu avem nevoie ca toate "componentele" sistemului sa consume curent , ca si cum am lucra din greu la PC. Asta face ACPI sa zicem , se ocupa cu menajarea alimentari cu energie a unor parti , care consuma putin ..

    Faza e ca nu prea suporta vechituri si trebuie chiar sa aiba uneori CPU spoecial ca sa suporte ACPI , nu suporta ciuciu.

    Este scris in AML , nu in limbaj de asamblare.

    ACPI asta poate sa faca mai multe chestii , cum ziceam , la PC , adica sa intrerupa alimentarea cu curent a mai multor devi-uri din sistem , sa nu mai consume asa de tare.

    De exemplu , daca avem un laptop si .. avem putina baterie sau avem neovie , ACPI rulez..:rotfl:

    Laptopurile , astea cu ACPI , inchid adica nu mai dau energie partilor din sistem , ( RAM , ce o mai fi pe acolo )  care nu mai sunt folosite un anumit timp.De ce ? ..ca sa traga de baterie cat se poate mai mult.

    Ati auzit cu toti de Standby , e un exmeplu , la ce paote face ACPI si ce rol are ACPI.

    Cum ziceam ACPI se ocupa de menajarea , distribuiirea energiei , stiti ce face el in Standby ? doar RAM-ul mai papa curent , ca acolo is toate aplicatiile , in rest tot e mort , no curent.

    Oho , si hibernarea ? ati auzit nu .. super tare , icnizi PC-ul de tot , si te trezesti cand il deschizi ca incepei de unde ai incis , desi ai luat curentul de tot. Cum ? tot ce e pe RAM se baga pe hard , pentru a preserva datele , cand se revine la normal , adica deschidem iar compterul.

    Poti sa disable ACPI , daca vrei si nu-ti convine , dar stii ce nu o sa mai mearga.

    Pentru mai multe informatii cititi :

  13. Un mic tutorial celor nou veniti in acest domeniu , pe intelesul tuturor

    service iptables stop/restart/status/start ( respectiv stoparea , restartarea statusu ( ce scrie prin cele trei tabele de decizi ) si pornirea iptables , bineinteles daca le avem compilate , instalate prin kernel).

    Iptables sunt folosite pentur mai multe servici precum : translatare de adrese sursa sau destinatie (NAT) , port forwading sau pur si simplu rejectare sau forwadare de pachete .

    Iptables folosesc default trei tabele : FILTER ( default table) , NAT si MANGLE.

    FILTER : INPUT , OUTPUT , FORWARD.

    NAT : PREROUTING , POSTROUTING,OUTPUT

    MANGLE : PREROUTING , POSTROUTING , INPUT , OUTPUT

    argumente folosite in structura comenzilor iptables

    -t ( specifica tabelul folosit : NAT , MANGLE sau FILTER , daca nu este specificat nici un tabel se considera default FILTER).

    -j ( pentru punerea anumitor concluzi , etc de genu : ACCEPT , REJECT , DROP , TTL)

    -F ( sterge toate regulile din tabel),-L ( afiseaza toate reglule din tabel)

    -A ( apendeaza regula , adica o pune la sfarsitul chainului respectiv cu reguli , chain este per example INPUT din tabelul FILTER).

    -D ( sterge regula) -R ( modifica regula) , -I ( insereaza regula) , -Z ( reseteaza la zero counterele , cu erori , cu pachtete trimise , primite , etc) -N ( nou chain) , -X (sterge chain ),-E ( rename chain) , chain = un set de reguli

    -p procotocol ( tcp , udp , icmp), -s sursa , -d destinatie , -i interfata de intrare , -o interfata de iesire

    pentur a specifica un port sau o grupa de orturi de la un anumit protocol dintre cele specificate mai sus ( TCP, UDP , ICMP) -p tcp --sport 22 ( port sursa ) sau --dport 22 ( port destinatie) sau mai multe protocoale -p udp --sport 22:100 sau --dport 45:130

    pentru detalii man iptables

    pentru salvarea regulilor iptables-save -c -t ( din ce tabel vrem sa salvam) > fisier

    pentru restore : iptables-restore -c < fisier

    Pentru marcarea unei anumite adrese MAC :

    iptables -A INPUT -m mac --mac-source ....... ( match pachete cu sursa MAC denumita)

    DNAT : rescrie destinatia pachetului :

    iptables -t nat -A PREROUTING -p tcp -d 192.168.1.1 --dport 80 -j DNAT --to-destination 10.10.10.3

    aceasta are rolul de a retrimite toate datele care vin la 192.168.1.1 ( presupunem ca asta e serverul ) , care vin pe portul 80 ( HTTP ) , la IP-ul 10.10.10.3 , normla ca tot la portul 80 ( se schimba din header numai IP-ul destinatie nu si portul , TCP care este la Layer 4 ).

    SNAT : rescrie sursa IP pachetului :

    iptables -t nat -A POSTROUTING -p tcp -o eth0 - SNAT --to-source 195.13.12.1

    ( este folosit atunci cand avem una sau mai multe adrese publice si dorim sa folosim mai multe computere odata pe Internet de cate IP-uri publice avem )

    P.S. daca la --to-source 193.1.1.1-193.1.1.4 avem mai multe IP-uri publiceun stream de pachete va avea mereu acelasi IP sursa , insa acelasi host , nu va avea de fiecare data aceasi adresa sursa translatata.

    SAME : rescrie sursa IP pachet :

    ceva de genu SNAT ( insa va incerca ca acelasi host , sa aiba mereu aceasi adresa sursa trasnaltata in afara , cu acelasi IP public , spre deosebire de SNAT),P.S. aceasta regula se pune in tabelul mangle.

    IPTABLES -t mangle -A PREROUTING -s 192.168.1.0/24 -j SAME --to 193.1.1.1-192.1.1.4 ( la fel ca la SNAT se pot translata cu unul sau mai multe IP-rui publice , IP-urile interne din reteaua privata).

    MASQUERADE : rescrie sursa IP pachet :

    tot ca SNAT , insa difera prin faptul ca SNAT , are de la inceput ''pe veci'' pana schimba regula --to-source un Ip sau mai multe . pe cand MASQUERADE se va uita mereu la configuratie sa vada cu ce IP sa faca transatarea ( procesul mai lent insa folsitor cand adresa publica cu care se face trasnalatarea se schimba des , si nu stam sa o schimbam si noi la fel de des , per example dial-up (PPP , SLIP ) , sau chiar DHCP )).

    iptabables -t nat -A POSTROUTING -p tcp -j MASQUERADE

    NETMAP : rescrie sursa IP pachet :

    ceva de genu SNAT  , insa de aceasta data NAT se face unu la unu , default avem atatea IP-uri publice , cat private , ( bine , bine o sa spuneti , dar de ce nu punem ip-uri publice direct, sa zicem ca avem o retea de 10.000 de insi , stam sa schimbam la fiecare IP-uir , mai bine facem NETMAP , si se schimba 1:1 fiecare IP intern cu unul Public , asociat lui

    -dinnou ca si la SAME , aceasta regula se pune in tabelul mangle :

    iptables -t mangle -A PREROUTING -s 192.168.1.0/24 -j NETMAP --to 193.1.2.0/24

    REDIRECT : redirecteaza pachete primite pe un anume port de LOCALHOST ,catre al port de pe LOCALHOST , spre deosebire de DNAT , care redirectioneaza pachete primite pe un anume prt de server , pe acelasi port pe alta masina.

    iptables -t nat -A PREROUTING -p tcp -dport 80 -j REDIRECT --to-port 8080 ( redirectionaza toate pachetele primite de server e portul 80 pe portul 8080 de pe acelasi server ).

    -j REJECT diferit fata de -j DROP , REJECT trimite si mesaj de eroare pe cand DROP , arunca pachetul fara sa mai trimita nici un mesaj de eroare

    Daca aveti ISP-uri mai nesimtite , care vad ca folsoiti acelasi IP pe mai multe pc-uri ( dupa TTL stiti cand trece printr-un server , FW per example la noi care translateaza pachetele , schimba sursa sau destinatia pachetului se modifica TTL-ul default scade cu 1 ).

    iptables -t mangle -A PREROUTING -i eth0 -j TTL --ttl-set 64 / --ttl-dec n / --ttl-inc n

    prima regula modifa TTL-ul inapoi la 64 , cealalta scade TTL-ul cu n , si cealalta creste TTL-ul cu n

    Deasemenea pentru a scapa , cum alti zic ''pingul morti'' cand se trimite d la un terminal 65000 de bytes pe secunda , putem sa numai aceptam aceste pachete ase de mari , defualt un pachet normal are de la 1400 la 150 de bytes :

    iptables ... -m length --length 1400:1500 ( sunt aceptate numai pachete intre 1400 si 1500 de byte's).

    Toate exemplele sunt demonstratii , pentru o ma buna functionare a acestui procedeu , nu ma fac responsabil pentru anumite greseli  . Bafta !

×
×
  • Create New...