Co se tyce SSL, tak pod tim bych si predstavoval: * vygenerovani vlastnich certifikatu * vytvoreni jednoducheho SSL klienta a "echo" serveru, ktery to co prijme posle zpet (pri samotnem znaku "." na jednom radku ukonci spojeni s klientem) * nevim uplne presne, co jednotliva SSL API podporuji, takze z nasledujiciho, co pujde (nektere veci budou asi lepsi delat napr. proti web serveru na kmlinuxu, protoze jinak by bylo nutne generovat hromadu ruznych certifikatu, crl, ...): - nabidnout SSL2, SSL3 nebo TLS1 - nabidnout vyber podporovanych sifrovacich algoritmu a navazat spojeni vybranym - pri navazovani spojeni zkontrolovat duveryhodnost nabidnuteho certifikatu (proste aby to vypsalo hlasku, kdyz certifikat neni podepsany duveryhodnou CA, kdyz ma proslou platnost, kdyz se jmeno serveru neschoduje se jmenem v certifikatu) - overit zda certifikat neni na CRL + v lokalnim souboru + pomoci OCSP (Online Certificate Status Protocol) - pokusit se o navazani spojeni s vzajemnou kontrolou certifikatu mezi klientem a serverem (tohle jsem jeste nikdy nezkousel, takze nevim kolik je to prace - pokud by to bylo moc slozite, tak se tim nezabyvat) Tohle udelat s vyuzitim jedne z nasledujicich knihoven: a) OpenSSL - http://www.openssl.org/ b) GnuTLS - http://www.gnu.org/software/gnutls/ c) Mozilla NSS - http://www.mozilla.org/projects/security/pki/nss/ d) libovolna jina, ktera je nejak rozumne dostupna a udrzovana Pokud se rozhodnete hrat si se SSL, tak mi napiste, kterou knihovnu hodlate pouzit, abych vedel, co pripadne dat (nedat) dalsim zajemcum. Co se tyce mailove brany, tak tam by se mi hodili nasledujici veci: 1) Testovani funkcnosti SMTP (Java) * navazani spojeni pres sockety (bez zabezpeceni, pres STARTTLS, pres SSL) * popovidat si (priblizne podle http://www.zvon.org/tmRFC/RFC2821/Output/chapter15.html) * podpora SMTP AUTH (aby se dalo testovat, jestli funguje overovani uzivatelu na mailserveru) * osetrit chybove stavy * napsat jako modul pro OpenNMS - jedna se o implementaci dvou jednoduchych rozhrani, ktera pripadne poslu - neni nutne znat OpenNMS - staci, kdyz to bude fungovat samostatne, 2) To same (mimo posledniho bodu), ale v perlu, pythonu, ... klidne v C, ale to bude zbytecne moc prace (modul pro Nagios) * vstupni parametry na prikazove radce -h, --help Print detailed help screen -V, --version Print version information -H, --hostname=ADDRESS Host name or IP Address -p, --port=INTEGER Port number (default: 25) -s, --ssl Use SSL for the connection. -S, --starttls Use STARTTLS for the connection. -w, --warning=DOUBLE Response time to result in warning status (seconds) - timeout -c, --critical=DOUBLE Response time to result in critical status (seconds) - timeout -t, --timeout=INTEGER Seconds before connection times out (default: 10) * vytup - radka textu -> exit code OK - text -> 0 WARNING - text -> 1 CRITICAL - text -> 2 UNKNOWN - text -> -1 3) Kontrola blacklistu dnsbl v Pythonu * predstavoval bych si nejake rozumne rozhrani (tridu) pro kontroly uvedene http://spamassassin.apache.org/full/3.0.x/dist/rules/20_dnsbl_tests.cf * implementace dnsbl modulu pro http://kmlinux.fjfi.cvut.cz/~vokac/activities/ppolicy/ (implementace jednoducheho rozhrani - vpodstate napsani jedne metody) Osobni konzultace by byla mozna az nekdy v prubehu zari (v Cechach/Praze bych mel snad byt kolem 7.9.) Pavel Strachota wrote: >Chtěl bych se s Vámi poradit ohledně zadání zápočtového programu na předmět >Počítačové sítě. Z návrhů, které jste nám přednesl na cvičení, se mi na první >pohled docela zamlouvá "navázání spojení pomocí SSL a ověření certifikátů (v >jazyku C)" nebo "testování mailové brány". Prosím Vás o detailnější popis těchto >úkolů, (pokud je tedy ještě možné si je vzít), případně bych uvítal osobní >konzultaci. > >Děkuji > >Pavel Strachota > > >