WMWeather ir WMWeather+ programėlės

15 balandžio, 2007 – 5:59

Tikriausiai daugelis esate domėjęsi temperatūros rodymu Linux sistemų aplinkose, tačiau nepastebėdavote savarankiškų programėlių, kurios veikia taip pat gerai kaip ir GDesklets ar Karamba valdomos. Šios programėlės gali funkcionuoti greičiau, savarankiškiau ir kartais netgi funkcionaliau. Apžvelgsime WMWeather ir WMWeather+ programėles.

Abiejų programų įdiegimas buvo panašus, sklandus ir nekilo visiškai jokių problemų. Reikėjo naudoti Portage komandą emerge. Jūs įdiegdami galite naudoti savo sistemos paketų valdiklį.

Nors su instaliacija viskas buvo tvarkoj, vėliau paaiškėjo, kad nė viena iš šių programų nėra sukonfigūruota automatiškai kokiu nors laiko zonos nustatymo būdu. Teko pačiam atsiversti atlasą, susirasti savo koordinates ir dar internete paieškoti keturraidžio ICAO indikatoriaus (tai buvo būtina opcija; Kauno atitikmuo – „EYKA“). Jeigu būtų buvę negalima nurodyti šių opcijų /etc/wmweather.conf konfigūraciniame faile, tai WMWeather programėlė taptų tikrai nepatogi. Deja, neteko rasti WMWeather+ konfigūracinio failo. Laimei dokumentacija gaunama su paketais yra pakankamai išsami, kad turėtume puikiai veikiančias programas.

Nuvylė, kad jos šiek tiek daugiau nei tikėjausi sulėtina Window Manager (toliau WM) užsikrovimą. Tačiau šią problemą išsprendžiau su Fluxbox WM paredaguodamas ~/.fluxbox/startup failą ir perkeldamas jį po Fluxbox paleidimo. Taip susitaupo kokios 5 sekundės, kadangi WMWeather ir WMWeather+ iššvaisto maždaug tiek laiko sinchronizavimui ir užsikrovimui. Keisčiausia pasirodė, kad iš grafinės pusės jos puikiai derinasi prie mažai vizualių ir negalingų aplinkų, bet pasiruošimo rodyti informaciją laiko atžvilgiu jos tikrai ne kokio Fluxbox stiliaus…

Tikriausiai iškilo klausimas, kuo skiriasi šios aplikacijos. WMWeather+ programėlė yra labiau vizuali, bet informaciją atvaizdavo labai smulkiais šriftais. Tuo tarpu WMWeather informaciją pateikė žymiai aiškiau.

Štai šių programėlių nuotrauka (iš kairės WMWeather+, o dešinėje WMWeather) :

WMWeather screenshot’as. WMWeather+ - iš kairės, o WMWeather - iš dešinės.

Įdomu buvo tai, kad WMWeather+ galėjo rodyti kitų dienų ir radaro duomenis. Tačiau nemanau, kad pačios programėlės dydis yra tinkamas tokioms funkcijoms. Taip pat manau, kad jeigu būtų pašalintas saulės/mėnulio vaizdavimas, tai būtų sutaupyta žymiai daugiau vietos ir būtų galima padidinti teksto dydį.

Daugiau tokių programėlių galite rasti:
http://bbtools.sourceforge.net/
http://www.dockapps.org/
http://freshmeat.net/

2007 m. balandžio 15 d. 12:44, bOOm

ProFTPD serveris Gentoo sistemoje

19 kovo, 2007 – 11:55

ProFTPD logotipas Šiame straipsnyje apžvelgsime vieno populiaresnio FTP serverio ProFTPD diegimą į Gentoo sistemą. ProFTPd – tai programinė įranga FTP serveriui Unix šeimos sistemai. Jis turi gana gerai konfigūruojamą demoną. Pats ProFTPD yra paremtas GPL licencija. Rašau apie ProFTPD, nes jis turi gana daug dokumentacijos ir paprastą konfigūraciją. Tai leidžia jį labiau modifikuoti. Kaip jau rašiau, konfigūracija gana paprasta, lengvai skaitoma ir keičiama.

Įdiegimas
Kad įsitikintumėme konfigūracijos paprastumu ir lengvumu pirmiausiai suinstaliuokime patį ProFTPd. Tą padaryti Gentoo sistemoje (ar kitoje, kuri turi Portage) mes galime paprasčiausiai įvykdę (grotelės prieš komandą rodo, kad ją reikalaujama vykdyti su super vartotojo teisėmis (sudo arba root), o dolerio ženklas praneša, jog komandą rekomenduojama vykdyti su paprasto vartotojo teisėmis):

# emerge net-ftp/proftpd

APT sistemose (Debian, Ubuntu ir kt.):

# apt-get install proftpd

YUM sistemose (Fedora Core ir pan.):

# yum install proftpd

Pacman sistemose(Arch Linux ir kt.):

# pacman -S proftpd

ProFTPD turėtų būti suinstaliuota. Patikrinkime komandą ls /etc/proftpd ir įsitikinkime, kad ProFTPD buvo suinstaliuota. Turėtume gauti maždaug tokį atsakymą:

XWSF56 ernestas # ls /etc/proftpd
proftpd.conf.distrib proftpd.conf.sample

