Posts

Showing posts with the label Linux / Unix

Shell

Stergerea comentariilor si a liniilor blank sed '/ *#/d; /^ *$/d' Avantajele folosirii cpio in locul lui tar Utilitarul cpio poate inlocui complet tar . Exemple de utilizare: a)primeste printr-un pipe lista de fisiere de la find: 1. $ find /home -type f | cpio -o --format=tar > files.tar 2. $ find /home -type f | cpio -o -H tar > files.tar 3. $ find /home -type f | cpio -o --format=tar -F files.tar 4. $ find /home -type f | cpio -o -H tar -F files.tar b) Listeaza continutul unui fisier tar $ cpio -it < test.tar $ cpio -it -F test.tar c) Extrage continutul unui fisier tar: $ cpio -i -F test.tar Cautarea fisierelor de o anumita dimensiune # toate fisierele mai mari de 1Mb: find / -size +1024k # toate fisierele mai mare de 500 Kb, dar mai mici de 600 Kb: find . -size +500k -a -size -600k # toate fisierele mai mici de 100 biti modificate in utimele 10 minute: find . -type f -a -size -128c -a -mmin -10

SSH

Ascunderea versiunii OpenSSH In versiunile recente ale OpenSSH versiunea vizibila se poate schimba in sshd_config, cu optiunea: SshVersion Exemplu: SshVersion OpenSSH-Secured Restrictionarea accesului SSH dupa utilizator Exista multe metode de restrictionare a accesului SSH, printre care PAM, tcp wrappers, firewall . O metoda eficienta de restrictionare a utilizatorilor carora li se permite accesul SSH, este optiunea AllowUsers din sshd_config . Adaugarea AllowUsers root in /etc/ssh/sshd_config va restrictiona accesul SSH tuturor, cu exceptia utilizatorului root. O optiune similara - DenyUsers va restrictiona accesul SSH utilizatorului specificat. OpenSSH ControlMaster OpenSSH 4 vine cu o noua optiune - ControlMaster care permite reutilizarea unei conexiuni SSH. Odata conectati initial, cu urmatoarele optiuni : ssh hostname -M -S /tmp/%r@%h:%p toate sesiunile urmatoare pot fi initializate cu ssh hostname -S /tmp/%r@%h:%p observam ca sesiunea se deschide instant, datorita faptulu

Apache httpd

Limitarea conexiunilor in apache mod_limitipconn permite setarea unor limite adaugatoare pentru fiecare VirtualHost, precum: # MaxConnPerUid # MaxConnPerVhost # MaxLA1, MaxLA5, MaxLA15 Functia PHP mail() pe apache ruland in chroot Functionarea corecta a functiei PHP mail() necesita /bin/sh si un program pentru mail delivery. Foarte potrivit pentru acest rol este mini_sendmail , care poate fi gasit aici: http://www.acme.com/software/mini_sendmail/ Compresia datelor cu mod_deflate Modulul mod_deflate permite compresia datelor trimise de catre Apache browserului. In acest caz volumul traficului se reduce de doua ori, incarcarea procesorului nefiind considerabila. Apache 2 vine cu mod_deflate, pentru Apache 1 exista un modul mod_deflate mai performant. Instalarea mod_deflate pentru Apache 1.3 : cd mod_deflate-1.0.21 ./configure --with-apache=../apache_1.3.3X make cd ../apache-1.3.3X ./configure ... "--activate-module=src/modules/extra/mod_deflate.o" Activarea sa in httpd.

Diskuri si fisiere

Verificarea starii hard-diskului cu ajutorul smartmontools Verificarea suportului SMART.de catre disk: smartctl -i /dev/ida/c0d0 Activarea SMART, daca nu este deja activat: smartctl -s on /dev/ida/c0d0 Verificarea posibilitatilor SMART suportate de catre disk: smartctl -c /dev/ida/c0d0 Starea curenta a diskului si lista atributelor: smartctl -H /dev/ida/c0d0 smartctl -A /dev/ida/c0d0 Testarea hard diskului in regim offline: smartctl -t offline /dev/ida/c0d0 Verificarea daca au fost detectate erori: smartctl -l selftest /dev/ida/c0d0 Mai multe detalii: smartctl -r ioctl -i /dev/ida/c0d0

