Thursday 16 December 2010

පිලිවෙලකට partition කඩමු

මෙහෙයුම්‌ පද්ධතියක් අලුතෙන් ස්ථාපණය කරහම කරන්න තියන වැඩ කන්දරාව දන්නවනෙ? තමන්ට ඕනා විදිහට settings හදාගන්නයි, උවමනා කරන software දාගන්නයි, හුරු පුරුදු විදියට tweak කරගන්නයි, ඇයි backup කරපුවා restore කරගන්න වගේ කරදර ගොඩයි නෙ. උබන්ටු පාවිච්චි කරන අයට එහෙම ඉතින් අවුරුද්දට දෙපාරක් ඔය සෙල්ලම දාන්න වෙනවනෙ. කෙනෙක් කියන්න පුලුවන් හැම පාරම freshly install නොකර upgrade එකක්‌ කලානම් ඉවරයි නෙ කියලා. පෞද්ගලිකව ඒ සදහා ගතවෙන කාලය සහ කැඩිච්ච package ගොඩදාගන්න කාලය දතකරනවට වඩා අලුතින් install කිරිල්ලට මට ලේසියි. පුංචි පහේ trick එකක් කරලා ඔය කරන්න තියන වැඩ කන්දරාව බාගයක් විතර අඩුකරගන්න පුලුවන්. හැබැයි ඉතින් මේ විදිහට හදාගන්න අත්‍යවශ්‍ය files ඔක්කොම කොහෙට හරි backup කරන්න ඕනා. මොකද මේ ගනුදෙනුව කරන්නෙ partition table එකේ උදව් පදව් ඇතුව.

අපි හුගක් වෙලාවට කරන්නෙ hard disk එක පාටිශන් කිහිපයකට කඩලා මේකෙ සිංදු, මේකෙ ෆිල්ම්, මේකෙ සොෆ්ට්වෙයා ආදී වශයෙන් තියාගන්න එකනෙ. ඒ වෙනුවට අපි වෙස් විදිහකට පාටිශන් කඩලා බලන්නයි මේ හදන්නෙ. ලෙසිම විදිහ තමා os installation එකේ දි partition කරන්න ඕනා කොහොමද කියලා අහන dialog එකේ advanced තෝරලා යන එක. live CD එකකින් boot කරගෙන next next දීගන මෙතෙන්ට වෙනකන් එන්නකො මුලින්ම.



තියන partition ඔක්කොම ටික delete කරලා වැඩේ පිලිවලට පටන් ගන්නයි තියෙන්නෙ. free space කියන කොටසෙ click කරලා add කියන button එක ඔබපුවහම partition එකේ විස්තර ලබාදෙන්න පුලුවන් සංවාද කොටුවක් ලැබෙනවා. ඔතෙන්ට අපිට ඕනා විස්තර ලබාදීලා OK කලහම, දීපු විස්තර වලට අනුව partition එකක් හැදෙනවා. අපි මුලින්ම කරන්න ඕනා /boot සදහා පාටිශන් එක හදාගන්න එක. ඔතන තමා OS එකේ kernel එක රැදවෙන්නෙ. 256mb දුන්නනම්‌හොදටම ඇති.



ඊලගට swap පාටිශන් එක හදන්න ඕනා. virtual memory එක ගැන අහලා තියනවනෙ. ඒ සදහා භාවිතා කෙරෙන disk කොටස තමා මේ. ඔයාගෙ physical memory එකට සමාන අගයක් දීලා මේක හදන්න. පොඩ්ඩක්‌ එහෙට මෙහෙට උනාට කමක් නෑ.

දැන් තියෙන්නෙ මෙහෙයුම් පද්ධතියට කොච්චර ඉඩකඩ වෙන් කරනවද කියලා තීරණය කරන්න. සාමාන්‍ය ubuntu ස්ථාපණයකට නම් 8GB ඉහටත් උඩින්. වැඩිපුර මෘදුකාංග පාවිච්චි කරන කෙනෙක් නම් මේ partition එකේ ප්‍රමාණය වැඩි කරන්න තියෙන්නෙ.

ඉතිරි ඔක්කොම ඉඩ පාවිච්චියට අරගෙන /home partition එක හදාගන්න. පාටිශන් 4යි හැදෙන්නෙ නිසා හැම එකක්ම primary partition විදිහට දෙන්න.


දැන් ඉතින් තියෙන්නෙ සාමාන්‍ය විදිහට ඉදිරියට යන්න. කිසි වෙනසක් නැතිව මෙහෙයුම් පද්ධතිය ස්ථාපණය සිද්ධ වේවි. වෙනසක් දකින්න ඇත්තෙත් නැහැ. එකම වෙනස ඊලගට මෙහෙයුම් පද්ධතිය ස්ථාපණය කරන්න යනකොට තමා දකින්න ලැබෙන්න. හිතන්නකො ubuntu 11.04 ආවා කියලා. ඒක අලුතෙන් ස්ථාපණය කරගෙන යද්දි සුපුරුදු partition select කරන තැනට ආපුවාම පුංචි වෙනස්කමක් කරන්නයි තියෙන්නෙ. /home partition එකේ format කියලා තියන check box එක un-check කරලා ඉදිරියට යන්න. user name එක පරණ පද්ධතියෙ තිබිච්ච විදිහටම ලබාදෙන්න. අලුත් මෙහෙයුම් පද්ධතිය ස්ථාපණය උනාට පස්සෙ ඔයාට පෙනෙයි කලින් තිබුනු settings ඒ විදිහටම තියනවා. wallpaper එක, theme එක ආදිය විතරක් නෙමේ firefox වල open කරලා තිබිච්ච tabs පවා ඒ විදිහටම ලැබෙයි.

මෙහෙම කලහම මෘදුකාංග ස්ථාපණය නොකර බේරෙන්න පුලුවන් කියලා වරදවා වටහාගන්න එපා. මෙතනදි වෙන්නෙ ඔයාගෙ settings සහ අනෙකුත් ගොනු සියල්ලම /home/<ඔයාගෙ නම> ගොනුව තුල සුරකෂිතව තියන එක. /home/<ඔයාගෙ නම> ඇතුලෙ ඉදගෙන ls -all විධානය දීලා බැලුවොත් පෙනෙයි මුලට . සහිත ගොනු මහ ගොඩක් තියනවා කියලා. ඒ‌ එක එක මෘදුකාංග සදහා වන ඔයාගෙ පුද්ගලික සැකසුම්. මේ විදිහට අලුත් මෘදුකාංග ස්ථාපණයකට පස්සෙ configuration කරන්න ගතවෙන කාලය හුගක් දුරට අඩු කරගන්න පුලුවන්.

Tuesday 7 December 2010

web server එකක් මුලසිට හදාගනිමු 3

කලින් ලිපි දෙක කියෙව්වෙ නැතිනම් පලමු ලිපිය මෙතනින් සහ දෙවන ලිපිය මෙතනින් කිවල ඉන්න.

අද බලමු apache configuration වැඩිදුර කරන්නෙ කියලා. කලින් ලිපියෙදි browser එකක්‌අරගෙන http://< server ip එක >/phpinfo.php කියලා php විස්තර බලාගත්තා මතකනෙ. ඒ විදිහටම අද http://< server ip එක >/something.htm කියලා type කරලා enter කරලා බලන්න. (something.htm වෙනුවට වෙන මොනාගරි දාලා බලන්න අවුලක් නෑ කියලා දන්නවනෙ). මෙතනදි අපි කරන්නෙ server එකේ නැති පිටුවක නමක් දෙන එක. බලන්නකො එහෙම කලාම ලැබෙන web page එක.




OS එකයි, ධාවනය වෙන web server එකයි ඒකේ version එකයි ඔක්කොම එක්ක උප්පැන්න සහතිකේ කරේ එල්ලගත්ත වගේ නේද? ඔයාගෙ server එක ගැන විස්තර හොයන කෙනෙක්ට කිසිම කරදරයක්‌නැතිව ඔය විස්තර බලාගන්න පුලුවන් නෙද?

මුලින්ම හොයාගන්න ServerTokens කියන parameter එක httpd.conf ගොනුව තුල.

nano /etc/httpd/conf/httpd.conf
ctrl + w (search කරන්න)
ServerSignature (කියලා enter කරන්න)

