Archive for 'windows'

Uptime Windows

Ha már leírtam osx alá, csak azért is nézzük meg winfos alatt hogy lehet megnézni számítógépünk/szerverünk bekapcsolásának pillanatát, vagyis hogy mióta uptime a gépünk.


Read more

Apache SSL Windows Tutorial

Vettem egy SSL tanusítványt az egyik domainemhez, mert szeretném, hogy https-en keresztül is el lehessen érni bizonyos szolgáltatásokat. Próbálom gyakorlatisan megközelíteni az egész folyamatot, ezért kapásból ajánlanám is a godaddy.com-ot: egy sima SSL tanusítványt $29.99-ért adnak, megbízható, lehet fizetni paypal-al. Ha az összes aldomainünk (pl: aldomain.domain.hu) tanusítvánnyal való ellátása a cél, az már a wildcard kategória és $199 dolcsiba fog fájni.

A folyamat lépésről-lépésre:

1. Előkészítés:

  1. Szükségünk lesz a WIN32 OpenSSL legújabb verziójára: letöltés.
  2. Ellenőrizzük, hogy milyen Apache-unk van.. mindenképp OpenSSL-es változatra lesz szükség. Ha még nincs fenn az Apache, töltsük le és telepítsük: letöltés. A telepítést itt nem részletezem.
  3. A win/system32 könyvtárba másoljuk be a ssleay.dll és libeay32.dll-t, ha még nincsenek ott. A két ddl-t a kicsomagolt openssl mappájában találjuk meg.
  4. Másoljuk az OpenSSL.exe-t az Apache/bin mappába.
  5. Ellenőrizzük, hogy a mod_ssl.so file az Apache/modules könyvtárában van-e.
  6. Töltsük le az openssl.cnf fájlt, ha az apache conf mappában nem találunk ilyet. Rendszerint tárcsázó alkalmazásnak ismeri fel a winfos ezt a fájlt és a kiterjesztését el is rejti. Másoljuk az openssl mappájába.

2. Gyártsunk egy SSL tanusítványkérelmet (certificate request), melyet elküldünk a CA-nak (Certificate Authority), aki kiállítja számunkra a tanusítványt.

Parancssorban kerssük meg az openssl mappáját és adjuk ki a következő parancsot:

openssl req -config openssl.cnf -new -out domainem.com.csr

Haladjunk végig a kérdéseken. A country code: HU A common name-hez adjuk meg a domaint amit tanusítvánnyal szeretnénk ellátni.

FONTOS! A normál SSL tanusítvány nem érvényes az aldomainekre, csak a www-re. Tehát ha domain.com-ot adunk meg, a www.domain.com is működni fog, de a sg.domain.com már nem. Ha www.domain.com-ot adunk meg, akkor a www nélküli is hiteles lesz!

MÉGFONTOSABB! http://, https:// vagy bármilyen marhaságot ne írjunk a common name elé!!

3. Ha készen vagyunk a parancssorba mehet:

openssl rsa -in privkey.pem -out domainem.com.key

4. Az openssl mappájában lévő csr file-t küldjük el a tanusítványt kiállító céghez!
A visszakapott crt tanusítvány fájlt és a domainem.com.key fájlt másoljuk az apache/conf/ssl mappába.

5. Szerkesszük az Apache konfig fájlt! (apache/conf/httpd.conf):

Figyeljen a 443-as porton is (a 80-ast nem kell törölni!):

Listen 443

Töltse be az SSL modult:

LoadModule ssl_module modules/mod_ssl.so

Az ssl_module általános beállítása:

SSLMutex default
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
SSLSessionCache none

6. Virtualhost konfiguráció (rendszerint az apache/conf/httpd-vhosts.conf fájlban):

NameVirtualHost *:443

SSLEngine On
SSLCertificateFile conf/ssl/domainem.com.crt
SSLCertificateKeyFile conf/ssl/domainem.com.key
DocumentRoot "C:/server/www/domainem.com/www"
ServerName domainem.com
ServerAlias www.domainem.com
ErrorLog "logs/domainem.com-error.log"
CustomLog "logs/domainem.com-access.log" common

7. Apache restart!

A böngészőben most már működnie kell a https://www.domainem.com -nak mindenféle felugró hitelesítési ablak nélkül.

Perl telepítése

1. Töltsük le a http://www.activestate.com/store/activeperl/download oldalról a Windows (x86) MSI verziót (ActivePerl-5.10.0.1002-MSWin32-x86-283697.msi). Az email címet meg egyebet nem kell megadni (!!!) csak kattints a “Continue” gombra.