Jeigu tokio negauname, tai pabandykime perinstaliuoti ProFTPD arba pasinaudoti komanda whereis proftpd, kad sužinotumėme kur yra ProFTPD failai.
Taip pat norėčiau paminėti, kad jeigu nenorite konfigūruoti rankiniu būdu, galite naudotis grafiniu įrankiu GProFTPD, tačiau mes visgi siūlome pabandyti konfigūraciją pasirašyti patiems – galbūt viską ko mes norime nebus taip sunku padaryti ir rankomis (ir atminkite, kad su GproFTPD jūs neišnaudosite visų ProFTPD galimybių). GProFTPD galite instaliuoti ta pačia komanda kaip ir ProFTPD, tik pakeiskite „proftpd“ į „gproftpd“.

Konfigūravimas
Įdiegimui sėkmingai pasibaigus galime pradėti konfigūravimą. Sukurkime /etc/proftpd/proftpd.conf naudojantis tokia komanda:

# touch /etc/proftpd/proftpd.conf

Dabar jį redaguokime ir sukonfigūruokime pagal žemiau pateiktą pavyzdį.

# nano -w /etc/proftpd/proftpd.conf

Pavyzdys:

# Atminkite, kad tai tik šablonas (ProFTPD turi žymiai daugiau funkcijų, kurios čia nėra nurodytos)
# Šioje eilutėje nurodykite savo serverio hostname arba IP adresą
ServerName "127.0.0.1"
# Norodome serverio tipą. numatytai paliekame "standalone" (taip pat galima "inetd")
ServerType standalone
# Pakeiskime „el@pastas“ į jūsų el. Pašto adresą, kurį jūs naudosite kaip administratoriui
ServerAdmin el@pastas
# Palikime įrašą "on", kitaip ProFTPD serveris liks nestartavęs
DefaultServer on
# Palikime šią opciją išjungtą - taip sumažinsime nepavykusių prisijungimų skaičių
RequireValidShell off
# Palikdami numatytąsias opcijas mes nurodome, kad ProFTPD registruotus vartotojus automatiškai nukreiptų į jų namų katalogus
AuthPAM off
AuthPAMConfig ftp
# Pagal sekančią eilutę ProFTPD naudos 21 prievadą
Port 21
# Umask nurodo kokias teises nurodyti naujoms direktorijoms ir failams. Numatytoji opcija draudžia išoriniams ir toje pačioje grupėje esantiems vartotojams pasiekti failus.
Umask 022
# Nurodome, kiek vienu metu daugiausiai leidžiama instancijų, t. y. kiek seansų gali veikti vienu metu
MaxInstances 30
# Nurodome, kokį vartotoją ir grupę sukūrėme ProFTPD'ui
User proftpd
Group proftpd
# Įjunkime leidimą perrašyti (tai yra absoliuti opcija, t. y. jeigu ją išjunksite, tai negalėsite perrašinėti failų net esant tinkamoms teisėms, o įjungus tik esant tinkamoms teisėms)
AllowOverwrite on
# Standartinė FTP serverio konfigūracija anonimams (pavyzdyje "sharinama" /mnt/sda6)
# Jeigu norite naudoti vartotojus, tai praleiskite visą šią skiltį (skiltis bagiasi po "")
User ftp
Group ftp
# Sukuriame aliasą vartotojui ftp
UserAlias anonymous ftp
# Nurodome, kiek daugiausiai klientų gali prisijungti prie mūsų serverio vienu metu
MaxClients 10
# Šio failo turinys bus rodomas kiekvieną kartą prisijungiant prie serverio
DisplayLogin welcome.msg
# Šio failo turinys bus rodomas kiekvieną kartą pereinant į kitą katalogą
DisplayChdir .message

Kaip matote šis pavyzdys skirtas anoniminiam FTP sukurti. Jeigu norite neleisti anonimų, tai nekurkite aliaso konfigūracijoje ir su komanda passwd nustatykite slaptažodį vartotojui ftp:

# passwd ftp

Pabaigę konfigūruoti ir išsaugoję konfigūraciją sukurkime ProFTPD vartotoją ir grupę:

# adduser proftpd
# groupadd proftpd

Taip pat paredaguokime /etc/hosts ir pridėkime savo kompiuterio IP adresą su kompiuterio vardu. Dabar jūsų /etc/hosts failas turėtų atrodyti maždaug taip:

127.0.0.1 localhost
192.168.2.100 CEL1200

ProFTPD paleidimas į darbą
Baigę konfigūruoti ir kitus pašalinius darbus įvykdykime komandą:

# /etc/init.d/proftpd start

Taip paleisime ProFTPD. Dabar galime bandyti jungtis prie serverio. Atkreipkite dėmesį, kad FTP prieiga pritaikyta visiems sistemos vartotojams, o ftp vartotojas tik anonimams.

Apibendrinimas
Pabaigdamas šį straipsnį norėčiau pasakyti, kad iš tikrųjų ProFTPD turi klaidų gana didelių, todėl jeigu jį naudojate tai nepamirškite kuo dažniau ieškoti atnaujinimų. Jeigu jums prireikė pagalbos galite jos ieškoti šiomis nuorodomis:
http://www.proftpd.org/docs/
http://www.pixel.lt
http://www.system-admins.net
http://www.kompiuterija.lt/diskusijos
http://www.google.lt – kas be ko…
http://gentoo-wiki.com/HOWTO_ProFTPD – specialus straipsnis Gentoo sistemai

2007 m. kovo 19 d., Pixel.lt

Proxy serveris webmail’ui

19 kovo, 2007 – 9:41