මේක default තියෙන්නෙ OS කියලා. Full, OS, Minimal, Minor, Major, Prod විදිහට value එක වෙනස් කරලා /etc/init.d/httpd reload කියලා reload කරලා බලන්න set කරපු value එක අනුව error page එකේ පෙන්වන විස්තර වෙනස් වෙන හැටි. http.conf ගොනුවට වෙනස්කමක් කලොත් ඒක apply වෙන්න sudo /etc/init.d/httpd reload කරන්න ඕනා කියලා දන්නව නෙ.



ඔය parameter එක කොහොම set කරලා තිබ්බත් ServerSignature එක off කලොත් ඔය මුකුත්ම පෙන්වන්නෙ නෑ. ServerSignature off විදිහට වෙනස් කරලා තියනවනම් වඩාත් හොදයි. ඔයාට server එකේ විස්තර දැනගන්න ඕන නම් ssh කරලා ඒ දේ කරගන්න පුලුවන් නෙ.

අර කලින් ලිපියෙදි phpinfo.php කියලා හදපු text file එක delete කරන්න ඕනෙ ඇයි කියලා දන්නවනෙ ;) නැතිනම් ඕන කෙනෙක්ට http://< server ip එක >/phpinfo.php කියලා type කරලා ඔයාගෙ server එකේ විස්තර බලාගන්න පුලුවන්.

web hosting සේවාවක් සපයන්න බලාපොරොත්තු වෙන කෙනෙක් එකම server එකේ web site එකකට වඩා තියන්නෙ කොහොමද කියලා කල්පනා කරනවා ඇති. browser එකේ hacker.lk කියලා type කලාම ඊට අදාල IP address එක DNS මගින් හොයාගෙන යනවා කියලා දැනටමත්‌ ඔයාලා දන්නව නෙ. එකම IP එකකට නම්‌ ගොඩක් තියෙන්න පුලුවන්ද? උදාහරණයක් විදිහට ආන්ඩුවෙ ලොකු කන්තෝරුවකක් ගැන හිතන්න. ගොඩනැගිල්ලට තියෙන්නෙ එකම ලිපිනය උනාට වෙනස් වෙනස් සේවා සදහා ලොකු මහත්තුරු වෙන වෙන කාමර වලනෙ ඉන්නෙ. ඇතුල් වෙන තැන ලොකු පුවරුවක මහත්තයගෙ නමයි ඉන්න කාමරෙයි ලියලා තියනවා දැකලා ඇති නෙ. ඔය විදිහට apache වල අපිට සකසන්න පුලුවන් වෙනස් වෙනස් web sites කිහිපයක්‌ එකම server එකේ තියෙන්න. ඔය reseller hosting කරන අය කරන්නෙ. httpd.conf ගොනුවෙ අගටම ගියොත් මෙන්න මේ වගේ කොටසක් දකින්න ලැබෙයි.



ඔයා මේ server එකේ සේවාව සපයන්න බලාපොරොත්තු වෙන web site සදහා ඔය වගේ entry එකක් අදාල පරිදි වෙනස් කරලා දෙන්න තමා තියෙන්නෙ. # සලකුණ යොදන්නෙ comment කරන්න. ඒක නිසා අදාල පේලි වල # ඉවත් කරන්න අමතක කරන්නත් එපා.

LAMP server එකක් කියන්නෙ මොකද්ද කියලා අහලා නැතිනම් ඔය ලිපි පෙලින් අපි හදාගත්තෙ Linux, Apache, Mysql, PHP- LAMP server එකක් ;).

ආයිබෝං කිව්වා.

Tuesday 23 November 2010

web server එකක් මුලසිට හදාගනිමු 2

කලින් ලිපිය කියෙව්වෙ නැතිනම් මෙතනින් ඒක කියවලා ඉන්නකො. අද බලමු MySql සහ php දාගන්නෙ කොහොමද කියලා. තමන්ගෙ කැමැත්ත අනුව MySql වෙනුවට postgresql හෝ mysqlite වගේ ආදේශකයක් දාගන්නත් පුලුවන්.

ස්ථාපණය බොහෝම සරලයි. කලින් ලිපියෙ කියපු විදිහට server එකට ssh කරලා yum භාවිතයෙන් MySql දාගන්න මෙහෙම විධානය දෙන්න.

# yum install mysql-server

ස්ථාපණය ඉවර උනාම sqlserver එක run කරන්න inid.d තුල තියන demon ව run කරන්නයි තියෙන්නෙ.

# /etc/init.d/mysqld start

ස්ථාපණය ඔච්චරයි උනාට configuration කරගන්නත්‌ එපායෑ. මේක අතින් කරන්න කරදර වෙන්න ඕන නෑ. වැඩේ ලේසියෙන් කරගන්න script එකක් ලබාදීලා තියනවා. ඒක run කරලා අහන ප්‍රශ්ණ වලට උත්තර දෙන්නයි තියෙන්නෙ. script එක තියෙන්නෙ /usr/bin තුල.

# /usr/bin/mysql_secure_installation

මුලින්ම අහයි mysql වල root password එක මොකද්ද කියලා. default මුරපදයක් නැතිවයි mysql ස්ථාපණය සිද්ධ වෙන්නෙ. නිකන්ම enter කරන්නයි තියෙන්නෙ. ඊලගට කරන්න තියෙන්නෙ root සදහා අලුත් මුරපදයක් ලබාදෙන එක. මතක තියාගන්න. මෙතන root කියන්නෙ mysql root පරිශීලකයා මිසක් OS එකේ root පරිශීලකයා නෙමේ. ලබාදීපු මුරපදය සහතික කරලා enter කරන්න.

mysql ස්ථාපණය වෙද්දි default විදියට anonymous login සක්‍රීය වෙලායි තියෙන්නෙ. ඇතැම් අවස්ථා වල මෙහෙම තියන එක පහසුවක් උනාට ආරක්ශාව අතින් නම් මේක හොද දෙයක් නෙමේ. ඕන කෙනෙක්ට පරිශීලක නාමය anonymous සහ මුරපදයක් නැතිව mysql හා සම්බන්ධ වෙන්න පුලුවන් read only permission සහිතව. අනවශ්‍ය ලෙඩ දාගන්න ඕනෙ නෑ නෙ. ඒක නිසා මේක disable කරන්න y ලබාදීලා enter කරන්න.

default සැකසුම් වලට අනුව root ට වෙනත් පරිගණකයක ඉදලා සම්බන්ධ වෙන්න පුලුවන්. උදාහරණයක් විදිහට mysql client (හෝ server) ස්ථාපණය කරලා තියන වෙනත් පරිගණකයක ඉදලා

# mysql -h <ඔයාගෙ server එකේ ip එක> -u root -p

# mysql -h 192.168.11.10 -u root -p

කියලා දීලා ඔයාගෙ mysql සවාවට සම්බන්ධ වෙන්න පුලුවන්. ආරක්ෂිතව server එකට ssh කරන්න පුලුවන් කම තියෙද්දි වෙනත් පරිගණකයක sql client එකකින් ඉහත කියපු විදිහට සම්බන්ධ වෙන්න උවමනාවක් නෑ නෙ. phpmyadmin වගේ සේවවකට උනතත් මේ සැකසුමෙන් බාධාවක් වෙන්නෙ නෑ සේවාවන් දෙකම එකම server එකේ install කරලා තියනකොට. remote root login අක්‍රීය කරන්න y ලබාදීලා enter කරන්න.

mysql ස්ථාපණය වෙනකොට test කියලා database එකක් හැදෙනවා test data ටිකක් එක්ක, developers ලට අතපතගාලා බලන්න. server එකට මේක තියාගන ඉන්න එකේ වැඩක් නෑ නෙ. අනික server එකක වැඩ කෙරෙන්න උවමනාම දේවල් ඇරෙන්න අනවශ්‍ය දේවල අයින් කරලා පිලිවලට තියාගන්න ඕනා කියලා අමුතුවෙන් කියන්න ඕනෙ නෑ නෙ. test database එක ඉවත්‌කරන්න y දීලා enter කරන්න.

අර anonymous login පහසුකම disable කලා මතකනෙ. පරිශීලකයන්ගෙ rights වෙනස් කරපුවහම ඒවා සක්‍රීය වෙන්න නම් privilege tables reload කරන්න ඕනා. y කියලා enter කරන්න.