FreeBDS

Mai multa informatie despre hard disk Utilitarul diskinfo introdus in FreeBSD 5.1 prezinta informatie suplimentara despre hard diskuri, poate fi folosit si pentru testarea performantei lor. FreeBSD minimal Pentru a compila un sistem minim posibil ( pentru a crea un jail de exemplu ) folositi urmatoarele optiuni in /etc/make.conf: CPUTYPE=i486 MAKEOBJDIRPREFIX=/mnt/smallobj DESTDIR=/mnt/smallworld NOMAN=true NO_FORTRAN=true NO_I4B=true NO_LPR=true NO_MODULES=true NO_OBJC=true NO_X=true NOGAMES=true NOINFO=true NOLIBC_R=true NOGDB=true NOPAM=true NOKLDLOAD=true NONETGRAPH=true NORADIUS=true NOIPSEC=true NOTAGS=true NOPROFILE=true NO_SHAREDOCS=true NOSHARE=true NO_BIND=true NO_IPFILTER=true NOALIAS=true NONAT=true NO_RCMNDS=true NO_CVS=true NO_MAILWRAPPER=true NO_OPENSSL=true NO_SENDMAIL=true NO_TCSH=true NOCRYPT=true NOSECURE=true NOPERL=true NO_TCSH=true NO_UUCP=true NOSHARED=no nota: a fost testat pe FreeBSD 4.x, unele optiuni sunt scoase din 5.x Aliasuri pentru o interfata de rete

Linux - NAT - Lilo

Limitarea numarului de conexiuni simultane de la un host modprobe ipt_iplimit iptables -m iplimit --iplimit-above 20 -j REJECT --reject-with host-unreach modulul ipt_limit face parte din colectia POM ( patch-o-matic ) comentarii: 0 NAT in Linux cateva moduri - 1. iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j SNAT --to-source 194.153.245.186 2. iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j SAME --to 194.153.245.186 3. iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE nota: 192.168.0.0/24 - reteaua interna, pentru care se face NAT eth0 - interfata de retea externa 194.153.245.186 - adresa interfetei de retea externe, folosita pentru NAT comentarii: 0 Adaugarea device-uriloor loop in Linux Atunci cand incercati sa mountati mai mult de 8 device-uri loop, veti primi mesajul: "mount: could not find any free loop device" Limita default este 8 si poate fi crescuta prin adaugarea "max_loop=64" la argumentele de boot ale

Networking / routing

Legarea unei adrese IP de MAC-ul al placii de retea Exemplu: arp -s 192.168.0.2 0:0:e8:ac:4c:22 Trecerea unei placi de retea din mod full-duplex pe half-duplex in FreeBSD Exemplu, pe o placa Intel EEPRO 100. Modul curent de functionare a placii se poate vedea cu comanda: ifconfig fxp0 Trecerea in regim 10baseT/UTP half-duplex: ifconfig fxp0 media 10baseT/UTP mediaopt half-duplex Manipularea parametrilor de retea in Windows cu netsh # adaugare unei adrese ip - netsh interface ip add address "Local Area Connection" 192.168.0.1 255.255.255.0 # rezilierea unei adrese ip - netsh interface ip del address "Local Area Connection" 192.168.0.1 detalii - netsh help Aliasuri pentru o interfata de retea in FreeBSD adaugare: ifconfig rl0 inet 192.168.1.1 netmask 255.255.255.255 alias reziliere: ifconfig rl0 inet 192.168.1.1 netmask 255.255.255.255 -alias NAT in Linux cateva moduri - 1. iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j SNAT --to-source 194.153