2. Indítsuk el a setup progit, és nyomkodjuk bőszen a next-eket! A harmadik panelon van a Location beállítás, amit nagyon fontos, hogy C:\usr -re állítsunk. Így elérhetjük, hogy a linux/unix renszereken megszokott perl elérési útvonalat /usr/bin/perl megtartsuk, ne kelljen átírni scriptjeinket.

3. Az Add Perl to the PATH environment variable legyen bejelölve, mert így a perl futtatható állományait a windows a helyükön is el tudja indítani. A Create Perl file extension association is maradjon.

4.Szerkesszük az Apache httpd.conf konfig filet! Keressük meg az alábbi sort és adjuk hozzá az ExecCGI paramétert! Vhost-ok használata esetén nyilván a vhost-oknál kell megadni.

Options Indexes FollowSymLinks
Options Indexes FollowSymLinks ExecCGI

5. Ha szeretnénk, hogy ne csak az apache könyvtár/cgi-bin alatt lehessen futtatni scripteket, a következő sor elől töröljük a #-et.

#AddHandler cgi-script .cgi

A futtatás helyét a Script Alias segítségével adhatjuk meg így (értsd: DOC_ROOT/cgi-bin/):

ScriptAlias /cgi-bin/ "C:/[apache utvonal]/cgi-bin/"

6. Indítsuk újra az Apache-ot! Ha nem indul újra, ellenőrizzük az átírt httpd.conf-ot!
7. Készen is vagyunk! Próbáljuk ki! Készítsünk egy teszt.cgi fájlt a következő tartalommal és mentsük a document_root/cgi-bin/ -be.

#!/usr/bin/perl
print "Content-type:text/htmlnn";
print "Sikerült!";

A böngészőnkben próbáljuk ki az elkészített miniszkriptünket’: http://[domain]/cgi-bin/teszt.cgi

Ha a sikerült szöveget olvassuk, működik, ha 500-as hibát kapunk, az apache error logjában tudunk utána nézni a probléma forrásának.

Windowson működő php5 és mysql 5

Rengeteget olvasni fórumokon, hogy a php5 és a mysql nem hajlandó együttműködni installálás után windowson. Többségnél már ott volt a hiba, hogy a php.ini-ben a mysql extension-t nem aktiválta, ami azért elég lamer problém, de leírom ezt is.. A hiba tünete, hogy mysql adatbázishoz való csatlakozáskor: “Fatal error: Call to undefined function mysql_connect() ” errort dob a php.
Megoldás:
php.ini-ben csere:

ezt:
;extension=php_mysql.dll
erre:
extension=php_mysql.dll

apache restart és már megy is.

Az én esetemben nem itt volt a gubanc.. szépen betöltötte a php extensionök közé a php_mysql.dll-t és a mysql_connect() függvényt is értelmezte a php. Egyszerűen a böngésző nem hozta be a mysql-teszt php oldalt. (FF esetén “A kapcsolat alaphelyzetbe állt” hibát jelzett.) A log fáklokban semmi nyoma nem volt a problémának.. minden futott, rendben volt.. Mikor már harminckettedik alkalommal néztem át a configokat, beugrot, hogy a libmysql.dll-el lehet a gond
A gépen volt kb 3 helyen ilyen nevű fájl.. mint kiderült, a Windows könyvtárban lévőt használta a szolgáltatás (ez a PATH beállításoktól függ egyébként), ezért előbb gyorsan kilőttem mindent (apache, mysql és egyéb mysql függő servicek) aztán fogtam a legfrissebb windwos-os php buildben található libmysql.dll-t és felülírtam vele. Már a csere pillanatában éreztem, hogy sikerült orvosolni a problémát, mert fél mb-al nagyobb a php 5.2.5-ből kimásolt dll.. Minden szolgáltatást visszakapcsoltam és papaaam! Sikerült kapcsolódni az adatbázishoz, megy minden!

Biztonságos PHP - PhpSecInfo

picture-1.jpgA PHP mint bármely másik script nyelv potenciális veszélyt jelent szerverünk számára.. Biztos sokaknak meggyűlt már a baja a komisz fopen függvénnyel.. elég egy rossz beállítás és máris olvasható az összes rendszerfájl.. és akkor már mit sem ér a jól beállított apache, a tűzfal, és a többiek. Nem árt, ha egy ilyen professzionálisnak nem is - de hasznosnak mindenképp- mondható kis eszközzel mint a phpsecinfo, leellenőrizzük a php.ini beállításait.