උවමනාම නම් ඇරෙන්න නිතරම root පාවිච්චි කරන එක එච්චර හොද පුරුද්දක් නෙමේ. ඒකනිසා තමන්ගෙ නමින් user account එකක් තියාගන්න එක හොද පුරුද්දක්. මේ සදහා mysql වලට log වෙන්න.
# mysql -u root -p ලෙස විධානය ලබාදෙන්න. මුරපදය ඉල්ලුවහම ඔයා අර script එක ධාවනය කරලා ලබාදීපු මුරපදය ලබාදෙන්න. mysql> විදිහට prompt එක වෙනස් උනා කියන්නෙ ඔයා mysql වෙත සාර්ථකව log වෙලයි ඉන්නෙ.
අලුත් පරිශීලක ගිනුමක් හදන්න

mysql> CREATE USER 'නම'@'localhost' IDENTIFIED BY 'මුරපදය';

අලුත හදපු පරිශීලකයට සම්පූර්ණ බලතල දෙන්න

mysql> GRANT ALL PRIVILEGES ON *.* TO 'නම'@'localhost' WITH GRANT OPTION;

ඔය *.* කියන එකෙන් අදහස් වෙන්නනෙ <සියලුම database> . <සියලුම tables> කියන එකයි. WITH GRANT OPTION කියන්නෙ පරිශීලකයට තියන බලතල වෙනත් පරිශීලකයෙකුට ලබාදරන්න ඒ පරිශීලකයට බලතල දෙන්න කින එක. application සදහා පරිශීලක ගිනුම් සදනකොට ඔය WITH GRANT OPTION කොටස ලබාදෙන්න එපා.

mysql ස්ථාපණය කරලා configure කිරිල්ල ඔච්චරයි. දැන් තියෙන්නෙ PHP ස්ථාපණය කරන්න.

# yum install php php-common

php සදහා විවිධ application සහය දක්වන්න ඒ සදහා අදාල package එක ස්ථාපණය කරගත යුතුයි.
mysql සදහා සහයදක්වන්න

# yum install php-mysql

ඔය විදිහට php සහය සහිත අනිත් packages බලාගන්න පහත විධානයෙන් පුලුවන්

# yum list php-* | more

more වලින් කරන්නෙ output එක පිටුවකට පෙනන විදියට දර්ශණය කරන එක කියලා දන්නවනෙ ;)

php සාර්ථකව ස්ථාපණය වෙලාද බලන්නෙ මෙන්න මෙහෙම. ඔයාගෙ apache ස්ථාපණය document root එක විදිහට සලකන්නෙ /var/www කියන directory එක. එන පොඩි php ගොනුවක් හදන්නයි තියෙන්නෙ.

#nano /etc/www/phpinfo.php කියලා අලුත් ගොනුවක් විවෘත කරගන පහත කේතය ලබාදෙන්න
< ?php phpinfo(); ? >

ctrl + x ලබාදීලා save කරන්න y දීලා enter කරන්න.
දැන් ඔයාගෙ browser එකේ http://< server ip එක >/phpinfo.php දීලා බලන්න php විස්තර සහිත වෙබ් පිටුවක් දිස්වෙනවද කියලා?





පිටුව හොයාගන්න බෑ කියලා error එකක් එනව නම් apache වල document root එක /var/www වලට නේද set වෙලා තියෙන්නෙ කියලා double check කරන්න.

#nano /etc/httpd/conf/httpd.conf

nano කියන්නෙ text editor එකක් කියලා දන්නවනෙ. ඔය configuration file එකේ document root කියන variable එක කොහෙද තියෙන්නෙ කියලා ගොයාගන්නයි තියෙන්නෙ. search කරන්න ctrl + w ගහලා documentroot කියලා type කරලා enter කරන්න.

DocumentRoot "/var/www" කියලා නෙමේ නම්‌ පෙන්වන්නෙ, ඔය විදිහට වෙනස් කරගන්න.

ඊට පස්සෙ apache restart කරන්න

#/etc/init.d/httpd restart

වැඩිදුර configuration කරන හැටි ඊලග ලිපියෙන් බලමු

Wednesday 17 November 2010

web server එකක් (තේරුමක් ඇතුව) මුලසිට හදාගනිමු 1

කලින් ලිපි වලින් කියපු ආකාරයට virtual network එකක් හදාගෙන නම් තියෙන්නෙ, නමෝ විත්තියෙන් web server එකක් configure කරගන්න විදිහ පැහැදිලි කරන්නයි මේ හදන්නෙ. ජාලයක් කියන්නෙ සුපිරි වෙළදසැල් සංකීර්ණයක් නම් පරිශීලකයො කියන්නෙ පාරිභෝගිකයො නම් servers කියන්නෙ විවිධ සේවා ලබාදෙන වෙලදසැල් වගේ. සමහර වෙලදසැල් වල "එකම වහලක් යටින් අම්බානක් සේවා" දෙනකොට සමහර වෙලදසැල් ඒ අයට විශේෂිත එක සේවාවක් ලබාදෙනවා. අපි මේ කරන්න යන්නෙ වෙළදසැල් සංකීර්ණයකින් ගොඩනැහිල්ලක් අරගෙන ඒක සේවා සපයන ස්ථාණයක් බවට පෙරලන ක්‍රියාවලිය පියවරෙන් පියවර කරලා බලන්න.

server OS එක විදිහට අපි පාවිච්චි කරන්න යන්නෙ Redhat කට්ටියගෙම වැඩක්‌වන CentOS කියන මෙහෙයුම් පද්ධතිය. වැඩේට option දෙකක් තියනවා, එකක් තමා centos වෙබ් අඩවියෙන් DVD image එක download කරගෙන සම්පූර්ණයෙන් OS installation එක සිද්ධ කරන එක (ගොඩනැගිල්ලත් තමන්ම හදනවා වගේ). දෙවනි option එක තමා CentOS VM එකක් download කරගෙන ඩෝං ගාලා වැඩ පටන්ගන්න එක (හදපු ගොඩනැහිල්ලක් අරගෙන වැඩ පටන්ගන්න එක) . CentOS 5.3 VM එකක් මෙතනින් torrent එකක් විදිහට බාගන්න පුලුවන්. download උනාට පස්සෙ ගොනුව extract කරලා vmware player එකෙන් .vmx ගොනුව විවෘත කරගන VM එක ධාවනය කරන්නයි තියෙන්නෙ.

cloud server එකක් එහෙම මිලදී ගන්නවනම් මෙන්න මේ ආකාරයේ ස්ථාපණතක් සහිත server එකක් සහ ඒකට username/password තමයි ලැබෙන්නෙ. දැන් කරන්න තියෙන්නෙ අලුත ගත්ත ගොඩනැගිල්ල වෙළදසැලක් බවට පෙරලන ක්‍රියාවලිය. මුලින්ම බලමු මේ VM එකේ IP එක මොකද්ද කියලා. ඔය VM එකක් විදියට ලබාගත්ත ස්ථාපණය සදහා root මුරපදය barebone ලෙසයි ලබාදීලා තියෙන්නෙ. log වෙලා ipconfig දීලා IP එක බලාගන්න දන්නවනෙ. මෙතන ඉදලා අපි VM එක අතින්වත් අල්ලන්න බලාපොරොත්තුවක් නෑ. cloud server එකක් ගත්තම අපිට server එක ලගට යන්න දෙන්නෙ නෑ නෙ. ip එකයි username/password විතරනෙ දෙන්නෙ. අපි මේ VM එකටත් ඒ විදිහටයි සලක්න යන්නෙ.

දැන් ගන්න shell එක ඔයාගෙ host මෙහෙයුම් පද්ධතියෙ. එතන ඉදලා කලින්‌ බලාගත්තු VM එකේ IP එකට ssh හරහා සම්බන්ධ වෙන්න. වැඩේ සරලයි

ssh root@ < VM එකේ IP එක >

ssh root@192.168.11.128

පලවෙනි වතාවට මේ විධානය දුන්නම මෙන්න මේ වගේ පනිවිඩයක් පෙන්වයි.
The authenticity of host '192.168.11.128 (192.168.11.128)' can't be established.
RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
Are you sure you want to continue connecting (yes/no)?

yes කියලා type කරලා enter කලාම root සදහා මුරපදය අහයි. මුරපදය ලබාදුන්නම අපූරුවට server එකට shell එකක් ලැබෙනවා. දැන් ඉතින් තියෙන්නෙ වැඩ පටන්ගන්න. අපි web server එක විදිහට පාවිච්චි කරන්න යන්නෙ කාටත්‌පුරුදු apache. ස්ථාපණය බොහොම සරලයි. CentOS, Fedora වල yum කියන්නෙ ubuntu වල apt-get වගේ package manager එකකට. syntax එක සුපුරුදු විදියම තමා.

