Jump to content

PingLord

Active Members
  • Posts

    613
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by PingLord

  1. SUPER OFERTA !!! vand 5 pui de chupacabra ( 32/64 biti ) cu predare leasing .La 2 pui un hamburger cadou !!!
  2. Cred ca la partea de LACP se referea la serverul actual.Oricum TeX e greu sa strangi ceva...si poate cu noroc loveste unu care vrea sa sponsorizeze si cine stie...poate se continua un proiect frumos.
  3. hope joking with p4
  4. Da smecherule,raspunde la asta ))))))
  5. In momentul de fata avem destul de multi useri iar plata pe luna a unui server care sa reziste si sa fie ok dpdv calitativ este destul de scump si in plus aseara ne-am confruntat cu un synflood spoofed.Serverul a facut fata...dar este posibil ca pe viitor sa nu faca fata la o cantitate mai mare de pachete.Multumim oricui a facut donatii dar asa cum spune si ps-axl,ele nu sunt un venit stabil pentru asigurarea echipamentelor necesare.
  6. Incearca Luxemburg sau Germania.
  7. Din pacate,m-am mutat in casa noua si astept sa vad cand imi vor pune internet RDS-ul.Am cursurile gata dar astept sa vad cand am internet ca sa ii dam drumul si la Linux Basics.
  8. Programa pentru Linux Basic : 1.Introducere in sisteme de operare 2.Cum se instaleaza 3.Sistemul de fisiere (diferente intre Windows si Linux ) 4.Managementul de software ( Instalari folosind packet manager si instalari pe baza de pachet downloadat ) 5.Booting in Linux si Editate de fisiere 6.Administrare minimala a sistemului. 7.Configurare basic a retelei 8.Iptables. Orice intrebari,nelamuriri sau sugestii,lasati pe PM O zi buna.
  9. In 2 zile maxim voi posta programa cursului Linux Basic.
  10. Azi avem tutorialul despre DHCP : 1.Protocolul DHCP 2.Compilare si instalare server 3.Configurare server 1.Protocolul DHCP (Dynamic Host Configuration Protocol) este definit in RFC2131 si se foloseste pentru configurarea automata a placii de retea (IP, Network Mask, Default Gateway, DNS Servers etc). DHCP ruleaza client-server, serverul fiind acela care inchiriaza o anumita configuratie clientului pentru o anumita perioada de timp numita "lease time". DHCP este urmasul protocolului BOOTP. Toate sistemele de operare moderne includ un client de DHCP. Cel mai folosit server DHCP OpenSource este cel de la ISC (Internet System Consortium). Modul de operare se imparte in 4 etape distincte si exista 4 tipuri de mesaje care se schimba intre client si server : 1. DHCP Discovery Clientul trimite DHCP Discovery folosind IP destinatie de tip "limited broadcast" si anume 255.255.255.255 iar ca IP sursa 0.0.0.0 Se foloseste protocolul UDP. Clientul utilizeaza portul 68, iar serverul 67. Acestea nu trebuie sa fie filtrate de vreun firewall. IP Sursa=0.0.0.0 IP Destinatie=255.255.255.255 Port Sursa=68 Port Destinatie=67 2. DHCP Offer Serverele DHCP (pot exista mai multe intr-un LAN) care au primit DHCP Discovery raspund cu un mesaj numit DHCP Offer in care ofera clientului o anumita configuratie (IP, Masca, DG, DNS etc). Configuratia poate fi statica, stabilita de catre administrator in functie de MAC. IP Sursa=Server_IP IP Destinatie=255.255.255.255 Port Sursa=67 Port Destinatie=68 3. DHCP Request Clientul alege o oferta (daca exista mai multe servere de la care a primit) trimitand un pachet numit DHCP Request - in general pe prima primita - si trimite un broadcast in care isi face cunoscuta alegerea. In pachet se gaseste IP-ul serverului ales astfel incat toate celelalte servere sa cunoasca alegerea clientului si sa elibereze oferta facuta in caz ca nu a fost aleasa de client. IP Sursa=0.0.0.0 IP Destinatie=255.255.255.255 Port Sursa=68 Port Destinatie=67 4. DHCP Acknowledgment Serverul ales trimite DHCPACK clientului in care precizeaza "lease time" precum si alte informatii necesare. IP Sursa= DHCP_Server_IP IP Destinatie=255.255.255.255 Port Sursa=67 Port Destinatie=68 In momentul in care "lease time" pentru oferta primita expira, clientul trebuie sa reinnoiasca configuratia de la server. Acesta trimite doar DHCP Request pentru aceiasi configuratie, iar serverul raspunde cu DHCP ACK. 2.Compilare si instalare server ISC este o organizatie non-profit al carei scop este dezvoltarea de software pentru Internet. Cele mai cunoscute aplicatii sunt serverul DNS numit BIND si serverul DHCP. Ambele sunt si cele mai folosite servere de DNS respectiv de DHCP OpenSource. ISC DHCP reprezinta o suita de programe (dhcp daemon, dhpc client si dhcp relay agent) care implementeaza toate aspectele protocolului DHCP definit in RFC2131. Pasi de urmat : 1.Download sursele ultimei versiuni ISC DHCP de pe site-ul producatorului Internet Systems Consortium | Internet Systems Consortium wget -c http://ftp.isc.org/isc/dhcp/dhcp-3.0.7.tar.gz 2.Decomprimare si dezarhivare arhiva tar -xzvf dhcp-3.0.7.tar.gz 3.Rularea scriptului configure care verifica sistemul si anume daca acesta contine toate componentele necesare compilarii si instalarii serverului DHCP. ./configure 4.Compilarea Recomand compilarea oricarei aplicatii de catre un user neprivilegiat.In urma compilarii rezulta din fisierele sursa fisiere executabile make 5.Instalarea Instalarea presupune doar mutarea fisierelor executabile rezultate in urma compilarii in directoarele corespunzatoare precum /sbin/, /usr/bin etc. Comanda poate fi executata doar de root make install 3.Configurarea serverului Ca si in cazul celorlalte servere configurarea serverului dhcp presupune editarea catorva fisiere text de configurare. Serverul ISC DHCP foloseste 2 fisiere: 1. In fisierul /var/state/dhcp/dhcpd.leases se pastreaza informatii despre configuratiile inchiriate deja clientilor, leased time pentru fiecare etc FOARTE IMPORTANT : Dupa instalarea serverului fisierul /var/state/dhcp/dhcpd.leases nu exista.El trebuie creat manual. touch /var/state/dhcp/dhcpd.leases 2. Fisierul de configurare al serverului care este by default /etc/dhcpd.conf Exemplu /etc/dhcpd.conf : authoritative; #(diez) reprezinta un comentariu ddns-update-style interim; #interim sau none. DHCPD face update la fisierul zona al clientului de pe serverul DNS #ignore client-updates; #allow client-updates; #vezi man dhcpd.conf subnet 192.168.0.0 netmask 255.255.255.0 { #stabileste subnetul pentru care va furniza servicii range 192.168.0.50 192.168.0.60; #range-ul de IP furnizat range 192.168.0.100 192.168.0.120; #un al doilea range #allow unknown-clients; default-lease-time 600; #lease time default daca clientul nu cere un anumit timp max-lease-time 7200; #max lease time option routers 192.168.0.1; option subnet-mask 255.255.255.0; option domain-name-servers 193.231.236.25,193.231.236.30; option domain-name "pinglord.gov"; host pc1 { hardware ethernet 00:03:47:F6:B0:44; fixed-address 192.168.0.125; option routers 192.168.0.10; #primeste Default Gateway diferit } } Detalii fisier dhcpd.conf: • fiecare linie se termina cu ";" (punct si virgula) • sintaxa este extrem de sensibila, orice caracter precum ; (punct si virgula) lipsa reprezinta o eroare fatala; • semnul "#" (diez) inseamna un comentariu; • subnet 192.168.0.0 netmask 255.255.255.0 - se stabileste subnetul din care serverul va furniza IP-uri • range 192.168.0.50 192.168.0.60; - se stabileste range-ul din care serverul va funiza IP-uri. In exemplul nostru primul client va primi 192.168.0.50, al doilea 192.168.0.51 etc. Pot exista mai multe directive range. Atentie ! Ip-urile setate static pe alte hosturi trebuie excluse; • option routers 192.168.0.1; - stabileste Default Gateway oferit clientilor; • option subnet-mask 255.255.255.0; - stabileste masca retelei oferite clientilor • option domain-name "pinglord.gov"; - stabileste un domeniu care va fi oferit clientilor, acestia facand parte din el; • daca se doreste furnizarea unei configuratii in functie de MAC-ul clientului, pentru FIECARE astfel de client in fisierul de configurare al serverului si anume dhcpd.conf trebuie sa apara un container de tip host in care se specifica MAC-ul precum si configuratia oferita. Daca nu se specifica un anumit parametru (exemplu servere DNS), clientul respectiv va primi serverele DNS specificate in sectiunea globala; • allow unknown-clients; - specifica daca serverul va oferi configuratie clientilor al caror MAC nu se gaseste intr-un container de tip host; 3.Pornire server Ruleaza serverul in foreground cu trimiterea mesajelor de debug la consola dhcpd -d –f Optiuni dhcpd: -cf file.conf #specificarea unui fisier de configurare alternativ -p port #specifica un alt port pe care sa asculte serverul. By default foloseste portul UDP 67. -t #testeaza fisierul de configurare fara a porni serverul. Pornirea serverului in modul Debug are loc doar dupa instalare sau in perioade de teste pentru a observa modul de comunicatie al acestuia cu clientii. Pe un server stabil, serverul DHCP trebuie sa porneasca automat la butare folosind fisierele de management ale serviciilor (/etc/inid.d/). In cazul compilarii, fisierul care porneste serverul nu exista si trebuie creat. O sa fac o modificare mai tarziu si o sa va arat cum se face un script in /etc/init.d/
  11. Multumesc multumesc.Acum am prins un pic de timp liber si o sa mai postez cate ceva despre Linux pe partea de servere.
  12. Compilare Kernel Introducere, necesitate compilare Kernelul sistemului de operare Linux reprezinta componenta cea mai importanta a acestuia. Toata functionalitatea sistemului este realizata de kernel. Dintre cele mai importante functii ale kernelului Linux amintim: • alocarea resurselor diferitelor procese (o parte din RAM, o parte din CPU etc); • contine drivere pentru toate dispozitivele hardware de la placa de baza, placa video, placa de sunet, placa de retea, monitor, tastatura etc; • lucrul cu sistemele de fisiere; • orice operatie de creare, stergere, citire, modificare fisier sau director este realizata de o functie din Kernel; • firewall & routing; • QoS; Un upgrade de kernel se poate face in 2 moduri: 1. Folosind o versiune de kernel direct compilata pentru o anumita distributie si arhitectura. In acest caz noul kernel se instaleaza dintr-un fisier RPM sau DEB. Aceasta metoda are numeroase dezavantaje printre care cele mai importante sunt: • kernelul este compilat pentru o arhitectura generica. Acesta nu este optimizat special pentru tipul nostru de procesor, placa de baza etc. Astfel performantele vor fi mai scazute; • facilitatile oferite sunt generice si anume acesta include facilitati necesare majoritatii utilizatorilor; Exemplu: poate include suport pentru RAID, iar serverul nostru nu foloseste RAID, nu va include suport pentru un firewall la nivel de aplicatie, iar necesitatile serverului nostru presupun folosirea unui astfel de firewall, nu va include driver pentru o anumita placa de retea wireless pe care o folosim daca aceasta este putin mai "deosebita" etc; • kernelul cuprinde multe optiuni nefolositoare in cazul nostru particular; Exemplu: va cuprinde drivere pentru majoritatea placilor de baza, a placilor de retea, diferite aplicatii pe care nu le folosim niciodata etc; • dupa aparitia unei noi versiuni de kernel dureaza o perioada de timp pana cand apare forma sa compilata ca RPM sau DEB. In acest fel exista un "vulnerability window" in care nu suntem protejati impotriva ultimelor vulnerabilitati sau pur si simplu kernelul nostru nu acopera diferite buguri; 2. Compiland direct sursele kernelului Aceasta este metoda preferata in cele mai multe cazuri. Dorim sa compilam un nou kernel in urmatoarele conditii: a) vrem sa includem drivere pentru hardware nou aparut sau pentru hardwareul ale carui drivere nu sunt incluse in versiunea standard de kernel care vine cu distributia; includerea de optiuni pentru diferite aplicatii sau servicii (QoS - HTB, firewall la nivel de aplicatie, criptografie, LVM, RAID etc); c) vrem sa acoperim diferite bug-uri sau probleme de securitate. In medie apare o noua versiune de kernel la circa 2 saptamani. Aceasta acopera bug-urile din versiunea trecuta descoperite intre timp; d) dorim un "fine tuning" al kernelului exact pentru configuratia hardware a serverului nostru (tipul nostru de procesor in special); Indiferent de distributia de Linux folosita, kernelul este acelasi. Acesta este marca inregistrata a lui Linus Torvalds, iar dezvoltarea sa este supravegheata si avizata de acesta. Structura Kernel Linux Un kernel se poate gasi in 2 forme: 1. Modular Un kernel modular se caracterizeaza prin faptul ca intreaga sa functionalitate nu este inclusa in acesta ci in alte fisiere numite module si care se pot incarca/descarca in/din kernel in timp ce acesta este incarcat in RAM si ruleaza. Exemplu: Kernelul nu include suport pentru ipv6 sau pentru ntfs. Suportul pentru ipv6 sau ntfs se gaseste in fisiere separate numite module. Acestea se pot incarca in kernel in momentul in care avem nevoie de respectiva functionalitate respectiv dorim sa folosim ipv6 sau sau sa montam o partitie ntfs. 2. Nemodular Un kernel nemodular se caracterizeaza prin faptul ca intreaga sa functionalitate este inclusa in acesta. Nu se pot incarca/descarca module din kernelul care ruleaza. IMPORTANT !! Kernelul de Linux este reprezentat fizic printr-un SINGUR fisier care se gaseste de obicei /boot sub numele de /boot/vmlinuz-versiune Acesta reprezinta imaginea compilata si compresata a kernelului care se incarca in RAM la butare si doar la butare. Fiecare optiune pe care kernelul o ofera poate fi compilata ca parte integranta a kernelului sau ca modul. LKM (Loadable Kernel Modules) sunt fisiere binare care contin cod folosit pentru a extinde functionalitatea kernelului care ruleaza (the base kernel). Acestea se compileaza odata cu kernelul. Comenzi folosite pentru listare/incarcare/descarcare module din kernel: lsmod - listeaza modulele incarcate in memorie Pentru a incarca/descarca module in/din kernel se foloseste comanda modprobe (fisierul de configurare este /etc/modprobe.conf) modprobe nume_modul - incarca un modul -l = listeaza toate modulele disponibile (nu neaparat incarcate in kernel) -r module_name = descarca un modul din kernel Exemplu: modprobe ip6_tunnel Modulele se gasesc fizic pe hard disk in /lib/modules intr-un director cu numele kernelului si intr-o categorie anume. Compilarea Kernelului De cele mai multe ori compilarea kernelului se realizeaza cu ajutorul unui ghid de compilare. Exista mai multe astfel de ghiduri si anume pasi care trebuie urmati pentru compilarea kernelului. Toate acestea au in comun aceiasi pasi importanti. Ghidul asta de compilare este testat cu succes pe mai multe distributii Linux.In exemplul urmator am folosit Fedora. Etapa 1: Download ultima versiune de kernel de la www.kernel.org,decomprimarea si dezarhivarea sa intr-un director la alegere.Dupa decomprimarea arhivei ne mutam in directorul nou creat. !!!! Toate comenzile se vor executa in directorul care contine sursele kernelului.Pana la ultima etapa si anume restartarea PC-ului / Serverului ramanem in acest director. EXEMPLU: cd /home/pinglord wget -c http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.25.12.tar.bz2 tar -xjvf linux-2.6.25.12.tar.bz2 tar -xjvf linux-2.6.25.12.tar.bz2 Etapa 2 Kernelul foloseste un fisier de configurare numit .config. Acesta se numeste "kernel configuration starting point". La acest pas copiem fisierul de configurare .config al kernelului care ruleaza in directorul cu sursele kernelului abia downloadat si care se doreste a fi compilat. Fisierul .config pentru kernelul care ruleaza se gaseste cel mai probabil in directorul /usr/src/kernels/VERSIUNE_KERNEL_CARE_RULEAZA sau in directorul /boot Pe Fedora Core 9 fisierul de configurare al kernelului care ruleaza este /boot/config-2.6.25-14.fc9.i686 pentru versiunea 2.6.25.14 Compilarea unui nou kernel presupune pornirea de la o baza de facilitati si anume cele oferite de kernelul care ruleaza. Practic pentru noul kernel adaugam facilitati noi sau renuntam la facilitati in raport cu "running kernel". Acesta este motivul pentru care avem nevoie de .config al kernelului care ruleaza. Daca .config nu exista in directoarele specificate mai sus, se poate downloada un kernel in format RPM pentru distributia si arhitectura respectiva si i se foloseste fisierul .config. Fisierul de configurare al kernelului este format din optiunile care vor fi incluse in kernel, una pe cate o linie urmate de y (yes) daca se compileaza in imaginea kernelui sau m daca se compileaza ca modul. Exemplu : cp /boot/config-2.6.25-14.fc9.i686 /home/pinglord/linux-2.6.25.12 cd /home/pinglord/linux-2.6.25.12 mv config-2.6.25-14.fc9.i686 .config Etapa 3 Executam comanda: make oldconfig Rularea comenzii determina aparitia unei interfete text care foloseste fisierul de configurare de la kernelul vechi ( .config) pe care il modifica astfel incat sa introduca noile optiuni din kernelul nou care se compileaza, in vechiul fisier de configurare. Etapa 4 Executam comanda : make menuconfig Comanda make gconfig reprezinta o alternativa grafica la make menuconfig Rularea comenzii determina aparitia unei interfete text sau grafice pentru a alege optiunile ce vor fi incluse in kernel la compilare. IMPORTANT! Acesta este momentul in care trebuie sa adaugam optiunile pe care le dorim in kernel, sa le scoatem pe cele in plus etc. Pentru compilarea kernelului in cele mai optime conditii este nevoie de o cunoastere foarte buna a hardware-ului hostului. Etapa 5 Executam comanda: make Se poate executa si cu parametru -j daca exista procesor capabil.Cititi manualul de la make pentru optiunea -j Etapa 6 Executam: cp System.map /boot/System.map-2.6.25.12 ln -sf /boot/System.map-2.6.25.12 /boot/System.map Un simbol reprezinta un nume de variabila sau un nume de functie. System.map reprezinta un tabel cu echivalenta dintre numele simbolurilor si adresele acestora din memorie si este folosit de kernel. Etapa 7 Executam make modules_install Comanda de mai sus instaleaza modulele. Etapa 8 Executam : cp arch/x86/boot/bzImage /boot/vmlinuz-2.6.25.12 In functie de arhitectura directorul x86 poate sa fie i386. bzImage vine de la "big zImage" - Imaginea kernelului comprimata cu algoritmul zlib Cu toate ca numele nu este important, prin conventie se foloseste denumirea de vmlinuz sau bzImage pentru imaginea binara comprimata a kernelului. Intreg kernelul se gaseste intr-un singur fisier si anume fisierul bzImage sau vmlinuz. Sursele kernelului nu mai sunt necesare si pot fi sterse. Etapa 9 Executam : /sbin/mkinitrd /boot/initrd-2.6.25.12.img 2.6.25.12 /CODE]pentru RedHad/Fedora/SuSE sau [CODE]mkinitramfs -o /boot/initrt-2.6.25.12.img 2.6.25.12 pentru Ubuntu/Kubuntu/etc Exemplu: Se doreste suport pentru RAID, LVM sau SATA sau pentru alte functionalitati low level. Comanda de mai sus creaza un RAM Disk care contine modulele necesare la butarea sistemului. Primul argument al comenzii mkinitrd este fisierul de tip RAM Disk care se va crea. Al doilea argument si anume 2.6.25.12 este numele directorului din /lib/modules in care se gasesc modulele noului kernel. Automat in fata argumentului 2 se pune /lib/modules/ Etapa 10 Se modifica bootloaderul si anume grub.conf pentru a adauga noul kernel. Daca se foloseste Grub2 se ruleaza: update-grub2 Kernelul compilat nu este inca folosit de sistem. Acesta va fi folosit doar dupa restartarea calculatorului si alegerea sa din lista de kernele din meniul Grub. Referirea la vechiul kernel din fisierul de configurare al Grub-ului NU se sterge ! Posibilitatea ca sistemul sa nu mai buteze datorita unei erori sau datorita lipsei unei optiuni incluse in kernel este destul de mare. Este extrem de important sa nu stergem vechiul kernel (cel butabil) pentru a buta cu el in caz de nevoie. Eroarea fatala care poate sa apara este KERNEL PANIC.
  13. Ai pm ps-axl.Mi se pare foarte buna ideea si tocmai de aceea vreau sa ma implic.Astept un semn.
  14. Daca as putea sa ajut,va rog sa ziceti.
  15. Pai cam este pentru ca HDD-urile ,spre deosebire de USB,nu sunt hot-swappable.
  16. Ador partea cu reinstalarea OS-ul in fiecare an sau la un an jumate de windows pentru ca " se misca prost " , "nu mai merge" etc.
  17. Lasa-l si tu deschis pana ajung acasa de la birou te rog.E chiar un challenge foarte tare
  18. Iar mi s-a golit directoru...pfff..ce oameni rai
  19. Vreau si eu un alt user cu aceleasi permisiuni ca mi se sterge munca care o depun
  20. Ma refeream cand zicea de nologine sau VPN-uri care normal trec si ele prin niste routere/sw-uri mai calumea.Daca vrea sa fie hacer cu routeru vecinului sa vada cum isi violeaza pisica nu e panica pe log-uri
  21. Anonimitate 100% nu exista.Echipamentele pastreaza log-uri.
  22. Te rog informeaza-te din ce este compusa o adresa MAC inainte sa zici MAC de japonia/china/marte/venus etc. 48 biti . 24 identificare de vendor,24 identificare unica a placii de retea. Acum spune-mi unde intra partea cu China,Japonia si etc
  23. Cred ca ai fi cel mai bun ministru de finante al Romaniei
×
×
  • Create New...