A PhpSecInfo nem más, mint a PHP Security Consurtium nagyon hasznos projektje, melynek célja, hogy a legismertebb és főként figyelmetlenségből nyitva hagyott konfigurációs kiskapukat számunkra is láthatóvá tegye.. Hogy ki mire használja az már a maga dolga, de én most white hat szemszögből próbálom bemutatni a utility-t.

A PhpSecInfo tulajdonképpen egy biztonsági ellenőrző script halmaz, mely vizsgálódásainak eredményét a phpinfo()-hoz hasonló könnyen átlátható listában közli velünk. Gyakorlatilag egyszerűen felmásoljuk a PHP Security Consurtium weboldaláról letöltött zip tartalmát és a böngészőnkben már látjuk is az eredményt és az esetleges problémákra javasolt megoldásokat.

Használjátok, terjesszétek! További hasznos olvasmányok a témában ugyanitt: PHP Security Guide

hMailServer + SSL = STUNNEL

Nagy bánatomra a hmailserver 4.x változataiban még nincsen SSL/TLS támogatás.. :( Pedig józan ember POP3, IMAP, SMTP protokollokat már másképp nem használ.. csak titkosítva!! A hMailServer 5-ös alfában már támogatott, de azt még nem szívesen tenném fel a szerverre. Így marad az egyetlen megoldás, a tunnelezés. Gyakorlatilag arról van szó, hogy egy másik a szerveren futó program segítségével SSL csatornába vezetjük a levelezési protokollokat, így a felhasználó használni tudja azokat biztonságos kapcsolaton keresztül is. A progi GNU licenszes, létezik linux és windows alá is. OpenSSL osztályokra épül, így 128 bites titkosításra képes.
Beüzemelése is egyszerű (windows alatt):

A letöltött és telepített Stunnel program mappájában az stunnel.conf fájlt kell szerkesztenünk a titkosításra szánt protokollok beállításához:

[imaps]
accept  = 993
connect = 143

[ssmtp]
accept  = 465
connect = 25

Megj: A POP3 protokollt kapásból ki is commenteltem (;), mert tessék tudomásul venni: a pop3 kora lejárt. Ajánlom mindenkinek az IMAP-ot!

Ha van saját SSL tanusítványunk, akkor elérési útját a ” cert =” paraméternek kell megadnunk. Ha megoldható, ajánlott ennek használata, mert a beépített nyilván nem hiteles és le is járt. Ha nem akarunk venni (legolcsóbb a neten kb. 6000 Ft) akkor saját magunknak kell létrehozni egyet.

A config fájl mentése után az stunnel.exe-vel kipróbálhatjuk beállításainkat. Ha mindent rendben találunk, készíthetünk belőle rendszer szintű szolgáltatást is. Nincs szükség hozzá semmire, csak gépeljük be parancssorba:

stunnel.exe -install

uTorrent webui telepítés Windowsra

Sokan szeretnének egy gépet, ami mindig megy és tölt és tölt és tölt.. Ideális erre egy kiszuperált régebbi PC néhány száz MB rammal és valamilyen emberi procival. Sokan óckodnak a linuxtol, ezért windows alatt szeretnének valamilyen jól használható megoldást.. Szerencsére az (egyik) legjobb desktop kliensnek már van egy béta állapotú webes felülete (webUI), melynek segítségével a szerveren futó uTorrent alkalmazást könnyedén menedzselhetjük mindenféle egyéb alkalmazás telepítése nélkül. Így:
1. Töltsd le az uTorrent legfrissebb stabil változatát, és a hozzá tartozó legfrissebb (2008.01.28.) webUI-t. Ha nem található a fájl, akkor ebben a fórumban az utolsó hsz-ok közt keresgélj!

2. Telepítsd az uTorrent klienst a megszokott módon, mint ha csak a desktop gépeden akarnád használni.

3. Start menu > Run (Futtatás)> %AppData%\uTorrent

A megnyíló mappába másold be a webUI.zip-et amit letöltöttél. Ha be van csomagolva egy rar-ba, akkor tömörítsd ki (tömörítés után egy zip fájlt kell kapnod mindenképp).

A zip fájlt NEM KELL kitömöríteni, csak bemásolni.

4. Indítsd el az uTorrentet és állítsd be a Beállítások menü > További beállításokra kattintva:

Kapcsolat > Bejövő port > Port a bejövő kapcsolatokhoz mezőbe írd be pl: 60000. Lényeg, hogy más alkalmazásokkal ne ütközzön, ezért érdemes 5 jegyű portot választani.
Haladó > webUI > Web felület engedélyezése

Haladó > webUI > Hitelesítés: Állíts be egy tetszőleges felhasználónév / jelszó párost amit a webes felület belépéséhez használsz majd.

Ha nem az alapértelmezett uTorrent porton (példámban a 60000-es) akarod használni a web felületet, akkor a Haladó > webUI > Kapcsolat -ban megadhatod azokkal az IP címekkel együtt, az általad engedélyezett IP címekkel együtt (beállításuk esetén csak ezekről lesz elérhető a webUI).

Ezzel készen is vagyunk. A webes eléréshez természetesen futnia kell az uTorrent-nek, ami annyira nem szép és nem is automatikus.. Ha szeretnéd, hogy szolgáltatásként fusson, csináld végig ezt a tutorialt az uTorrent.exe-re: Saját Windows Service (Szolgáltatás) készítése

Saját Windows Service (Szolgáltatás) készítése (win2k3)

Ha azt szeretnénk, hogy valamely alkalmazásunk mint windows szolgáltatás a háttérben fusson, néhány egyszerű lépést kell végrehajtanunk.
1. Töltsd le és telepítsd: Windows 2003 Resource Kit Telepítés közben érdemes a telepítés helyét a vágólapra másolni, mert a következő lépések során szükség lesz rá.
2. Start menü > Run > cmd

3. A parancssorba írd be:

[a resource kit telepítési útvonala]\Instsrv.exe [a szolgáltatás fantázianeve]  “[a resource kit telepítési útvonala]\Srvany.exe”

Ezzel létrehoztad a szolgáltatást. Ha rossz volt az elérési út, hibát kapsz.4. Start menü > Run > regedit, majd keresd meg:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\

5. Addj hozzá egy új kulcsot (Edit menü > New > Key) Parameters néven. A ‘Class’ üresen marad!

6. Az új kulcsra kattintva adj hozzá egy új értéket (Edit menü > New > Value).

Value Name: Application
Data Type : REG_SZ
String : [az alkalmazás útvonala]\[az alkalmazás exe fájlja]
7. Regedit becsuk.

Gratuálok, az alkalmazásod mostantól minden indításkor automatikusan elindul szolgáltatásként. Ha te magad szeretnéd manuálisan indítani, le kell tiltanod (manual-ra átírni a Startup type-ot) a Control Panel > Administrative Tools > Services MMC konzolon a szolgáltatás nevére kattintva.

Win Error Reporting kikapcsolása

Sajnos adódik olyan helyzet, mikor bizonyos progik elindítását a windows megakadályozza.. Kinyom egy idióta hibaüzenetet és lehetetlen elindítani az alkalmazást.. XP SP1 óta, ez gyakran a Windows Error Reporting System miatt történik.
Hogyan lehet ezt kikapcsolni? Kicsit brute-force irányba megyünk el, szal’ érdemes ezt a dolgot jól megfontolni.. Fontos, hogy biztos legyél a progi eredetében (pl crack, patch és egyéb warez cuccok futtatása így nem éppen ajánlott!!) Természetesen a cikkben leírtak alkalmazásáért felelőséget nem vállalok! :)
1. Nézzük meg, hogy nem egy kósza Software Restriction Policy okozza-e a gondunkat (jah sorry, win 2k3 en van csak, magyarul nem tudom mi a neve)..

Control Panel > Administrative Tools > Local Security Settings

Ha a listában a Software Restriction Policy alatt nem találsz semmit, akkor nem itt a baj. Ha igen, próbáld meg nélküle.. Ha megy, a probléma megoldva.. ha nem:

Control Panel > System > Advanced > Error Reporting > Disable Error Reporting

Ha most sem megy, az utolós sansz:

Run: regedit

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PCHealth\ErrorReporting

Az értékeket 0-ra kell állítani, aztán újra megkisérelni a progi futtatását.. Ha az error riporting okozta a gondot, akkor futnia kell. Sorry az angol nevekért, de sztem minimális angol tudás mellett ki lehet következtetni, hogy melyik panelon mit kell kattintani.

Internet Explorer kezdőoldal - GPO

Talán már más is járt úgy, hogy nem találta meg elsőre a Group Policy Management Console (GPMC) bugyraiban elsőre, hogy hol lehet átállítani a userek internet exploreres kezdőlapját.. Nos, itt:

User Configurations->Window Settings->Internet Explorer Maintenace->Urls->Important Urls

Ennyit szerettem volna mondani.. :)