yum install httpd mod_ssl

ගනන් හදලා කරලා මෙච්චර මෙච්චර download කරන්න තියනවා 'හා ද?' කියලා අහපුවම 'හා' කියලා enter කරන්න.

shell එක ලැබිලා තියෙන්නෙ root විදියට නිසා sudo පාවිච්චි කරන්න උවමනාවක් නෑ කියලා දන්නවනෙ ;) ඔය විධානය execute වෙලා ඉවර උනහම ඔයාගෙ VM එක apache run වෙන server එකක්. apache run කරන්න මේ විදිහට විධානය ලබාදෙන්න

/etc/init.d/httpd start

ඔය /etc/init.d/ folder එක කියන්නෙ windows වල services window එක වගේ තැනක්. උදාහරණයක්‌විදිහට apache සේවාව නවත්වන්න නම් /etc/init.d/httpd ඉදිරිට start වෙනුවට stop කියලා ලබාදෙන්න තියෙන්නෙ. ඒ වග restart සහ status වලින් කෙරෙන දේ ගැන හිතාගන්න පුලුවන් නේද? (බෑ නම් කරලා බලන්න ;) )

web service එක ධාවනය උනාට විතරක් මදි. දොර ඉස්සරහා ඉන්න මුරකාරයගෙ වැඩේ කඩේට එබිකම්‌ කරන්න එන ඈයන්ව, අරව මේවා අහගෙන එන අයව එලවන එකනෙ. ඉතින්‌ මුරකාරයට කියන්න ඕනා දැන්‌ ඉදලා web සේවාව ඉල්ලන් එන අයව ඇතුලට ගන්න කියලා. web සේවාව සපයන්නෙ port 80 තුලින් කියලා දන්නවනෙ? එහෙනම් firewall එකේ port 80 විවෘත කරමු.

iptables -I RH-Firewall-1-INPUT -p tcp --dport 80 -j ACCEPT

iptables කියන්නෙ අපේ firewall මෘදුකාංගය. ඔන්න ඔය විදිහට අපි එයාට කිව්වම web සේවා හොයන් එන කට්ටියව ඇතුලට ගන්න කියලා, වැඩේගොඩ.

දැන් ඔයාගෙ browser එක අරගෙන VM එකේ IP එක ලබාදීලා‌බලන්න.



ඔය වගේ පිටුවක් ලැබුනම ඒකෙ තේරුම මොකද්ද කියලා අමුතුවෙන් කියන්න ඕනෙ නෑ නෙ. ඔයාගෙ web server එක අපූරුවට up and runing. (කරුමෙකට හරි ඔය පිටුව ආවෙ නැතිනම් /etc/init.d/httpd restart දෙන්න) එහෙමයි කියලා පැත්තකට වෙන්න විදිහක් නෑ. ඇයි, අනිත් configuration කරන්නෙ පොලිසියෙන් ඈ?

මුලින්ම server එක restart කරපුවාව apache ඉබේම ධාවනය වෙන්න හදන්න එපායැ. server එක restart කරන හැම සැරේම services අතින් start කරන්න ගියොත් වෙන වැඩක් නැති වෙයි.

/sbin/chkconfig httpd on

බඩු වැඩද කියලා check කරලා බලන්නෙ මෙහෙම

/sbin/chkconfig --list httpd


web server එකකට නැතිවම බැරි ඩබලක් නෙ php සහ mysql කියන්නෙ. ඔය දෙක දාගන්න හැටි සහ httpd.conf ගොනුවෙ අපිට උවමනා විදිහට වෙනස්කම් කරන හැටි ඊලග ලිපියෙන් බලමු. 

links
VM ටොරන්ට් එකේ සැබෑ හිමිකරු
http://office.bensoft.com/minCentos53/

Friday 12 November 2010

තමන්ගේම කියා network එකක් - 2

කලින් ලිපිය බලලා virual machine දෙකතුනක් හදාගන්න ඇති නෙ. දැන් බලමු කොහොමද මේවයින් පුංචි පහේ නෙට්වර්ක් එකක්‌ හදාගන්නෙ කියලා. මුලින්ම අපි network adapter එකක් හදාගන්න ඕනා අපිට උවමනා IP range එකක් දීලා. මේ සදහා VMWare ස්ථාපණය සමග ලැබුනු Virtual Network editor පාවිච්චි කරලා add network කියන බොත්තම ඔබන්න.



එතනින් ලැබෙන සංවාද කොටුවෙ මොන ආකාරයේ network එකක්‌ද හදන්න ඕනා කියලා තෝරන්න තියනවා. සාමා..යෙන් මෙතනදි තෝරන්න ඕනා host-only කියන option එක. නමුත් ඊලග ලිපියට පහසු වෙන්න අපි NAT කියන option එක භාවිතා කරලා මේ adapter එක හදාගමු. network name එකට කැමති ඉලක්කමක් දීලා (තියන එකම ඔහෙ තියෙන්න අරින්න) add කියන බොත්තම ඔබන්න



ඊට පස්සෙ අපි මේ adaptor එකට subnet IP එකක්‌ලබාදෙන්න ඕනා. හොදම වැඩේ තමා ඔයාගෙ පරිගණකයෙ IP එක බලලා ඒ range එකෙන් පිට range මෙතෙන්ට ලබාදෙන එක. මොකද හුගක්‌ වෙලාවට ඔයාට IP එක ලැබෙන්නෙ රව්ටරේ DHCP වලින්. ඔයා මොකක් හරි IP එකක් හෙව්වොත්‌ ඒ request එක යන්නෙ රව්ටරේට. මේ network adapter එකෙනුත් කරන්නෙ ඒ දේ මයි. ඉතින් දෙන්නෙක් එකම වෙලේ එකම දේ කරන්න ගියපුවාම වැඩේ ලෙඩේ වෙනවා කියලාදන්නවනෙ.



ගෙදර broadband පහසුකම නැතිනම් ඔයාට IP එකක් පෙනරවන්නෙ නෑ. ඒ වගේ අවස්ථාවකදි පරිගණකයේ IP එක සහ netmask එක maually ලබාදෙන්න පහත විධානය භාවිතා කරලා.

#ifconfig <පරිගණකයේ network card එක> <භාවිතා කල යුතු IP එක> netmask 255.255.255.0
#ifconfig eth0 192.168.101.1 netmask 255.255.255.0

ඊට පස්සෙ ඒ range එකට පිට එකක් Virtual Netwok adapter එකේ subnet IP එක විදියට ලබාදෙන්න



adapter එකේ නම මතක තියාගෙන save බොත්තම click කලාම ඒ වැඩ ටික ඉවරයි. ඊට පස්සෙ කරන්න තියෙන්නෙ VMWare Player run කරලා අලුත හදාගත්තු adapter එක ඔයාගෙ VM වලට ආදේශ කරන එක. මේ සදහා අදාල vm එක තෝරලා edit virtual machine settings වෙත ගිහිල්ලා අලුත හදාගත්තු netwok adapter එක තෝරන්න.



දැන් තියෙන්නෙ VM එක run කරන්න. VM එක boot වුනාම IP එක දිහා බැලුවොත් පෙනෙයි අපි දීපු range එක තුල ලිපිනයක්‌ එයාට ආදේශ වෙලා තියන වග. Windows XP VM එකක් තුල file share එකක් හදලා බලමුද ඒක access කරන්න පුලුවන්ද කියලා? කරන්න තියෙන්නෙ share කරන්න ඕනා ගොනුවෙ right click කරලා properties චල sharing කියන tab එකට යන්න.



එතන "if you understand the security risks, but want to share...." කියලා තියන link එකේ click කරලා just enable file sharing තේරුවනම්‌ වැඩේ හරි. කැමති නම්‌ ඉතින් wizard එක follow කරන්නත්‌ පුලුවන්. ඊට පස්සෙ "share this folder on the network" කියන තැන tick කරලා OK කරන්න.



share කරපු folder එකට යටින් මේ පින්තූරෙ පෙන්නනවා වගේ අතක්‌ වැටිලා තියනවා කියලා පෙනෙයි.



දැන් තියෙන්නෙ share එක access කරලා බලන්න. VM එකේ command prompt එක අරගෙන ipconfig ගහලා IP එක හොයාගන්න දන්නවනේ. ඊට පස්සෙ ubuntu වල (හෝ ඔයාගෙ host machine එකේ) places->connect to a server ගිහිල්ලා VM එකේ IP එක දීලා connect වෙන්න බලන්න.