Galbūt esate susidūrę su tokiais atvejais kai randame labai patogią ir gerą programą, bet jai trūksta saugumo. Taip yra ir su MagicMail Monitor pašto programa – ji gana patogi, lengva ir sparti. Deja, ji neturi SSL ir TLS palaikymo ir todėl su ja be jokių papildymų negalima tikrinti GMail pašto sąskaitos. Mes paneigsime šį teiginį įdiegdami lengvą proxy serverį į MS Windows sistemą.

FreePOPs proxy serverio įdiegimas

Šis serveris gali būti puikiai pritaikytas.
Serverio programinę įrangą galime parsisiųsti iš www.freepops.org. Parsisiuntę paleiskime instaliacinį failą ir viską vykdykime tokia seka: I like free software and I accept this license–>Continue–>Install–>Close–>No. Serveris instaliuotas.
Dabar galime paleisti serverį: Start–>Programs–>FreePOPs–>FreePOPs.
Pagal numatytuosius nustatymus serveris dirba 2000 prievadu. Todėl nepamirškite pašto programoje nurodyti ne standartinį „110“, o „2000“ prievadą.

Taip pat jūs galite FreePOPs serverį instaliuoti kaip tarnybą. Tada serverį galėtumėte valdyti iš services.msc ir leisti jam užsikrauti kartu su kompiuteriu, nesvarbu koks vartotojas prisijungs prie Windows. Tai galima padaryti šitaip: Start–>Programs–>FreePOPs–>Service–>Install service (-b 0.0.0.0). O jeigu norite, kad serveris dirbtų ne 2000 prievadu, o 110 tai vykdykite: Start–>Programs–>FreePOPs–>Service–>Install service (-p 110 -b 0.0.0.0).

MagicMail Monitor paruošimas darbui su proxy serveriu

Pirmiausiai parsisiųskime patį MagicMail Monitor ir jį sukonfigūruokime būsimam naudojimui su GMail. Keliaukime į http://mmm3.sourceforge.net/ ir parsisiųskime programą. Ją išpakuokime bet kur ir paleiskime išpakuotąjį Magic.exe failą. Prieš mus turėtų atsirasti MagicMail programos langas.

Programos langas

Paspauskime File–>New ir taip sukurkime naują MagicMail profilį. Kiekvienas profilis saugomas atskirame faile. Tą failą galima atidaryti su MagicMail, t. y. per „Open with…“ dialogą. Iš karto dar nesukūrę naujų pašto dėžučių išsaugokime profilį: File–>Save. Nurodome kur saugoti ir spaudžiame mygtuką „Save“.

Spauskime klavišą Insert ir taip programoje sukurkime naują pašto dėžutę. Pasirinkime „Create Empty“ ir spustelėkime mygtuką „OK“. Atsidariusį langą užpildykime taip:

Konfigūracijos paveiksliukas

