15 September 2010
by Razvan Dobre
0 comments
Sorry for inconvinience because the site’s structure has been changed a little. First it looked ok with the Pages there but as far as you can’t post to pages I had to change it. So you will see posts that were written long time ago on the front page now and the tabs near home button gonne. Instead of pages there are now categories.
Thanks for understanding.
Uncategorized
7 September 2010
by Razvan Dobre
0 comments
In lipsa de spor pentru pregatirea pentru examenul de master am luat telefonul la butonat si am vazut ca dispune de o functionalitate interesanta cel putin ca idee de networking: remote drive. Acest lucru ma duce cu gandul la NFS, iSCSI dar cand vad ca adresa URL este de forma https://url incep sa presupun a fi ceva gen DAV. Nici una nici doua, scotocesc putin netul si intradevar: Symbian 9.3 stie sa vorbeasca “DAV”. Dupa principiul DAV vrei, DAV ai, m-am pus si am mesterit un serviciu de DAV pe un Slackware 13 si Apache 2.2.16.
Am vazut pe internet mai multe variante de setup insa eu am luat-o pe cea mai simpla (cred). Am creat un folder accesibil in internet, am activat DAV pe folderul respectiv din Apache, am luat un certificat SSL oarecare, aveam o autentificare cu LDAP facuta pentru alt ceva, le-am asamblat si o mers, evident nu din prima. Daca iesea din prima sigur era ceva gresit.
Din ce am testat nu se prea intelege bine fara conexiune SSL, sau cel putin mie nu mi-a mers. Cu SSL e ok. Softul mi se pare cam buggy sau poate era din cauza conexiuni mele de date.
Partea de configurare arata cam asa:
DavLockDB "/var/lib/httpd/DavLock"
<Directory /var/www/default/dav/>
DAV On
Options Indexes MultiViews FollowSymLinks
Order allow,deny
Allow from all
<IfModule authnz_ldap_module>
AuthType basic
AuthName "Restricted area!"
AuthBasicProvider ldap
AuthLDAPBindDN cn=admin,dc=ro
AuthLDAPBindPassword password
AuthzLDAPAuthoritative on
AuthLDAPURL "ldap://localhost/dc=doraz,dc=ro?uid?"
Require ldap-group cn=www,o=groups,dc=doraz,dc=ro
</IfModule>
</Directory>
Mi s-a parut un serviciu foarte util pentru facut backup, iar fisierele odata uploadate vor putea fi accesate peste HTTP de oriunde. Recomand folosirea unui retele wireless pentru traficul de date, asta daca aveti volum mare de informatie de transferat, altfel o retea 3G e numa buna.
Uncategorized
8 May 2010
by Razvan Dobre
2 comments
A common thing when you work with different linux distribution is to forget the locan of a specific configutation file, or you have compiled a service from source and don’t know where the “make install” process put the configuration files. Well, there are at least two methods to rememorize the path: first you write it down, second you use the “strings” command.
Strings is a command that will show all the strings from a file given as argument. Usualy the configuration files have a default path hardcoded in the source code and a comand line argument that will override the default one.
So, long story short:
razvan@robuhsrv001:~$ strings /usr/sbin/dhcpd | grep “dhcpd.conf”
/etc/dhcpd.conf
Please read the dhcpd.conf manual page %s
of the dhcpd.conf file.
in your dhcpd.conf file %s
razvan@robuhsrv001:~$ strings /usr/sbin/named | grep named
bind9_check_namedconf
cfg_type_namedconf
named.run
usage: named [-4|-6] [-c conffile] [-d debuglevel] [-f|-g] [-n number_of_cpus]
named version: BIND 9.4.3-P3 (Jul 29 2009)
/etc/named.conf
/var/run/named/named.pid
/var/run/named/lwresd.pid
named.stats
named_dump.db
named.recursing
Uncategorized
21 April 2010
by Razvan Dobre
0 comments
NetAdmin is the latest project that I’m working on. It will be a piece of software that will help system administrators to keep an up to date set of network topologies.
More details here: http://doraz.ro/proiecte/netadmin/.
Uncategorized
25 March 2010
by Razvan Dobre
2 comments
AMI – Amazon Machine Image
EMI – Eucalyptus Machine Image
AMI reprezinta masina virtuala ce se ruleaza pe un sistem cloud de tip Amazon. Fiecare astfel de AMI are un ID propriu, ID care specifica numele masini. O masina AMI consta dintr-un kernel, un fisier de ramdisk si imagineaza virtuala a hard-disk-ului. Acestea sunt pastrate in format criptat si decriptate in momentul rularii acestora. Si Eucalyptus fiind compatibil cu Amazon EC2 foloseste acelasi format de masina virtuala.
Eucalyptus stie sa lucreze cu doua tipuri de sisteme de virtualizare: KVM si XEN. In cadrul acestui tutorial este prezentata doar crearea unei masini virtuale pentru KVM, pentru XEN fiind un proces similar.
Pentru fabricarea acestor masini virtuale exista 2 seturi de utilitare: ec2-ami-tools si euca2ools. Primul set se foloseste atunci cand se doreste crearea unei masini pentru rularea sa pe Amazon (are hardcodate url-urile pentru Amzon EC2), iar cel de al doilea in pentru situatia in care se foloseste un cloud privat: Ubuntu Enterprize Cloud.
Crearea unei masini custom consta din urmatorii pasi:
- crearea unei masini KVM sau XEN
- impachetarea masinii KVM sau XEN in formatul specific Amazon folosind euca2ools
In cele ce urmeaza voi detalia acesti pasi:
- Crearea unei masini KVM:
- kvm-img create kvm.img 4GB
- kvm -m 512 -drive file=kvm.img,if=scsi,index=0 -cdrom you_favourite_distribution.iso -boot d
- instalare sistem de operare de pe iso-ul specificat ca parametru
- kvm -m 512 -drive file=kvm.img,if=scsi,index=0,boot=on
- configurare networking
- eth0 trebuie sa iti ia ip prin dhcp iar setarile trebuie sa fie persistente
- setare hostname
- instalare pachete necesare (prezentare serverului de SSH este obligatorie pentru remote access)
- adaugare user ubuntu
- pentru XEN trebuie instalat un kernel compatibil (depinde pe ce hardware se ruleaza exista sansa de fi nevoie de un kernel cu suport de paravirtualizare built-in)
- Impachetarea masinii in formatul specific Amazon
- pentru ca operatiile de mai jos sa functioneaza corect trebuiesc incarcate variabilele de mediu din arhiva cu credentiale:
- source .euca/eucarc
- extragerea kernel-ului si a initrd-ului ce se doresc a fi folosite in exterioul masinii
-
-rw-r–r– 1 root root 6192186 2010-03-25 15:04 initrd.img-2.6.26-1-486
-rw-r–r– 1 root root 4294967296 2010-03-24 14:02 kvm.img
-rw-r–r– 1 root root 1468016 2010-03-25 15:04 vmlinuz-2.6.26-1-486
- kernel
- euca-bundle-image -i vmlinuz –kernel true -d kernel -p kernel
- euca-upload-bundle -b custom-ami -m kernel/kernel.manifest.xml
- euca-register-bundle custom-ami/kernel.manifest.xml
- EKI=eki-…..
- ramdisk
- euca-bundle-image -i initrd.img –ramdisk true -d ramdisk -p ramdisk
- euca-upload-bundle -b custom-ami -m ramdisk/ramdisk.manifest.xml
- euca-register-bundle custom-ami/ramdisk.manifest.xml
- ERI=eri-…..
- image
- euca-bundle-image -i kvm.img –kernel $EKI –ramdisk $ERI -d image -p hdd
- euca-upload-bundle -b custom-ami -m image/hdd.manifest.xml
- euca-register custom-ami/hdd.manifest.xml
- AMI=emi-…..
- testare
- euca-describe-images
- euca-run-instance $AMI -k mykey -t c1.small
Uncategorized
14 March 2010
by Razvan Dobre
3 comments
…This is the question?!
Da, ar fi o idee sa mai ies si din tara sa vad cum arata lucrurile si prin alta parte. Nu am intentia de a ramane acolo, cel putin nu in momentul de fata, dar as vrea totusi sa vad cum e si sa aduc ceva bun si util in tara. Prefer totusi sa lucrez pentru ai nostrii decat pentru straini.
Ieri am dat o tura pe la RIUF pentru a ma interesa de eventualele burse pentru master in strainatate. Dintre multitudinea de universitati mai mult sau mai putin celebre pe mine ma interesa cea de la Amstrerda: University of Amsterdam. Sunt printre putinele tari care ofera master in domeniul Network Engineer. Este vorba de un master de 1 an de zile in care voi avea cursuri cu personalitati din domeniu, cum ar fi A.S. Tunnenbaum. Chiar daca o parte din cursuri le-am facut la facultate, ar fi meritat pentru experienta si pentru aprofundarea limbii engleze.
Din pacate toate suna bine si frumos pana cand ajungi sa iti faci dosarul de admitere. Pe langa recomandari, foaie matricola, etc, testul de limba este “proba” obligatorie, iar cei care vor sa plece vor trebui sa se gandeasca din timp la acest aspect pentru ca e coada la centrele de testare iar unele se dau de 2-3 ori pe an doar.
O alta problema nu tocmai placuta este aspectul financiar. Taxa de scolarizare este de 1650Euro (comparabila cu cea de la Politehnica) si include doar studiile. In brosura pe care am primit-o este estimat un cost de 900Euro pe luna, separat de taxa de scolarizare, ce include cazarea in caminele facultatii (~400Euro/luna), mancarea si mici cheltuieli pe ici pe colo. Exista tot felul de metode de creditare in sensul asta, dar pana la urma tot ajungi sa dai banii inapoi iar pe fondul instabilitatii financiare globale nu cred ca este o idee foarte buna de a pleca acum.
Anul acesta am ratat startul, ideea de a pleca venindu-mi in preajma craciunului citind un blog al unui prieten care e masterand acolo. Probabil ca voi incerca la anul, cel putin acum stiu ce am de facut.
Uncategorized
13 March 2010
by Razvan Dobre
3 comments
Webalizer este utilitar pentru afisarea statisticilor de accesare a paginilor unui site parsand logurile de access (access log) ale serverului web. Suporta mai multe formate de loguri, formate ce sunt precizate pe site-ul oficial. Printre informatiile afisate se regasesc topul celor mai viziate pagini, numar de accesari pe zi, statistici privind originea adresei IP de unde a fost accesat siteul. Un output sumar al webalizer arata cam asa:

Pentru a putea rula Webalizer pe Slackware 13 trebuie sa descarcati sursele de pe site-ul oficial si sa le compilati. In mod implicit sunt indeplinite toate dependintele. Pentru activarea statistilor privind tara de origine a adresei IP de unde a fost accesat siteul trebuie adaugat API-ul pentru GeoIP. Lasand la o parte partea de literatura instalarea webalizer cu suport pentru GeoIP decurge in modul urmator:
1. instalare GeoIP
./configure --prefix=/usr --sysconfdir=/etc/geoip/
make && make install
2. instalare Webalizer cu suport GeoIP
./configure --sysconfdir=/etc/webalizer/ --prefix=/usr --enable-bz2 --enable-geoip
make && make install
3. configurare webalizer
- activare suport geoip:
GeoIP yes
GeoIPDatabase /usr/share/GeoIP/GeoIP.dat
- se pot seta diverse filtre pentru excluderea indexarii anumitor fisiere cum ar fi gif-uri sau alte elemente inutile
HideURL *.gif
HideURL *.GIF
HideURL *.jpg
HideURL *.JPG
4. rulare webalizer
- rularea webalizer presupune o parcugere periodica a logurilor serverului web. Pentru a realiza cel mai simplu acest lucru se creaza un script in /etc/cron.hourly (scripturi ce sunt rulate din ora in ora). Un exemplu de folosire a webalizer intr-un script este urmatorul:
webalizer /var/log/httpd/example.com-access_log -o /var/www/default/example.com
Parametrul -o specifica directorul unde vor fi stocate datele de analiza ale webalizer. In functie de numarul de siteuri si dimensiunea logurilor se poate adauga scriptul in alta categorie de rulare (daily sau weekly).
Uncategorized
7 March 2010
by Razvan Dobre
0 comments
A.k.a. Solaris Zones pe Linux.
Da intr-adevar este o implementare pe Linux a containerelor de pe Solaris. Ce inseamna asta?
In primult rand OpenVZ este o solutie de virtualizare la nivelul sistemului de operare. Practic este vorba despre p metoda de izolare de procese similar cu chroot. Acest lucru presupune un consum de resurse minim din partea layerului de virtualizare deoarece nu trebuie sa emuleze o masina completa. Masinile virtuale se numesc containere si aceasta ruleaza direct peste hardware ceea ce inseamna un spor de performanta net superior oricarei solutii de virtualizare existente.
Fiind o solutie de virtualizare la nivelul sistemului de operare, mai exact Linux, inseamna ca nu poate rula in conainere decat Linux, orice distributie de Linux dar sa fie Linux.
OpenVZ poate fi utilizat cu succes in solutii de VPS (Virtual Private Servers), in platforme de testare si de ce nu pentru economisirea de resurse hardware: densitatea de containere este mult mai mare comparativ cu alte solutii de virtualizare. Toate acestea datorita modului usor de administrare a platformei prin utilitarul vzctl.
Printre facilitatile oferite de OpenVZ se numara salvarea starii curente (suspend/resume), migrarea pe alte masini, live sau offline si un control fin al resurselor consumate in format soft_limit:hard_limit. Se pot crea topologii diverse folosind sistemul de bridge-ing din linux (brctl).
Linkuri utile:
Uncategorized
7 March 2010
by Razvan Dobre
0 comments
Momentan serverul meu este o masina mai putin capabila de a rula sisteme de virtualizare Open Source moderne cum ar fi kvm sau xen (am incercat sa rulez xen dar masina virtuala booteaza partial). Mai exact serverul este tinut de un AMD Athlon 1600+ la 1.4GHz si 1.5GB RAM.
Si pentru ca vroiam neaparat sa rulez o solutie de virtualizare alta decat una la nivelul sistemului de operare (OpenVZ) am ales VMWare Server 2 pentru ca are interfata web de administrare (prea mult CLI strica). Totul bun si frumos pana cand a venit momentul instalarii.
Prima problema de care m-am lovit a fost VMWare: modulele de kernel pe care aceasta trebuie sa le compileze pentru a functiona dadeau eroare de compilare (Slackware 13 are un kernel 2.6.29, cred ca prea nou pentru VMWare Server 2). Si cum vroiam neaparat sa rulez VMWare Server am luat google-ul la puricat iar dupa scurt timp am gasit si patch-urile necesare. Le puteti lua de aici: vmware-server-modules-2629tar. Aceastea trebuiesc puse in vmware-server-distrib/lib/modules/source inlocuind modulele existente. Reinstall.
A doua problema de care am dat este cea de autentificare in panoul de control al VMWare. Iar google a fost salvarea. Slackware este printre putinele distributii de linux care inca nu foloseste PAM. PAM (Plugable Authentication Module) este o librarie ce permite antentificarea utilizatorilor folosind surse multiple de stocare a credentialelor. PAM ofera un api standard pentru aflarea parolei pentru un user dat indiferent de backendul de stocare folosit pentru stocarea ei. Solutia este aici si consta in compilarea surselor pentru PAM. Pentru aceasta trebuie descarcat tot exista pe acel site intr-un director si rulat ./linux-pam.SlackBuild dupa ce este in prealabil facut executabil (exista sanse de eroare la “requiredbuilder -v -y -s $CWD $PKG” ce se rezolva cu un comment). Dupa compilare se instaleaza pachetul rezultat cu pkgtool.
Dupa ce am rezolvat acesti 2 pasi am reusit sa rulez VMWare Server 2 cu succes.
Uncategorized
1 March 2010
by Razvan Dobre
1 comment
Nu a trecut mult timp de la publicare articolului despre SNI asta fara sa fi testat inainte Slackware 13. Intradevar Slackware 13 suporta SNI (Servier Name Indicator) out-of-the-box: doar ce am pus certificatele create in cadrul acelui mic tutorial si voila … functioneaza. Slackware 13 vine cu OpenSSL versiunea 0.9.8k si Apache2 2.2.13.
Uncategorized