nmap ගැන කතා කලා මතක ඇතිනෙ? nmap කරලත්‌ බැලුවනම් VM එකට ;)

Thursday 11 November 2010

තමන්ගේම කියා network එකක් - 1

හුගදෙනෙක්ට තියන ප්‍රශ්ණයක් තමා networking වලට ආසා උනාට හැප්පිලා පෙරලිලා බලන්න computer දෙකක් නැති එක. තමන්ගෙම network එකක්‌ ගෙදර හදාගන්න එක ප්‍රායෝගික නෑ නෙ. වැඩ කරන තැන network එකේ හැප්පිලා පෙරලිලා ඒක කඩලා දාන්නත් බෑ නෙ. මේකට තියන හොදම විසදුම තමයි සත්‍යාසන්න ජාලයක් එහෙමත්‌ නැතිනම්‌ virtual network එකක්‌ හදාගන්න එක. මේ සදහා සහය දක්වන ප්‍රසිද්ධම මෘදුකාංග තමා VMware, Citrix සහ VirtualBox කියන්නෙ. Windows 7 පාවිච්චි කරන අය එහෙම VirtualPC එක්ක එහෙම දැනටමත් ඔට්ටු වෙලා ඇති නෙ. Citrix සහ VMWare වගේ නෙමේ VirtualBox සම්පූර්ණයෙන්ම නොමිලේ දෙන මෘදුකාංගයක්. නමුත් මම මේ ලිපියෙන් කතා කරන්න යන්නෙ VMWare භාවිතා කරලා network එකක් හදාගන්න හැටි.

VMWare කට්ටිය ගෙ products අම්බානක් තියනවා. උවමනා වැඩ ටික කරගත්තට පස්සෙ එයාලා නොමිලේ ලබාදෙන VMWare Player එක හොදටම ඇති අපිට ඕනා වැඩපල ටික කරගන්න. අපේ වැඩේට ඒයාලා දින 30ක trial දෙන VMWare workstation කියන මෘදුකාංගය තමා ලබාගන්න ඕනා. මුලින්ම VMWare site එකට ගිහින් Workstation එක බාගන්න.



try for free කියලා තියන link එකට ගියපුවහම ගිනුමක් හදාගන්න කියයි, නම ගම දීලා continue කලා නම් අදාල ගොනුව download කරන්න links දෙයි windows, linx සහ linx 64bit සදහා වෙන වෙනම. තමන් භාවිතා කරන මෙහෙයුම් පද්ධතියට අදාල ගොනුව ලබාගන්න.



මම මේ ලිපියෙන් විස්තර කරන්නෙ ubuntu මත මෘදුකාංගය පිහිටුවන ආකාරය. windows වලත්‌ ඉතින් double click කරලා next->next->next->finish නේ?

ගොනුව බාගත වුන තැනට terminal එක භාවිතා කරලා යන්න.
උදා
cd ~/Downloads

(ඔය ~/ කියන්නෙ පරිශීලකයගෙ home directory එක කියලා දන්නවනෙ ;)

ඊට පස්සෙ ගොනුවට execution rights දෙන්න

# chmod +x <ගොනිවේ සම්පූර්ණ නම>
# chmod +x VMware-Workstation-Full-7.1.2-301548.i386.bundle

ඊට පස්සෙ ගොනුව Run කරන්න ./ සමග ගොනුවෙ නම දෙන්න
# ./VMware-Workstation-Full-7.1.2-301548.i386.bundle

මෙතන ඉදලා GUI එකකින් තමා වැඩ වෙන්නෙ. ප්‍රශ්ණ අහන ඔක්කොටම default settings තියෙද්දි next කරගෙන යන්න. installation එක ඉවර වුනහම Virtual Network Editor, VMWare Player සහ VMWare Workstation කියලා මෘදුකාංග තුනක් system tools ඇතුලෙ දැකගන්න පුලුවන් වෙයි. VMWare Player එක භාවිතා කරලා අපිට virtual machine ඕන තරම් හදාගන්න කිසිම තහනමක් නෑ. පුංචි අලේකට තියෙන්නෙ vmware player එකෙන්‌ හදපු VM එකකට අපිට ඕනා විදියට network adapter එකක්‌ ආදේශ කරන්න බැරි කම.



නමුත් ඒ VM එකම VMWare Workstation එකෙන් open කලාම network adapter එක select කරන්න තියන dialog එක සක්‍රීය වෙනවා. එතන තියන options වලින්‌ අන්තිම එක "custom: specific network" කියන එක තෝරලා save කරන්න.




ඔන්න ඔය ටික කරගන්න තමා අපිට VMWare Workstation ඕනා වුනේ. වැඩේ කරගන්න දවස් 30ක් ගියෙ නෑ නේ :P. ඔය විදිහට machine දෙකතුනක් හදාගන්න වෙනස් වෙනස් OS සදහා. තවත්‌ දෙයක්, VM සදහා memory ලබාදෙනකොට පරිස්සම් වෙන්න. ඔයාගෙ පරිගණකය 2GB නම්‌ 1GB දීලා‌ හදපු VM දෙකක්‌එකපාර run කරද්දි අල ගෝනියයි කියලා අමුතුවෙන් කියාදෙනරන ඕනෙ නෑ නෙ. අපි මේ VM පාවිච්චි කරන්නෙ networking පුරුදු වෙන්න මිසක් video game ගහන්න නොවෙන නිසා අවම memory සහහිතව ගැදුවා කියලා ප්‍රශ්ණයක් වෙන්නෙ නෑ.

දැන් තියෙන්න හදපු VM වලට මෙහෙයුම් පද්ධති පිහිටුවන්න. Windows වල licensing ප්‍රශ්ණ නිසා windows VM විදියටම ලබාගන්න බෑ. හැබැයි හැම ලිනක්ස් පද්ධතියකටම වගේ VM එක නොමිලේ ලබාගන්න පුලුවන් VMWare appliances වෙතින්. එහෙම ලබාගන්න vm එහෙමත් VMWare Workstation එකෙන් විවෘත කරලා network adaptor එක තෝරලා save කරගන්න අමතක කරන්න එපා.

ඊලග ලිපියෙන් බලමු කොහොමද මේ VM කිහිපයක් භාවිතා කරගෙන network එකක්‌ හදාගන්නෙ කියලා.

Sunday 24 October 2010

Macintosh වෙනුවට Hackintosh වෙනුවට Macbuntu

වෙනස් වෙනස් මෙහෙයුම් පද්ධති ගැන උනන්දුවක් දක්වන අය, කඩල බිදල බලන්න කැමති අය, සතියට පස් හයපාරක්‌මෙහෙයුම්‌පද්ධතිය අලුතින්‌ පිහිටුවන අය එහෙම අනිවාර්යයෙන්‌ අත්හදාබලලා තියන දෙයක් තමා Apple සමාගමේ MacOS මෙහෙයුම් පද්ධතිය IBM format (අපි එදිනදා පාවිච්චි කරන) පරිගණකයක පිහිටුවලා බලන එක. hackintosh කියන වෙබ් අඩවියෙන් මේ ගැන අපිව සෑහෙන කාලයක් තිස්සෙ දැනුවත් කලා. එතන වෙන්නෙ මෙහෙයුම් පද්ධති ගැන ගැඹුරු අවබෝධයක් තියන අය සහ ඉගනගන්න අය එකතු වෙලා OSX පද්ධතිය ibm format පරිගණක වලට අනුකූලවෙන ආකාරයට reverse engineering කරන එක. මේක අධ්‍යාපණිකව බොහොම වටිනවා තාක්ශණික කරුනු ගැන ඉගනගන්න. නමුත් මේ විදියට OSX ස්ථාපණය කරලා බලපු අය දන්නවා ඒයින් ලැබෙන user experience එක 'පට්ට චා' කියලා. හේතුව සරලව පැහැදිලි කරනවා නම්, අවුරුදු ගානක් තිස්සෙ සිංහල කථික තරග දිනපු දක්ශයෙක්ව අරගෙන brainwash කරලා 'දැන්‌ දෙමලෙන් කතාකරන්න' කිව්වට ඒ මනුස්සයට සිංහලෙන් දක්වපු දක්ශකම් පෙන්වන්න බෑනෙ.