Vietoje proxy serverio adreso įrašykite localhost (jeigu serveris paleistas tame pačiame kompiuteryje), IP adresą arba kompiuterio vardą, kuriame įdiegtas FreePOPs serveris. Vartotojo vardo vietoje įrašykite savo el. pašto adresą (nebūtinai GMail, bet el. pašto adreso domenas privalo būti nurodytas šiame tinklapyje: http://www.freepops.org/en/viewplugins.php).

Nuspaudę mygtuką „OK“ mes jau galime tikrinti pašto dėžutę. Tiesiog nuspauskime klavišą F5 ir laukime kol bus parsiųstas mūsų el. paštas. O tuo metu stulpelyje „Status“ mes galime matyti kas vyksta.

Apibendrinimas

Pabaigai galiu pasakyti, jeigu naudojate MagicMail Monitor su kita programa, tai tikrai neapsimoka kurti proxy serverį ir apskritai naudoti šią programą. Jeigu jums el. paštas nėra toks svarbus, kad jį reikia tikrinti kas kelios sekundės, o jūs dar dirbate su kompiuteriu ir labai svarbu resursai, tai rekomenduoju nenaudoti šios programos. Jūs turite atkreipti dėmesį į tai, kad čia tik „Monitor“, t. y. iš esmės pagrindinė funkcija – tik rodymas ar yra naujų laiškų. O dėl serverio tikiuosi jūs irgi atkreipiate dėmesį, kad jis ryja daugiau srauto negu pašto tikrinimas tiesiogiai per pop.gmail.com.

2007 m. kovo 19 d., Pixel

Dirbame su GRUB

20 vasario, 2007 – 11:51

GRUB logotipas GNU GRUB – GRand Unified Bootloader, bootloader’is (programa, kuri leidžia vartotojams užkrauti operacinę sistemą ir jų turėti daugiau negu vieną; ji yra būtina kompiuterio krovimuisi). Pasistengsiu aprašyti trumpą jo konfigūravimą daugeliui OS.

Truputis istorijos
GRUB „gimė“ 1995 m. Jo kūrėjas – Erich Stefan Boleyn. Erich’as bandė paleisti GNU Hurd (kernelio analogas Unix sistemų kernel’iams). Kartu su Brian Ford jie suformavo multikrovimosi (iš angl. k. multiboot; nesupraskite tiesiogine prasme, nes aš turiu omenyje tai, kad multiboot yra funkcija, kuri leidžia prieš kraunant OS pasirinkti kurią OS užkrauti) specifikacijas. Šios specifikacijos nurodė kaip turėtų veikti multikrovimasis. Vėliau Erich’as bandė modifikuoti FreeBSD bootloader’į taip, kad jis galėtų krauti daugiau negu vieną OS. Visgi jis suprato, kad modifikuoti bus sunkiau ir rezultatas gausis blogesnis negu rašant savo bootloader’į. Taip jis ir padarė t. y. sukūrė savo bootloader’į. Rezultate turime labai galingą ir vieną populiariausių bootloader’ių.

GRUB instaliavimas
Iš pradžių aptarsiu GRUB instaliavimą. Pirmiausiai turime gauti kokį nors Linux LiveCD (rekomenduoju su fdisk ir būtinai su GRUB‘o paketais) ir jį užsikrauti. Pavyzdžiuose mes naudosimės Ubuntu 6.10 Edgy Eft LiveCD. Kai jau gavote LiveCD tai sukurkite bet kokios failų sistemos particiją (būtinai nurodykite tipą kaip primary), kurios dydis būtų apytiksliai 30 MB, pagal mano parašytą straipsnį apie fdisk. Žinoma galite naudotis taip pat Ubuntu 6.10 LiveCD esančiu GParted. Tai grafinis particijų valdiklis, bet nemanau, kad mums jis reikalingas, nes viską galime padaryti su fdisk (nebent reikia „apkarpyti“ particiją, bet tada galime pasinaudoti Partition Magic, kurį nemokamai galime rasti Hiren’s BootCD kompakte). Nepamirškime uždėti boot žymę šiai particijai, o kitoms nuimti (kai kur tai traktuojama kaip Active režimas). Kompiuteris pirmiausiai naudos šią particiją.
Dabar pasirinkime failų sistemą. Aš rekomenduoju naudoti ext2, nes jos parametrai labiau tinkami negu ext3 ar kitų failų sistemų. Jeigu norime naudoti ext2 įvykdykime:

# mke2fs /dev/xdyi

Vietoje x rašykite h (IDE naudojantis įrenginys) arba s (SCSI įrenginys). Vietoje y rašykite:
a arba b – Master ir Slave diskai prijungti prie pirminio prievado, 1 IDE kontroleriaus;
c arba d – Master ir Slave diskai prijungti prie antrinio prievado, 1 IDE kontroleriaus;
e arba f – Master ir Slave diskai prijungti prie pirminio prievado, 2 IDE kontroleriaus;
g arba h – Master ir Slave diskai prijungti prie antrinio prievado, 2 IDE kontroleriaus.
O vietoje i rašykite particijos numerį, į kurią sukurėte GRUB‘ui.
Pavyzdžiui:

# mke2fs /dev/hda1

Štai komandų sąrašas failų sistemoms:
ext2 – mke2fs
ext3 – mke2fs -j
reiserfs – mkreiserfs
xfs – mkfs.xfs
jfs – mkfs.jfs
Pasileiskite terminalą ir iš LiveCD vykdykite šią komandą:

# grub-install /dev/xdy

Pavyzdžiui:

# grub-install /dev/hda

Atminkite, kad Linux sistemose skaičiai šalia įrenginio reiškia jo padalinį, todėl šiuo atveju skaičiaus nereikia nurodyti, nes taip instaliuotume GRUB’ą į particiją, o ne kietąjį diską. Jeigu instaliuotume į particiją tai norint užkrauti tą GRUB’ą mums reikėtų dar vieno bootloader’io, kuris būtų įdiegtas tame kietąjame diske iš kurio pasieksime tą GRUB’ą. Bet mes šiame straipsnyje aptariame GRUB’ą pagrindiniame kietąjame diske t. y. įrašytą į MBR (Master Boot Record – HDD takelis, kurį nuskaito ir įvykdo BIOS’ai, taip jie pratęsia kompiuterio krovimąsi ir darbą perduoda bootloader’iui).
Suinstaliavę GRUB’ą galime pradėti jo konfigūravimą. Tik prieš tai nustatykime default ir timeout reikšmes: default rekomenduoju nurodyti 0 (bus kraunamas pats pirmasis meniu punktas, jeigu jūs per nurodytą laiką nepasirinksite ką krauti), o timeout rekomenduoju nurodyti 10, jeigu nurodysite daugiau negu vieną meniu punktą (bus laukiama 10 sekundžių iki numatytosios OS krovimo), arba 0, jeigu nurodysite tik vieną meniu punktą (OS bus kraunama iš karto t. y. nematysite pasirinkimo meniu).

GRUB‘o konfigūravimas Linux‘ui
Primontuokime prie /boot GRUB‘o particiją:

# mkdir /mnt/boot
# mount /dev/xdyi /mnt/boot

Atsidarykime GRUB konfigūracinį failą:

# nano -w /mnt/boot/grub/menu.lst

Pridėkime šias eilutes:

# Meniu punkto pavadinimas, kurį matysime meniu
title Linux# Nurodome kernel'io particiją su HDD
# root ([hd – IDE vartotojams; sd – SCSI įrenginių vartotojams][kietojo disko numeris(pirmasis diskas ne 1, o 0!)],[particijos numeris(pirmoji particija ne 1, o 0!), kurioje yra kernel'is])
# Pavyzdžiui:
root (hd0,0)
# Tai atitiktų /dev/hda1 particiją

# kernel [nurodykite kernelį] root=[nurodykite šakninę (/) particiją]
# Pavyzdžiui:
kernel /boot/kernel root=/dev/hda2

Galutinį variantą šio meniu punkto be komentarų galite gauti http://pastebin.com/f454f294d adresu.
Išsaugoję konfigūracinį failą perkraukite kompiuterį ir jau galite užkrauti savo Linux distribuciją.

Per GRUB’ą užkrauname kitą bootloader’į
Dažnai pasitaiko, kad reikia užkrauti kokią nors Windows OS/Solaris/*BSD ar kitą operacinę sistemą. Bet Windows reikalauja savo bootloader’io. Yra OS, kurios nereikalauja savo bootloader’io ir jas galima sukonfigūruoti pagal Linux konfigūravimą, bet jeigu mes neturime laiko tai sekime straipsnį toliau, o ne grįžkime prie GRUB‘o konfigūravimo Linux‘e. Šioje straipsnio dalyje aptarsime kitų OS užkrovimą.
Mes pasirinksime paprastesnį būdą (jis yra universalesnis negu priversti kokią nors Microsoft Windows nuskaitinėti ir įrašinėti GRUB‘o particiją ir per Windows ar tą kitą OS konfigūruoti GRUB’ą) – užsikrausime mūsų pasirinktą Linux LiveCD ir redaguosime GRUB’o konfigūracinį failą. Bet prieš redaguodami nepamirškime prisimontuoti savo GRUB‘o particiją:

# mkdir /mnt/boot
# mount /dev/xdyi /mnt/boot

Redaguokime GRUB‘o konfigūraciją:

# nano -w /mnt/boot/grub/menu.lst

Pridėkime šias eilutes:

# Meniu punkto pavadinimas, kurį matysime GRUB meniu
# Pavyzdžiui:
title=Windows XP Professional
# Nurodome kurią particiją naudoti
# rootnoverify ([hd – IDE vartotojams; sd – SCSI įrenginių vartotojams][kietojo disko numeris(pirmasis diskas ne 1, o 0!)],[particijos numeris(pirmoji particija ne 1, o 0!), kurioje yra sekantis bootloader'is/operacinė sistema])
# Pavyzdžiui:
rootnoverify (hd0,0)
# Kai kurios OS (Windows OS toji eilutė nėra būtina) reikalauja, kad jų particijos būtų aktyvios, bet jeigu naudojame GRUB atskiroje particijoje tai aktyvi yra ne tos OS, o GRUB‘o particija. Todėl rekomenduoju konfigūraciniame faile nurodyti tolimesnę eilutę.
maceactive
# Tolimesnė eilutė nurodo GRUB‘ui perleisti bootloader'io darbą kitam bootloader'iui, kuris yra rootnoverify eilutėje nurodytoje particijoje. Priešingai negu buvusi eilutė, ši eilutė yra būtina
chainloader +1

Išsaugoję konfigūracinį failą ir perkrovę kompiuterį mes jau galime naudotis norimu bootloader’iu.

Galutinį variantą be komentarų galite gauti adresu http://pastebin.com/f63f4f04d.

GRUB meniu fonas
GRUB’as turi įdomią funkciją (numatyta, kad ji susikompiliuoja jeigu jūs neliepiate kompiliatoriui jos nekompiliuoti, todėl neaprašysiu ką daryti jeigu mūsų GRUB’as neturi tokios funkcijos, apie tai galite pasiskaityti pabaigoje pateiktoje nuorodoje), kuri leidžia mums nustatyti kokio nors paveikslėlio rodymą meniu fone. Iš tikrųjų tai gana daug pagražina mūsųs sistemos krovimąsi. Deja, reikia atminti, kad dydis ribojamas iki 640×480, o spalvų kiekis iki 14, bet ir tai galima puikiai išnaudoti.

Pirmiausiai nusipieškime paveikslėlį, kurio dydis maždaug atitiktų 5:4 santykį (jeigu galima tai pieškite 640×480 iš karto, nes taip išvengsite iškraipymų keičiant dydį). Dabar atidarykime jį su „The Gimp“ ir pakeiskime jo dydį:

Paveikslėlis–>Keisti paveikslėlio dydį

Nuimkime grandinę () ir „Plotis“ laukelyje įrašykime 640, o laukelyje „Ilgis“ – 480. Spustelėkime mygtuką „Ištempti“.

Dabar sumažinkime spalvų kiekį.

Sluoksniai–>Spalvos–>Spalvų sumažinimas…

Sumažinkime spalvų iki 14 ir paspauskime „Gerai“.
Dabar išsaugokime paveikslėlį (Byla–>Išsaugoti kaip…) XPM (X PixMap) formatu ir šia komanda jį suspauskime:

$ tar -cf [paveikslėlis].tar [paveikslėlis]

Paveikslėlį nukopijuokime į /boot katalogą (nepamirškime jo prisimontuoti kaip tai darėme kiekvieno konfigūravimo pradžioje):

# cp [paveikslėlis].tar /boot/[paveikslėlis].tar

Atsidarykime GRUB‘o konfigūraciją:

# nano -w /boot/grub/menu.lst

Ir prirašykime po eilute „timeout“ šias eilutes:

root ([hd – IDE vartotojams; sd – SCSI įrenginių vartotojams][kietojo disko numeris(pirmasis diskas ne 1, o 0!)],[particijos numeris(pirmoji particija ne 1, o 0!), kurioje yra sekantis bootloader'is/operacinė sistema])
splashimage /boot/[paveikslėlis].tar

Pavyzdžiui:

root (hd0,0)
splashimage /boot/vista.xpm.tar

Pastaba. Vietoje „[paveikslėlis]“ parašykite paveikslėlio failo pavadinimą.

Slaptažodžiai
Norėdami apsaugoti GRUB’ą jūs galite pasinaudoti „GRUB apsaugojimas“ straipsniu. Jame puikiai išdėstyta kaip uždėti slaptažodį ant GRUB’o ir apsaugoti jį.

Pabaiga
Apibendrinant, GRUB’as yra pakankamai galingas bootloader’is, kuris ateityje manau išpopuliarės dar labiau. GRUB’as įdedamas beveik į visas Linux OS, o ir būti pasiruošusiam Linux diegimui visada būna pravartu. Tikiuosi, kad jums pavyko puikiai sukonfigūruoti GRUB’ą ir šis straipsnis dar labiau padidins GRUB’o vartotojų skaičių.

Plačiau apie paveikslėlius GRUB meniu fone galite pasiskaityti adresu http://ruslug.rutgers.edu/%7Emcgrof/grub-images/.

2007 m. vasario 20 d., Pixel

IPTABLES naudojimas

16 vasario, 2007 – 12:32

IPTABLES tai paketų filtras (prafiltruojami nereikalingi paketai (nesupratusiems tai paketai būtų tinklo srautas; juos filtruoti reikia, nes visiškai uždarydami nereikalingus prievadus (pavyzdžiui 80 prievadą, kurio mes nenaudojame, arba 22 (SSH)) mes sumažiname įsilaužimo tikimybę), taip pat jie gali būti persiunčiami į kitą kompiuterį (su IPTABLES galima iš paprasto kompiuterio pasidaryti maršrutizatorių (aparatas, kuris aprūpina tinklą srautu ir atlieka dar keletą funkcijų, bet ši buvo esminė)); kitaip sakant IPTABLES gali dirbti ne tik kaip ugniasienė, bet ir maršrutizatorius) Unix tipo sistemoms. Juo iš tikrųjų gana patogu naudotis ir jis yra labai galingas. Bet tai tik mano nuomonė. Įsitikinti galėsite šiame straipsnyje.

Jau senai norėjau parašyti straipsnį apie IPTABLES naudojimą. Viską darysime Gentoo sistemoje, todėl gali kilti šiek tiek nesuderinamumų tarp kitų OS dėl komandų, bet pagrindinės IPTABLES komandos tos pačios. Pavyzdyje naudosimės 2.6 kernel’iu.

Pirmiausiai turime įsitikinti, kad mūsų sistema palaiko IPTABLES, o ne IPCHAINS (tai senesnė paketų filtro versija, kuri naudojama 2.4 kerneliuose). Tai padarysime šia komanda:

# grep -i netfilter /usr/src/linux/.config

Jeigu gausime atsakymą, kuris nėra „CONFIG_NETFILTER=y“, vadinasi mes neturime IPTABLES palaikymo dabar naudojamame kernel’yje. O jeigu gausime tokį atsakymą tai galime praleisti kernel’io kompiliavimo sekciją.

Kompiliuojame kernel’į su IPTABLES palaikymu

Pirmiausiai atsisiųskime kernel’io išeities tekstus („sources“; iš www.kernel.org) ir išpakuokime į /usr/src/linux komanda:

# tar xzfv kernel*.tar.gz -C /usr/src/linux

tar.gz archyvui, o tar.bz2 archyvui būtų tokia komanda:

# tar xjfv kernel*.tar.bz2 -C /usr/src/linux

Toliau konfigūruosime kernel’į:

$ cd /usr/src/linux
# make menuconfig

Jeigu norite, tai galite naudoti „make xconfig“ komandą, bet atminkite, kad ji reikalauja Qt ir paleistų X’ų. xconfig’e galėsite naudotis paieška, o menuconfig – ne.

Einame į Networking–>Networking Options–>su Space klavišu pažymime Network packet filtering (replaces ipchains)–>įeikime į Network packet filtering (replaces ipchains) ant šios eilutės paspausdami Enter–>įjunkime Netfilter Xtables support (required for iptables), rekomenduoju nejungti kaip modulio t. y. Spauskite Space tol kol pamatysite šią eilutę pažymėta žvaigždute, o ne raide M ar iš viso nepažymėtą–>išeikime vienu lygiu aukščiau ir eikime į IP: Netfilter configuration–>įjunkime IP tables support (required for filtering/masq/nat)–>taip pat įjunkime Packet filtering. To turėtų užtekti, kad kernel’is palaikytų IPTABLES. Pabandykite sukompiliuoti ir išbandyti kernel’į (visur paspauskite Exit ir, kai iškris klausimas Do you wish to save your new kernel configuration?, paspauskite „Yes“).

Kompiliuojame kernel’į:

# make && make modules_install

Įdedame naujojo kernel’io pasirinkimą GRUB’e:

# cp arch/i386/boot/bzImage /boot/kernelis

Atkreipkite dėmesį, kad galite vietoje i386 rašyti savo platformą.

Konfigūruokime GRUB:

# nano -w /boot/grub/menu.lst

Įdėkime šias eilutes:

title=Gentoo Linux 2.6.20 # ši eilutė nurodys ką rodyti GRUB meniu kaip pasirinkimą šio kernel'io
root (hd0,0)# nurodome kur ieškoti kernel'io
kernel /boot/kernelis root=/dev/hda2 video=vesa:mytt:3,ywrap # konfigūruokime kernel'į. Jeigu nenaudojate VESA framebuffer tai ištrinkite "video=vesa:mytt:3,ywrap".

Patikrinkime ar timeout eilutėje nėra nustatyta skaičius 0. Jeigu yra tai jį padidinkime. Tai nurodys kiek sekundžių laukti kol pasirinksime kernel’į. Jeigu jo nepasirinksime tai sistema kraus tą, kuris į x-asis (x tai skaičius nurodytas default eilutėje, kernel’iai numeruojami pagal jų išsidėstymą meniu).

Jeigu turime LILO tai atlikime šiuos veiksmus:

# nano -w /etc/lilo.conf

timeout nurodykime ne mažiau kaip 0.
default reikšmę nurodykime tą meniu punktą, kurį LILO turi krauti jeigu per timeout eilutėje nurodytą sekundžių skaičių jūs nepasirinksite ką krauti.

image=/boot/kernel-2.6.20 # nurodykime kur yra kernel'is
label=gentoo # Meniu punkto pavadinimas
read-only # Uždrausime įrašymą į kernel'io particiją
root=/dev/hda3 # root particija

Ir išsaugokime konfigūracinį failą.
Dabar galima perkrauti kompiuterį ir džiaugtis nauju kernel’iu.

Instaliuojame IPTABLES

Mes pavyzdyje naudosimės Portage, nes mūsų pavyzdinė OS yra Gentoo. Jums siūlau naudotis savo sistemos paketų valdikliais (Aptitude, Yum, Pacman ir pan.).

# emerge net-firewall/iptables

Tai būtų Portage IPTABLES instaliavimo komanda Gentoo sistemoje.
Aptitude vartotojams:

# apt-get install iptables

Yum vartotojams:

# yum install iptables

IPTABLES suinstaliuota. Dabar galime pereiti prie kitos dalies – IPTABLES konfigūravimo.

IPTABLES konfigūravimas

Iš karto norėčiau paminėti, kad vartotojai, kurie tiesiog nori ugniasienės Linux distribucijoje, gali įsidiegti Firestarter (Linux ugniasienė, kuri paremta IPTABLES) arba susigeneruoti konfigūruojantį IPTABLES bash scenarijų tinklalapyje http://easyfwgen.morizot.net/gen/.

Jeigu pasirinkote konfigūracinio failo generavimą tai nueikite pateiktu adresu ir atsakykite į klausimus. Jums bus pateiktas ilgas scenarijus. Jį išsaugokite kaip „scenarijus.sh“ ir suchmodinkite:

# chmod +x scenarijus.sh

Dabar jį paleiskite:

# sh scenarijus.sh

IPTABLES dabar turėtų būti sukonfigūruota. Tiesa, tai nėra geriausias būdas apsaugoti savo kompiuterį ar tinklą nuo įsilaužėlių. Geriausia tai padaryti yra pačiam konfigūruojant IPTABLES. Būtent todėl ir rašau šį straipsnį.

Pirmiausiai turėtume pasirinkti kaip konfigūruosime IPTABLES. Mes galime sukonfigūruoti ją per bash scenarijų (panašiai kaip ir easyfwgen.morizot.net/gen, tik visą failą pasirašysime patys ir taip padidinsime saugumą) arba paprasčiausiai vykdydami pavienes komandas. Tai jau jūsų skonio reikalas.

Norėdami savo bash scenarijų paleisti jūs turite jį suchmodinti kaip ir sugeneruotą scenarijų:

# chmod +x scenarijus.sh

O paleisti jį irgi reikalautina super vartotojo teisių:

# sh scenarijus.sh

Jeigu rašysime bash scenarijų tai atminkime tokią jo konstrukciją (bash scenarijai tai paprasti tekstiniai failai susidedantys iš konsolės komandų):

#!/bin/bash
# pirmoji eilutė („#!/bin/bash“) yra būtina, o kitose eilutėse grotelės („#“ simbolis) reiškia, kad visa toji eilutė yra komentaras ir kad ir ką jūs ten berašytumėte toje eilutėje, bash’as į tai nekreips dėmesio.# pačioje scenarijaus pradžioje susirašykime konstantas, kurias naudosime. Taip vėliau sutaupysime daugiau laiko, nes nereikės atsiminti anksčiau nurodytų duomenų.
TINKLESKE=“eth0“
LANOMASK=“192.168.2.0/24“
# vėliau jos gali būti panaudojamos vietoje reikšmės rašant konstantos pavadinimą su dolerio ženklu priešais ir be kabučių.
# pavyzdžiui: iptables -A FORWARD -s 192.168.1.2 -i $VIDINE_KORTA -j ACCEPT
# komandos rašyti dėl patogumo siūlau atskirose eilutėse. Ir nerašykite komandų su grotelėmis („#“ simbolis prieš komandą), nes jas reikia rašyti be grotelių priekyje, kadangi aš grotelėmis nurodau, kad komanda privaloma vykdyti super vartotojo teisėmis, o dolerio ženklu („$“) nurodau, kad komandą patartina įvykdyti su paprasto vartotojo teisėmis.
# tai yra viskas ką jums reikia žinoti kuriant bash scenarijus.

Dabar apžvelkime didžiąją dalį komandų:

# iptables -F

Šia komanda ištrinsime buvusią konfigūracija.

Prieš sekančiąją komandą norėčiau priminti, kad INPUT – įeinantis srautas (pavyzdžiui, norint pasiekti jūsų kompiuteryje esančią serverinę tarnybą (tarkim Apache) reikia leisti srautą pro 80 prievadą (jeigu norime dirbti iš išorės su mūsų kompiuteryje esančiu Apache)); OUTPUT – išeinantis srautas; FORWARD – persiunčiamas srautas į kitą kompiuterį (jeigu norėsime pakurti maršrutizatorių tai mums prireiks šios grandinės).

# iptables -P chain DROP

Ši komanda nurodys IPTABLES blokuoti tai ką nurodome vietoje chain (INPUT/OUTPUT/FORWARD – tai tarsi taisyklių grandinės (iš angl. k. chains; kiekviena skirta vis kitam srautui), jas ir rašykite vietoje chain). Pavyzdžiui, iptables -P INPUT DROP komanda užblokuos visą įeinantį srautą. Vietoje DROP mes galime rašyti anksčiau nurodytas grandines (INPUT/OUTPUT/FORWARD). Atkreipkite dėmesį, kad IPTABLES konfigūracijoje būtina blokuoti viską, kad toliau esanti konfigūracija turėtų kažkokią reikšmę. Vietoje DROP taip pat galite rašyti kitokią užduotį, bet mes norime viską užblokuoti, o ne leisti.

# iptables -A INPUT -i lo -j ACCEPT

A opcija prideda taisyklę prie mūsų nurodytos grandinės. i opcija mes nurodome tinklo įrenginį, o j nurodome užduotį, kurią IPTABLES turi atlikti su tais duomenimis. ACCEPT – nurodydami šią užduotį mes priimame visą srautą iš lo t. y. localhost.

Nepamirškime to pačio atlikti su OUTPUT ir FORWARD:

# iptables -A OUTPUT -o lo -j ACCEPT

Atkreipkite dėmesį, kad nenaudojame i opcijos, nes i opcija nurodo įeinančio srauto įrenginį, o o nurodo išeinančio srauto įrenginį.

# iptables -A FORWARD -i lo -j ACCEPT

Šiuo metu mes galime naudotis localhost, bet negalime naudotis internetu. Jeigu taip ir yra tai galime tęsti straipsnio skaitymą kaip niekur nieko, o jeigu ne tai rekomenduoju pasiskaityti IPTABLES dokumentaciją ir paieškoti ką darote ne taip.

# iptables -A INPUT -j ACCEPT -i eth0 -p tcp -d xxx.xxx.xxx.xxx –dport x

Vietoje eth0 įrašykime tinklo plokštę (taip nepamirškime padaryti ir kitose komandose, nes apie tai, kad reikia pakeisti eth0 aš tikriausiai jau nebeužsiminsiu), kurią naudojame internetui. p opcija nurodo protokolą (TCP – Transmission Control Protocol (šiuo protokolu duomenys siunčiami „bendraujant“ dviems kompiuteriams t. y. vienas siunčia, o kitas užtikrina pirmąjį kompiuterį, kad duomenis gauna), UDP – User Datagram Protocol (juo siunčiami/gaunami duomenys tiesiog siunčiami be jokių „klausimų“ nutolusiam kompiuteriui)). Šiuo atveju tai tcp. d opcija nurodo išorinį IP (pavyzdyje xxx.xxx.xxx.xxx), su kuriuo atliksime veiksmą, bet prisiminkite, kad tai nebūtina nurodyti. Tačiau IP arba prievadą nurodyti yra būtina. dport opcija nurodo išorinį prievadą (pavyzdyje x). Jeigu prievado nenurodysime tai bus naudojami visi prievadai.

# iptables -A OUTPUT -j ACCEPT -o eth0 -p tcp -s xxx.xxx.xxx.xxx –sport

Viskas taip pat kaip ir prieš tai buvusiame pavyzdyje, tik dabar naudojame vidinius IP adresus ir prievadus ir vietoje i nurodome o opciją.

Šiomis dviem komandomis įsileisime prisijungimus iš mūsų nurodytų IP adresų per mūsų nurodytus prievadus (pvz., 21) TCP protokolu.

# iptables -A INPUT -j ACCEPT -i eth0 -p udp -d xxx.xxx.xxx.xxx –dport 21
# iptables -A OUTPUT -j ACCEPT -o eth0 -p udp -s xxx.xxx.xxx.xxx –sport 21

Čia taip pat kaip ir su TCP, tik dabar p opcijai nurodykime UDP protokolą.

# iptables -A INPUT -i eth0 -p icmp -j ACCEPT
# iptables -A OUTPUT -o eth0 -p icmp -j ACCEPT

ICMP – Internet Control Message Protocol. Turėtume šį protokolą leisti, nes be jo mes negalėsime būti ping’inami ir iškils daug kitų problemų.

# iptables -A OUTPUT -j DROP -o eth0 -d one.lt

Tokia komanda užblokuosime priėjimą prie one.lt pro eth0 tinklo plokštę.

Mano nuomone šios informacijos turėtų užtekti, kad galėtumėte sukonfigūruoti iptables (atminkite, kad straipsnis nebaigtas ir tikriausiai ateityje dar bus pildomas ir koreguojamas, todėl rekomenduojame pastoviai tikrinti Versme.net ar nėra straipsnių apie saugumą arba apžvelkite IPTABLES dokumentaciją).

2007 m. vasario 16 d., Pixel