ලිනක්ස් පාවිච්චි කරපු අය docky ගැන අහලා ඇතුවට සැකයක් නෑ. ලිනක්ස්‌වල වගේ OSX වල වගේ animated task bar එකක් ලබාගන්න මේකෙන් පුලුවන්. නමුත් desktop theme එහෙම වෙනස් කරලා පෙනුම OSX වගේ කරගන්න ටිකක් විතර කරදර වෙන්න සිද්ධඋන වග කරලා බලපු අයට මතක ඇති.

මේකට පිලියමක් විදියට තමා Macbuntu එලිදක්වලා තියෙන්නෙ. ස්ථාපනය වෙන්න ඕනා dependencies එක තැනකට ගිනු කරලා තනි installation එකකින් Ubuntu -> OSX කරන්න මේකට පුලුවන්. දැනට සහය දක්වන්නෙ Ubuntu 10.04 සහ 10.10 වලට විතරයි. ඒක නිසා ඊට පරණ Ubuntu ස්ථාපණයක් තියනව නම් අලුත් එකකට update කරගෙන ඉන්න.

මුලින්ම කරන්න තියෙන්නෙ http://gnome-look.org/content/show.php/Macbuntu?content=129021 වෙත ගිහිල්ලා අදාල .gz ගොනුව download කරගන්න. 10.04 නම් මෙතනින් සහ 10.10 නම් මෙතනින් අදාල ගොනුව ලබාගන්න.

shell එක පාවිච්චි කරනව නම් wget ස්තාපණය කරලා තියෙන්න ඕනා (sudo apt-get install wget)
මුලුන්ම අපි home එකේ Sources කියලා directory එකක් හදාගනිමු. නැතිනම් පහත චිධාන වල Sources වෙනුවට ඔයා වැඩකරන directory එක ලබාදෙන්න.
mkdir ~/Sources

10.04
wget https://downloads.sourceforge.net/project/macbuntu/macbuntu-10.04/v2.2/Macbuntu-10.04.tar.gz -O ~/Sources/Macbuntu-10.04.tar.gz


10.10
wget https://downloads.sourceforge.net/project/macbuntu/macbuntu-10.10/v2.3/Macbuntu-10.10.tar.gz -O ~/Sources/Macbuntu-10.10.tar.gz



ඊට පස්සෙ භාගත කරගත්තු gz ගොණුව extract කරගන්න එපායෑ.
GUI එකේ නම් භාගත වුන ගොනුවෙ right click කරලා extract තෝරන්න

shell එකේ නම් Sourceses ඇතුලට යන්න
cd ~/Sources
පස්සෙ
tar xzvf Macbuntu-10.04.tar.gz
හෝ
tar xzvf Macbuntu-10.10.tar.gz

extract චුන ගොනුව ඇතුලට ගිහිල්ලා install.sh කියන script එක run කරන්න.
cd /Macbuntu-10.04
හෝ
cd /Macbuntu-10.04

ඊට පස්සෙ
./install.sh
මෙතනදි අදාල test එහෙම ධාවනය කරලා ඉදිරියට යන්න කලින් මේ වගේපණිවුඩයක් දෙනවා



ඊට පස්සෙ පෙනුම මොන ආකාරයටද තියෙන්න ඕනා කියලා ප්‍රශ්ණ කිහිපයක් අහනවා. default setting එක (නිකම්ම enter කරලා) හෝ yes ලබාදීලා (y සහ enter) ඉදිරියට යන්න.



මෙතන ඉදලා ස්ථාපණය වෙන්න ගතවෙන කාලය ඔයාගෙ පරිගණකයේ ස්ථාපණය කරලා තියන packages සහ අන්තර්ජාල සබධතාවයේ වේගය අනුව වෙනස් වෙනවා. කිහිප වතාවක් do you want to continue [y/n]? ලෙස පනිවුඩය වෙන්වයි. y ලබාදීලා ඉදිරියට යන්න. මතක තියාගන්න, මේ ක්‍රියාවලියට අන්තර්ජාල සබධතාවක් තියෙන්න ඕනා.


අවසානයේ මෙන්න මේ වගේ පනිවුඩයක් ලැබුනම 1 ලබාදීලා enter කරන්න. සුලු මොහොතකට පස්සෙ firefox සදහා add-on එක උවමනාද කියලා අහයි. ඒකට y දීලා enter කරන්න.



firefox add-on එක ස්තාපණය කරලාfirefox restart කරන්න.



අවසාන වශයෙන් වම් කෙරවලේම තියන icon එක click කරලා docky settings වලට ගිහින් dock configuration වල hiding කියන drop down list එකෙන් intelihide තෝරන්න.



දැන් පරිගණකය restart කරලා බලන්න. system tools වල ubuntu tweak වෙත ගිහිල්ලා උවමනා විදියට හැඩ වැඩ වෙනස් කරගන්නත්‌ අමතක කරන්න එපා.

Thursday 30 September 2010

තමන්ගේ කියා domain name එකක් ගත් පසු

බ්ලොග් එක එහෙම නැගලා යනකොට තමන්ගෙම කියලා domain name එකක් අරගන ඒතනට තමන්ගෙ blog එක ගෙනියන්න හුගදෙනෙක් කැමතී නෙ. මේ වැඩේ කරද්දි කෙරෙන තාක්ශණික කටයුතු සරලව තේරුම් අරගෙන පහසුවෙන් වැඩේ කරගන්න හැටි ගැන කතාකරන්නයි මේ උත්සහ කරන්නෙ.

domain name එකක් ගන්නවා කියන්නෙ දුරකථන නාමාවලියට තමන්ගෙ නම ඇතුලත්‌කරනවා වගේ වැඩක්. වෙනසකට තියෙන්නෙ දුරකථන අංකයක් නැතිව නාමාවලියට නම ඇතුලක් කරන්න බැහැ නෙ. නමුත් කෙනෙකුට domain name එක විතරක් මිලදීගෙන තියාගන්න පුලුවන්. හරියට දුරකථන අංකයක් නැතිව නම විතරක් නාමාවලියට ඇතුල් කරලා තියනවා වගේ. හිතන්න ඔයා amdan.lk කියන ඩොමේන් නාමය මිලදීගත්තා කියලා. හොස්ටින් සපයන සේවාවක් (මිලදීගත් හෝ නොමිලේ) නොමැතිනම් amdan.lk වෙත යන කෙනෙක්ට දකින්න ලැබෙන්නෙ "Server not found" කියන පනිවුඩය. godaddy, 123reg ආදී බොහෝ ආයතන domain name එක සමගම web hosting සහිත පැකේජ විකිනීම සිදු කරනවා. මේවා පරිපාලනය කිරීම (domain, web දෙකම) එකම පාලන පැනලයකින් කලහැකිවීම තමා පහසුවකට තියෙන්නෙ.

blogger, wordpress වගේ සේවාවන් ගැන යාලුවෙක්ගෙ දුරකථනයක් විදියට හිතන්න. කවුරුහරි ඒ යාලුවගෙ දුරකථන අංකෙට කතාකරලා 'ඇම්ඩන්ට පණිවිඩයක් කියන්න' කියලා කිව්වම යාලුව කොහොමහරි කරලා ඔයාට පණිවිඩේ ලැබෙන්න සලස්වනවා නේද?

වෙබ් හොස්ටින් සේවාවක් ගන්නවා කියන්නෙ තමන්ගෙම කියලා දුරකථනයක් ගන්නවා වගේ වැඩක්. හොස්ටින් සේවාව ගත්තට පස්සෙ දුරකථන නාමාවලිය වෙනස් කරන්න ඕනා ඔයාගෙ නමට ඉස්සරහින් අලුත ගත්තු අංකය යොදලා. දුරකථන නාමාවලියෙ වෙනස්කමක් කලොත් ඒක වෙනස් වෙන්නෙ ලබන අවුරුද්දෙ නිකුත් වෙන නාමාවලියෙ නේද? ඒ වගේ domain setting වෙනස් කලහමත් ඒ වෙනස්කම සක්‍රීකය වෙන්න උපරිම පැය 48ක් දක්වා කාලයක් ගතවෙන්න පුලුවන්. ඒක නිසා වෙනස් කරපු ගමන් වැඩ කලේ නෑ කියලා කලබල වෙන්නෙ නැතිව 'ඉවසන දනා රුපු යුදයට නැති කඩුව කොස් කොටන්නද' කියලා ඉවසලා ඉන්න තමා තියෙන්නෙ.

A records
domain name එකක contents කොහෙද තියෙන්නෙ කියලා කියන්න තමා මේක තියෙන්නෙ. උදාහරණයක් විදියට amdan.lk වෙත එන කෙනෙක්ව ඒ අඩවිය host කරලා තියන තැනට යොමු කරන එක තමා A record එකක රාජකාරිය. අපි හිතමු ඔයා මිලදීගත්තු web server එකේ ලිපිනය 34.56.67.23 කියලා.(මිලදීගත්තෙ web hosting plan එකක් නම් බොහෝ වෙලාවට ඔය ඉලක්කම වෙනුවට නමක් ලැබෙයි) මුලින්ම ඔයාගෙ domain settings වල A record එක සකස් කරන්න මේ විදිහට.
name: amdan.lk
content: 34.56.67.23
type: A
ttl: 300


CNAME records
domain name එක ගොඩනැගිල්ලක ලිපිනය කියලා හිතන්න. එකම ගොඩනැගිල්ලෙ උනත් apartment කිහිපයක් තියෙන්න පුලුවන් නේද? උදාහරණයක් විදියට ලිපිනය 130 නම් 130\1, 130\2 ආදී වශයෙන් උප කොටස් තියනවා දැකලා තියනවනේ?. ඔය විදිහ ඔයාගෙ domain name එකත් සමග sub domains පාවිච්චි කරනවා නම් අදාල sub domain තියන තැන් වලට point කිරීමට තමා CNAME records භාවිතා වෙන්නෙ. cname වල මූලිකම ප්‍රයෝජනය තමා විවිධ සේවා කොටස් විවිධ server වල ධාවනය කරවීම. උදාහරණයක් විදියට ඔයා මිලදීගත්තු amddan.lk අඩවියට බ්ලොග් එකක් එකතු කරන්න යනවා කියලා හිතන්න. මේ සදහා ඔයා තීරණය කරනවා blogger අඩවියේ සහය ලබාගන්න. මේ සදහා මුලින්ම amdan.lk වලට blog.amdan.lk කියලා CNAME record එකක් ඇතුල් කරලා කියනවා මේ නම හොයාගෙන කවුරුහරි ආවොත් content වල දක්වලා තියන තැනට යවන්න කියලා

උදා (blogger සදහා)
Name: blog.amdan.lk
content: ghs.google.com
type: CNMAE
ttl: 300

ඊටපස්සෙ blogger ට කියන්නත් ඕනා blog.amdan.lk හොයාගෙන කවුරුහරි ආවොත් ඔයාගෙ බ්ලොග් එකට එවන්න කියලා ඔයාගෙ blog එකේ settings හදන්න ඕනා.


දැන් තියෙන්නෙ කලින් කිව්ව වගේ ටිකක් ඉවසලා ඉන්න. සැරින් සැරේ blog.amdan.lk වලට ගිහින් බැලුවට ඉතින් කමක් නෑ.



MX records
මෙතන MX කියලා හැදින්වෙන්නෙ mail exchange කියන එක. ඔයාගෙ domain name එක භාවිතා කරලා e-mail සේවාවක් ලබාදෙනවනම් ලැබෙන request අදාල mail server එකට යොමු කරන්න තමා mx record තියෙන්න ඕනා. වෙබ් සේවා සපයන බොහෝ ආයතන web hosting plan එක සමගම email ලිපින කිහිපයක් ලබාගෙනවා. නමුත් ඔයාගෙ mail exchange එක ලෙස google apps සේවාව භාවිතා කරලා නොමිලේම විද්‍යුත් ලිපින 50ක් දක්වා ලබාගන්න හැකියාව තියනවා. මෙතෙන්ට ගිහින් කියලා තියන පියවර පිලිපදින්න විතරයි තියෙන්නෙ.

Thursday 19 August 2010

වයර්ලස් රව්ටර් වල ආරක්ෂාව - WEP

network එකක්‌ implement කරන්න ගියාම හුගදෙනෙක්‌ කතා කරන දෙයක් තමා මේ වයර්ලස් රව්ටර්. ලේසියි, පහසුයි, වයර් අමුන අමුන ඉන්න ඕනෙ නෑ, දුව දුව ඉන්ටනෙට් යන්න පුලුවන් නෙ. රාජකාරි ස්ථාන වල එහෙමත් වැඩි නැඹුරුවක් දක්වන්නෙ wireless router එකක් ගන්න තමා. මේකෙ ලේසිය, පහසුව වගේම අනතුරුදායක පැත්තකුත් තියනවා. සාමාන්‍යය පරිගණක ජාලයක (wired network) හැමදේම වෙන්නෙ වයර් හරහා නෙ. ඉතින් කෙනෙක්ට ජාලයට සම්බන්ධ වෙන්න නම් අදාල පරිගණකයට netwok cable එකක් සම්බන්ධ කරන්න ඕනා hubඑක හෝ switch එක හා සම්බන්ධ වෙන්න. ඒ විදියට සමඒබන්ධ වෙනඒන පුලුවන් ගොඩනැගිල්ල තුල ඉන්න පුද්ගලයෙකුට විතරයි. ඒකටත් වයර් එකක් ගහලා සම්බන්ධ වෙන්න නම් ඇඩ්මින් වරයෙකුගෙ අනුදැනුම ඇතිව වෙන්න ඕනා (වෙන කෙනෙකුගෙ network cable එක ගලවල ගන්නවනම් හැර). වයර්ලස් එහෙම නෙමේ. අදාල network key එක තියනව නම් signal තියන ඕන තැනක ඉදගෙන කෙනෙකුට සාමාන්‍ය router එකට සම්බන්ධ වෙන්න පුලුවන්. (wireless authontication වෙනමම server එකක් හරහා සිද්ධ වෙන මිල අධික පද්ධති නැතුවමත් නෙමේ).

open wireless networks ගැන සහ ඒවයේ ආරක්ෂාව ගැන කතාකරන්න දෙයක් නෑනෙ. ඕන කෙනෙක්ට සම්බන්ධ වෙන්න පුලුවන්. බොහොමයක් වයර්ලස් රව්ටර් වල WEP(Wired Equivalent Privacy) සහ WPA (Wi-Fi Protected Access) කියන autontication method දෙකම භාවිතා වෙනවා. WEP කියන්නෙ එච්චරම ආරක්ෂාකාරි ක්‍රමයක් නෙමයි. මේ බලන්න යන්නෙ WEP autontication method එක විදිට භාවිතා වෙන wireless ජාලයක network key එක අනවසරයෙන් ලබාගන්න කොච්චර පහසුයිද කියලා.

තියෙන්න ඕනා එකම අවශ්‍යතාවය තමා monitor mode පහසුකම භාවිතාකලහැකි wireless card එකක් තිබීම. wirleless router පාවිච්චි කරන අය දැකලා ඇති රව්ටරේ channel ID කියලා 1 ඉදලා 15 වෙනකම් වෙන ඉලක්කමක් හරි auto හරි කියලා සදහන් වෙලා තියනවා. සාමාන්‍ය drivers තුලදි wireless කාඩ් එකකට පුලුවන් අදාල එක channel එකක් ගැන අවධානයෙන් ඉන්න විතරයි. මොකද channel එක set කලාට පස්සෙ සිද්ධවෙන ගනුදෙනු වෙන්නෙ ඒක හරහා විතරයි නේ. නමුත් monitor mode සහය දක්වන card එකකට පුලුවන් 'එල්සිනා' වගේ අහල පහල හැමෝගෙම ඕපදූප ගැන හෙවිල්ලෙන් ඉන්න. මේ පහසුකම භාවිතා කරලා wireless ජාල වල ශක්තිය පරික්ෂා කරන්න හදලා තියන tool එකක් තමයි aircrack කියන්නෙ.

උබන්ටු තුල නම් aircrack ස්ථාපනය බොහොම ලේසියි. sudo apt-get install aircrack-ng විධානය මගින් ubuntu repository එක හරහා ස්වයංක්‍රීයවම ස්ථාපනය සිදුකරගන්න පුලුවන්. අලුත්ම නිකුතුව ඕනා නම් ඉතින්.

# sudo apt-get install build-essential libssl-dev libsqlite3-dev sqlite3 subversion iw subversion

කියලා dependencies ටික install කරගෙන කැමති තැනකට aircrack source එක බාගන්න පහත විධානයෙන්.

# sudo svn co http://trac.aircrack-ng.org/svn/trunk/ aircrack-ng

ඊටපස්සෙ aircrack-ng කියලා හැදුන folder එක ඇතුලට ගිහින් make සහ make install ලබාදෙන්න පහත පරිදි

# cd aircrack-ng
# sudo make
# sudo make install

ඔය විදි දෙකෙන් කැමති විදියකට aircrack ඉන්ස්ටෝල් කරගත්තට පස්සෙ බලන්න තියෙන්න ඔයාගෙ wireless card එක monitor mode සදහා සහය දක්වනවද කියලා. මේ සදහා

# sudo airmon-ng start < කාඩ් එකේ (wireless) නම (බොහෝ විට wlan0)> ලෙස විධානය ලබාදෙන්න



ඔන්න ඔය විදියට monitor mode enabled on කියලා message එකක් ලැබුනා කියන්නෙ ඔයාගෙ wireless card එක සාර්ථකව moitor mode සක්‍රීය කරගෙන තියනවා කියන එක. ඊට පස්සෙ පහත විධානය දීලා බලන්න card එකට packet injection හැකියාවත් තියනවද කියලා. මෙතනදි භාවිතා කරන්න ඕනා monitor mode සක්‍රීය වුන interface එක.(මෙතන උදාහරනෙ හැටියට mon0)

# aireplay-ng -9 mon0



දැං එහෙනං තියෙන්නෙ අහල පහල wireless තියන් ඉන්නෙ කව්ද කියලා හොයලා බලන්න

sudo airodump-ng mon0

මෙන්න මේ වගේ ප්‍රතිඒලයක් ලැබෙයි. විනාඩියකට විතර පස්සෙ ctrl+c ගහලා ස්කෑන් වෙන එක නවත්තන්න.



ඔය ENC එහෙම නැතිනම් encription කියන තීරුවෙ WEP කියලා තියන කව්රුහරි ඉන්නවනම් ඉතිං එයාගෙ ආරස්සාව ගැන කතාකරන්න දෙයක් නෑ. මේක චිස්තර කිරීමෙ පහසුව තකා මම මගේ රව්ටරේ encryption WEPවලට මාරු කරලා තියෙන්නෙ.


දැන් තියෙන්නෙ අදාල rowter එකෙන් සන්නිවේදනය කරන පැකට් වලට එල්සිනා පාර දාගෙන ඉන්න ගමන් ඒවා එකතු කරගන්න.

# airodump-ng -c <රව්ටරේ පාවිච්චි වෙන චැනල් එක> --bssid <රව්ටරේ bssid එක> -w <සේව් කරගන්න file name එකක්> mon0

# airodump-ng -c 2 --bssid 00:1C:26:AD:6C:16 -w output mon0



ඔහොම කියලා එයාට පාඩුවෙ වැඩේ කරගෙන යන්න දීලා තව terminal window එකක් ගන්න.

ඕපදූප නිකං අහං හිටියට වැඩක් නෑනෙ. එක දෙක කරන්න අපිත් පොඩි සපෝට් එකක් දෙන්න එපෑ. ඔය එහෙට මෙහෙට යන පැකට් අල්ලගෙන උවමනා විදියට වෙනස්කම් කරලා ආපහු අතඅරින්න කියන්නෙ මෙහෙමයි.

# aireplay-ng -3 -b <රව්ටරේ MAC Address එක> <මොනිට මෝඩ් ඉන්න කාඩ් එකේ නම>

# aireplay-ng -3 -b 00:1C:26:AD:6C:16 mon0




මේකෙන් වෙන්නෙ අර කලින් run වෙන්න දාපු airodump-ng විධානයේ ක්‍රියාවලිය වේගවත් කිරීම. අර කලිං කිව්ව වගේ ඕපදූප අහන් ඉදලා මදි, පොඩ්ඩක් ඒවා වෙනස් කරලා ගිනි තිබ්බම වැඩේ නැගලා යනවනෙ. ඔහොම වෙන අතරතුරේදි airodump-ng විධානය දෙනකොට දීපු නමෙන් (output කියලනෙ නම දුන්නෙ, මතකද?) හැදුන .cap file එකක ඔය ටික save වෙනවා.

ඔය data භාවිතා කරලා network key එක හොයන්න නම් IVs 100,000ත් 5,000,000ත් අතර ප්‍රමාණයක් උවමනා කරනවා. ඉහත command දෙකට run වෙන්න තියලා තවත් terminal window එකක්‌අරගෙන අර .cap ගොනුව භාවිතා කරලා key එක crack කරන්න කියලා විධානය දෙන්න මෙහෙම

# aircrack-ng -b <රව්ටරේ bssid එක> <සේව් කරගන්න දීපු file name එක>*.cap

# aircrack-ng -b 00:1C:26:AD:6C:16 output*.cap

ප්‍රමාණවත් තරම් IVs එකතු වෙනකොට මෙයා සැරින් සැරේ key එක crack කරන්න උත්සහ කරනවා. දැන් ඉතින් තියෙන්නෙ බලන් ඉන්න තමා. ජාලයේ ක්‍රියාකාරීත්වය මත මේකට ගතවෙන වෙලාව වෙනස් වෙන්න පුලුවන්.



ප්‍රමාණවත් තරම් (5000න් 5000ට) IVs එකතු වුනාම aircrack-ng ආපහු පාරක් network key එක extract කරන්න උත්සහ කරනවා. process එක ඉවරවෙනකම් ඉදලා screenshots නොදැමීම ගැන සමාවෙන්න.

මතක තියාගන්න, WEP සහ WPA දෙකම තියන රව්ටරයක ඔය දෙකම enable කරලා තියන එකෙන් ආරක්ෂාවට ලොකු තර්ජනයක් ඇතිවෙන වග. දම්වැලකත් ආරක්ෂිත පද්ධතියකත් සවිය රැදිලා තියෙන්න ඒකෙ දුර්වලම තැන. ඒක නිසා දෙකම තියනවනම් WPA විතරක් තියාගන්න. WEP විතරයි නම් තියෙන්නෙ පාවිච්චි කරන්න පුලුවන් උපරිම charactos ගනන යොදාගැනීමෙන් අවධානම යම්තාක් දුරකට අඩුකරගන්න පුලුවන්.


ලිපිය සදහා භාවිතා කල අනිත් resources
http://www.aircrack-ng.org/doku.php?id=simple_wep_crack

Wednesday 18 August 2010

ආයුබෝවන්

නිතරම වෙනස්වෙන තොරතුරු තාක්ෂණ ලෝකයේ ජාමේ බේරගෙන ඉන්න එක ලේසි පාසු වැඩක් නෙමේයි නෙ. දැනුවත් වෙලා ඉන්න තරමට තමා ආරක්ෂා වෙන්න පුලුවන්. ඉතිං ඔය අලුතෙන් සොයාගැනෙන දුර්වලකම්(vulnerabilities),ඒවා නරකට පාවිච්චි කරන ඈයන් සහ ඒවායින් බේරෙන හැටි ගැන, පුටු කඩලා අටු හදනහැටි එහෙම තමන් දැනගන්න දෙයක් අනිත් අය එක්ක බෙදාහදාගන්න හිතාගෙන තමයි හැකර්.lk අඩවිය ආරම්භ කලේ. අඩුපාඩුවක්ව තිබුනු බ්ලොග් එකක් නැතිකමේ අඩුව පුරවන්නෙ දැනුයි ඔන්න. තොරතුරු තාක්ෂණය සහ ආරක්ෂාව සම්බන්ධ අලුත්, පරණ, වැදගත් දේවල් ගැන ලිපි සපයන්න පුලුවන් හැමෝටම විවෘතව ආරාධනා කරනවා. කඩන බිදින හැටි ගැන විස්තර කරලා, කැඩෙන බිදෙන දේවල් ගැන විස්තර කරලා (IT සම්බන්ධ දේවල් විතරයි හොදද), කඩාබිදගන්නෙ නැතිව ඉන්නෙ කොහොමද කියලා එහෙම පුලුවන් අය ලිපි ලබාදෙන්න. ප්‍රශ්ණ අහන්න, උත්තර දෙන්න, වාද කරන්න එහෙම forum එකක් එහෙමත් තියනව කියල දන්නවනෙ. වෙලාව කලාව එහෙම වැඩිපුර තියන අයට අඩවියෙ සංවර්ධණ කටයුතු වලට එහෙමත් දායකවෙන්න කියලා ආරාධනා කරනවා.

එහෙනම් ඉතිං.. වැඩ පටන්ගන්න තමා තියෙන්නෙ ;)