LAMP: جیاوازیی نێوان پێداچوونەوەکان

لە چاوگ
ھێڵی ٢٩٨: ھێڵی ٢٩٨:
02 1 * * * root clamscan -R /var/www
02 1 * * * root clamscan -R /var/www
</pre>
</pre>
هەموو ڕۆژێک سەعات <code>1.02 AM</code> بەیانى پەڕگەکانى <code>public html</code> دەپشکنێ،ئەتوانى بوخچەکە یان بیگۆڕین بۆ هەر پەڕگەێکى تر بێت ئەوەى مەبەستە کە پشکنینى بۆ بکەیت،یان پۆست ..هتد،
هەموو ڕۆژێک سەعات <code>1.02 AM</code> بەیانى پەڕگەکانى <code>public html</code> دەپشکنێ،ئەتوانى بوخچەکە بیگۆڕیت بۆ هەر پەڕگەێکى تر،ئەوەى مەبەستە کە پشکنینى بۆ بکەیت،یان پۆست ..هتد،


== ئاگرەدیوارى Iptables ==
== ئاگرەدیوارى Iptables ==

وەک پێداچوونەوەی ‏١٤:١٩، ٢٨ی ئابی ٢٠٠٩

LAMP کورتکراوەى Linux ,Apache ,MySQL ,PHP/Perl،یەکێکە لە سەرچاوەى کراوە بەکاردێت بۆ بەرەو پێش بردنى ماڵپەڕ،ببەکارهێنانى سیستەمى کارپێکردنى لینوکس پێویستمان بە Apache دەبێت وە بەکاردێت بۆ ڕاژەکارى وێب، MySQL بەکاردێت بۆ بەڕێوەبەردنى پەیوەندى نێوان بنکەى دراوە، PHP یەکێکە لە زمانە بزۆکەکان بۆ دروستکردنى ماڵپەڕ بەکاردێت،بۆ ئەوەى بە شێوەێکى دروست دایمەزرێنین وە کارى پێبکەین سەێرى ئەم بابەتانەى خوارەوە بکە،


دامەزراندنى Apache2

بۆ ئەوەى Apache2 دامەزرێنین سەرەتا بڕۆ بۆ Terminal ئەمە بنوسە،

sudo apt-get install apache2

بۆ ئەوەى تاقى بکەینەوە کە ئیش دەکات بە دروستى،لە یەکێک لە وێبگەڕەکان ئەمە بنوسە،

http://localhost

ئەگەر نوسرا It works ئەوە کار دەکات بێ کێشە،


دامەزراندنى Apache + PHP

Apache2 یەکێکە لە ناسراوەکانى ڕاژەکارى وێب،لە سیستەمى کارپێکردنى لینوکس بەکاردێت،دامەزراندنى لەسەرەوە باسمانکردووە،

  • بۆ دامەزراندنى PHP4 ئەمە لە تێرمیناڵ بنوسە،
sudo apt-get install apache2 php4 libapache2-mod-php4 
  • بۆ دامەزراندنى PHP5 ئەمە لە تێرمیناڵ بنوسە
sudo apt-get install apache2 php5 libapache2-mod-php5  
  • بۆ دامەزراندنى Perl ئەمە لە تێرمیناڵ بنوسە،
sudo apt-get install perl libapache2-mod-perl2
  • بۆ دامەزراندنى Python ئەمە لە تێرمیناڵ بنوسە،
sudo apt-get install python libapache2-mod-python

بۆ ڕێکخستنى Apache بڕۆ بۆ پەڕگەى /etc/apache2/apache2.conf،هەروەها بۆ دانانى پەڕگەى وێب هەموو کات دەبێت پەڕگەکانت بار بکەیتە ناو ئەم بوخچەییە /var/www

بۆ ئەوەى بزانین کە بە دروستى PHP دامەزراوە و ئیش دەکات،پەڕگەێک دروست بکە بە هەر ناوێک بێت،بۆ نموونە ئێمە ناومان ناوە test.php بیخەرە ناو بوخچەى /var/www پەڕگەى test.php بکەرەوە ئەم کۆدەى تێدا دابنێ

<?php phpinfo(); ?>

پاشەکەوتى بکە،دەبێت لە کۆتایی ئەم پەڕگەیە بەم شێوەیە بێت /var/www/test.php،لە یەکێک لە گەڕۆکەکان تاقى بکەرەوە بۆ ئەوەى بزانین کە بە دروستى دامەزراوە،دەبێت زانیاریەکان نیشان بدات.وەک ئەم وێنەیە،ئەگەر وەک ئەمە نەبوو ئەو کاتە بە دروستى دانەمەزراوە!هەوڵ بدە فرمانەکان بە دروستى بەکاربهێنە،


چالاککردنى GD Library لەگەڵ PHP

GD Library چییە؟یەکێکە لە سەرچاوەى کراوە بە شێوەێکى بزۆک هەندێک وێنە دروست دەکرێت لەلاین هەندێک پڕۆگرامەوە،GD دەنوسرێت بە زمانى C،لەگەڵ "wrappers" چالاکە بۆ Perl،زمانى PHP یان هەر زمانێکى تر GD دروستدەکرێت بە فۆرماتى PNG, JPEG لەگەڵ GIF بەزۆرى،یان بەکارهێنانى CAPTCHA ،کەمێک ڕوونتر کاتێک دەبیتە ئەندام،یان لە کاتى دروستکردنى پۆستى ئەلەکترۆنى ...هتد،هەندێک وشە نوسراوە بە شێوەى وێنە،پێت دەڵێت بینوسرەوە لەم بۆشایی خوارەوە،ئەمە بۆ ئەوەیە کە ڕێگر بێت لە SPAM یان ناردنى هەر شتێک بە شێوەى خۆکار دێت بۆت،بۆ دامەزراندنى لە لینوکس ئەمە لە تێرمیناڵ بنوسە،

sudo apt-get install php5-gd  

بۆ زانیارى زۆرتر،دەربارەى PHP:GD

چالاککردنى Mod Rewrite لەگەڵ htaccess.

دامەزراندنى MySQL بنکەى دراوەى ڕاژە

دامەزراندنى MySQL هەموو کات پێویستە بۆ ئیش پێکردنى بنکەى دراوەى ماڵپەڕەکەت،هەندێک پڕۆگرامۆکە پێویستى بە بنکەى دراوە هەیە،بۆیە دەبێت MySQL دامەزرێنین،لەگەڵ دامەزراندنى mysql 5 server لەگەڵ mysql 5 client ئەمە لە تێرمیناڵ بنوسە،

sudo apt-get install mysql-server mysql-client php5-mysql
  • بۆ دامەزراندنى MySQL بۆ وەشانى php4 ئەمە لە تێرمیناڵ بنوسە،
sudo apt-get install mysql-server mysql-client php4-mysql

بۆ ڕێکخستنى پەڕگەى mysql بڕۆ بۆ /etc/mysql/my.cnf

دروستکردنى بەکارهێنەر بۆ MySQL

لە سەرەکى mysql خۆى بەکارهێنەرى root دروست دەکات بۆ ئیش پێکردن،بەڵام بەبێ تێپەڕەوشە واتا دروستى ناکات دەبێت خۆمان دروستى بکەین،پێویست دەکات تێپەڕەوشە بگۆڕێت،

  • گۆڕینى تێپەڕەوشەى Root
mysql> USE mysql;
mysql> UPDATE user SET Password=PASSWORD('new-password') WHERE user='root';
mysql> FLUSH PRIVILEGES;


  • دروستکردنى بەکارهێنەر،

بەزۆرى پێویستە تێپەڕەوشەى root بەکاربهێنیت،بە زۆرى بۆ دروستکردنى بەکارهێنەر نوێ هەیە بۆ پەیوەندىکردن بە بنکەى دراوەىmysql بۆ پڕۆگرامۆکەى PHP،ئەتوانى بەکارهێنەرى تر زۆر بکەیت بۆ بنکەى دراوەىmysql،ببەکارهێنانى control panel وەک webmin یانphpMyAdminزۆر بە ئاسانى دادەمەزرێت،سەێرى خوارەوە بکە،

دامەزراندنى PhpMyAdmin

PhpMyAdmin کارێکى زۆر باشە بۆ وێب،ئەتوانى لە ڕێگاى PhpMyAdmin زۆر کار بکەیت،بۆ بەڕێوەبەردنى بنکەى دراوە لەگەڵ بەڕێوەبەردنى كاڵانه‌رم لەگەڵ ئەوەى زۆر بە ئاسانى دادەمەزرێت،هەروەها بەڕێوەبەردنى بنکەى دراوە لەگەڵ خشتەکان،بۆ PhpMyAdmin دامەزراندنى ئەمە لە تێرمیناڵ بنوسە

sudo apt-get install phpmyadmin

بۆ ڕێکخستنى phpMyAdmin بڕۆ بۆ بوخچەى /etc/phpmyadmin بۆ جێبەجێکردنى هەنگاوەکانى apache بڕۆ ئەم پەڕگەیە وە بیکرەوە /etc/apache2/apache2.confئەم دێڕى خوارەوە زۆر بکە:

Include /etc/phpmyadmin/apache.conf 

تێبینى | بۆ دووبارە دەستپێکردنەوەى apache ئەمە بنوسە،

sudo etc/init.d/apache2 restart

ئێستا MySQL لەگەڵ phpMyAdmin ئامادەیە ئیش پێکردن،

دامەزراندنى Mail Server

سەرەتا لە سیستەمى کارپێکردنى لینوکس بیریان لەوەکردووە کە ڕاژەکارى پۆست دامەزرێنن بۆ چارەسەرکردنى کێشەکان،وە دامەزراندنى ڕاژەکارى پۆست Postfix/Dovecot تەنها بۆ چالاککردنى ناردنى پۆست لە ڕایەڵە،


دامەزراندنى Postfix MTA

MTA کورتکراوەى Mail Transfer Agent بۆ دامەزراندنى postfix package لەگەڵ sasl ئەمە لە تێرمیناڵ بنوسە،

sudo apt-get install postfix postfix-tls libsasl2 sasl2-bin libsasl2-modules popa3d 

دواى ئەوە هەندێک پرسیارت لێ دەکات دەربارەى ناوى ڕاژەکار،وەڵامى پرسیارەکە بدەرەوە بە نوسینى ناوى دۆمینیەکەت لەگەڵ دیاریکردنى Internet site بۆ postfix،بۆ ڕێکخستنى پەڕەگەکانى postfix بڕۆ بۆ ئێرە /etc/postfix/main.cf هەروەها ئەتوانى دەستکارى پەڕەگەکانى بکەیت،لەلاین هەر دەستکارێکەوە بێت،لە هەمان پەڕگەى سەرەوە

  • بۆ دەستپێکردنەوەى ڕاژەى Postfix دووبارە ئەمە بنوسە لە تێرمنیاڵ،
sudo /etc/init.d/postfix restart 
  • بۆ وەستانى ڕاژەى Postfix ئەمە لە تێرمیناڵ بنوسە،
sudo /etc/init.d/postfix stop
  • بۆ ئیشپێکردنى ڕاژەى Postfix ئەمە لە تێرمیناڵ بنوسە،
sudo /etc/init.d/postfix start


دامەزراندنى Dovecot

Dovecot یەکێکە لە ڕێگاکانى بەکارهێنانى ڕاژەکارى POP3/IMAP وە پێویستى بە Postfix MTA دەبێت بۆ ئەوەى بە دروستى ئیش بکات،بۆ دامەزراندنى ئەمە لە تێرمیناڵ بنوسە،

sudo apt-get install dovecot

لە هەندێک وەشانى سیستەمى کارپێکردنى لینوکس ئیش ناکات دەبێت هەندێک تایبەتمەندى پاک ئەیچ دامەزرێنیین بۆ ئەوەى بە دروستى کار بکات،ئەمە لە تێرمیناڵ بنوسە

sudo apt-get install dovecot-imapd dovecot-pop3d dovecot-common

بۆ ڕێکخستنى پەڕەگەکانى Dovecot بڕۆ بۆ ئێرە،

sudo /etc/dovecot/dovecot.conf

پێش ئەوەى دەست بکەیت بە ئیش پێکردنى پێویست دەکات هەندێک دەستکارى بکەیت بۆ ئەوەى بە دروستى ئیش بکات،دوو کرتە لە پەڕگەى سەرەوە کە باسمانکردووە بۆ ڕێکخستنى Dovecot،سەێرى ئەمە بکە

nano /etc/dovecot/dovecot.conf 

# specify protocols = imap imaps pop3 pop3s
protocols = pop3 imap
# uncomment this and change to no. 
disable_plaintext_auth = no 
pop3_uidl_format = %08Xu%08Xv
  • بۆ دەستپێکردنەوەى Dovecot دووبارە ئەمە لە تێرمیناڵ بنوسە،
sudo /etc/init.d/dovecot restart


ڕێکخستنى SASL لەگەڵ TLS

ڕێکخستنى SASL + TLS کورتکراوەى Transport Layer Securityـە،بەکارهێنانى بە شێوەێکى سەرەکى پشکنیینى پێش ناردنى نامەى پۆستى ئەلەکترۆنى لەلاین ڕاژەکارى دەرەکى،هەروەها ناردنى بۆ سپام،بۆیە هەموو کات پێویست دەکات ئاگادارى پۆستەکەمان بیین لە نامەى سپام،

هەنگاوەکانى جێبەجێکردنى SMTP لە postfix لەگەڵ dovecot،بۆ ڕێکخستنى postfix دەستکارى ئەم پەڕگەیە بکە، /etc/postfix/main.cf کاتێک کە کرایەوە دەستکارى ئەم چەند دێڕە بکە،

smtpd_sasl_auth_enable = yes 
smtpd_sasl_local_domain = yourdomain.com
smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination 
smtpd_sasl_security_options = noanonymous   

بۆ ڕێکخستنى Dovecot بڕۆ بۆ ئەم پەڕگەیە /etc/dovecot/dovecot.conf دەستکارى بکە،سەێرى ئەم چەند دێڕى خوارەوە بکە لە یەکەم دێڕ نوسراوە auth default

auth default {
mechanisms = plain login
passdb pam {
}
userdb passwd {
}
socket listen {
client {
path = /var/spool/postfix/private/auth
mode = 0660
user = postfix
group = postfix
}
}
}

ئێستا auth default بگۆڕە بۆ auth default2،ئەگەر ناوەکەى نەگۆڕێت لە ڕاژەکارى dovecot کێشەت بۆ دروست دەکات،دواى ئەوە هەموو هەنگاوەکانت کرد،دەبێت ئەم سێ هەنگاوى خوارەوە جێبەجێ بکەیت،

  • بۆ دەستپێکردنەوەى saslauthd دووبارە،ئەمە لە تێرمیناڵ بنوسە،
sudo /etc/init.d/saslauthd restart
  • بۆ دەستپێکردنەوەى postfix دووبارە،ئەمە لە تێرمیناڵ بنوسە،
sudo /etc/init.d/postfix restart
  • بۆ دەستپێکردنەوەى dovecot دووبارە،ئەمە لە تێرمیناڵ بنوسە،
sudo /etc/init.d/dovecot restart


ناردنەوەى پۆستەکان

چۆن پۆستێک دەنێریتەوە بۆ پۆستێکى تایبەتى لە کاتێک تۆ بەڕێوەبەرى چەند ماڵپەڕێک بیت،وە پێویست دەکات بە ناردنەوەى هەر پۆستێک بۆ پۆستى ئەلەکترۆنى سەرەکى،ئەم کارە زۆر ئاسان دەکرێت،تەنها بە دروستکردنى پەڕگەى ناردنەوەکە وە تێخستنى پۆستى ئەلەکترۆنى بۆ لیستەکە،

چونەژوورەوەى بەکارهێنەر و جۆرەکانى،

echo 'destination_email_address' > .forward   

یان ئەتوانى بەکارهێنانى دروستکردنى .forward file،وە سڕینەوەى .forward file ئەگەر حەز نەکەیت هیچ پۆستێک بێتەوە بۆت،

دامەزراندنى Squirrel Web Mail

پۆستى Squirrel یەکێکە لە ڕێگاکانى بەزۆرى بۆ وێب بەکاردێت،وە بە یارمەتى پۆستى ئەلەکترۆنى هاوڕێییەکەت،Squirrel mail ئیش دەاکت ببێ بنکەى دراوەى mysql وە زۆر بە ئاسانى دادەمەزرێت، دەبێت پێشتر apache لەگەڵ PHP دامەزرابێت پێش ئەوەى پۆستى Squirrel دامەزرێنیت،بۆ دامەزراندنى ئەمە لە تێرمیناڵ بنوسە،

sudo apt-get install squirrelmail  

وە بۆ ڕێکخستنى Squirrelmail بڕۆ بۆ ئەم بوخچەیە /etc/squirrelmail/ وە هەموو ڕێکخستنە سەرەکییەکانى تێدایە،

# Run squirrelmail configuration utility as ROOT
/usr/sbin/squirrelmail-configure 

ئێستا ئەتەوێت هەنگاوەکانى ئیش پێکردنى apache جێبەجێ بکەیت،سەرەتا دەستکارى ئەم پەڕگەیە /etc/apache2/apache2.conf ئەم دێڕى خوارەوەى تێ بکە:

Include /etc/squirrelmail/apache.conf

ئێستا webmail ئامادەیە بۆ ئیش پێکردنى،ئەتوانى لە ڕێگاى یەکێک لە وێبگەڕەکانەوە تاقى بکەیتەوە بۆ ئەوەى بزانى ئیش دەکات،بەم شێوەیە http://yourdomain/squirrelmail

کێشەى چونەژوورەوە لە Mail Server

هەر کاتێت بچیتەژوورە بۆ ناو پۆستى ئەلەکترۆنى لەم پەڕگەیە پاشەکەوتى دەکات /var/log/mail.log وە هەر کێشەێکەت هەبوو بڕۆ بۆ ئەم پەڕگەیە،

Webmin-پەڕەى چاودێرى ڕاژە

Webmin یەکێک لە پەڕەى چاودێرى ڕاژە وە چالاکە خۆڕایە،لە cpanel یان plesk دەچێت بۆ بەڕێوەبەردنى ڕاژە بەکاردێت،بۆ داگرتنـى دواترین وەشانى webmin لە ماڵپەڕى خۆیان هەیە،بڕۆ دایگرە،

wget http://downloadpath/webmin-x.x.xx.tar.gz
tar xzf webmin-x.x.x.tar.gz
cd /webmin-x.x.x
./setup.sh

لەکاتى دامەزراندنى هەندێک پرسیارت لێ دەکات لەگەڵ ئەوەى بەزۆرى هەندێک گۆڕاوەکان بە شێوەى ئۆتۆماتیکى سەرەکى دەڕوات،ئێستا کارەکان تەواو بووە بۆ تاقىکردنەوەى کە ئیش دەکات یان نە؟لە یەکێک لە وێبگەڕەکانەوە تاقى بکەرەوە بەم شێوەیە http://ip.address:10000 یان http://www.domainname:10000 ،بڕۆ ژوورەوە ئەتوانى هەموو شتێک بکەیت کە پەیوەندى بە ڕاژەکەتەوە هەبێت،

دامەزراندنى Webalizer

یەکێکە لە کاڵانەرم بەکاردێت بۆ سەرژمێریکردنى ئەو کەسانەى سەردانى ماڵپەڕەکەت دەکەن،زۆر بە جوانى بە شێوەێکى گرافیک ئەوانى سەردانى ماڵپەڕکەتى کردووە پاشەکەوتى دەکات،کە چەند کەس پەڕەى ماڵپەڕەکەتى کردوەتەوە،زۆر پێویستە ئەمە هەبێت بۆ ئەوەى بە شێوەێکى دروست بزانیت کە چەند کەس سەردانى ماڵپەڕەکەت دەکەن،وە دامەزراندن و ڕێکخستنى زۆر ئاسانە،بۆ دامەزراندن ئەمە لە تێمیناڵ بنوسە،

sudo apt-get install webalizer

ئێستا ئەتوانى دەستکارى ڕێکخستنەکانى webalizer بکەیت،بۆ دەستکاریکردنى بڕۆ بۆ ئێرە /etc/webalizer.conf بۆ ئیش پێکردنى بە شێوەێکى ئاساییی بڕۆ بۆ ئێرە،

/usr/bin/webalizer

دامەزراندنى FTP Server

هەموو کات پێویستیت بە ftp server دەبێت بۆ بارکردنى و داگتنى پەڕگەکانى ماڵپەڕەکەت،لێرە باسى دامەزراندنى پڕۆگرامى vsftp server دەکەین کە زۆر ئاسان دادەمەزرێت وە ڕێکخستنى زۆر ئاسانە هەروەها ئیش پێکردنى زۆر خێرا وە زوویش پەیوەندى دەگرێت،بۆ دلمەزراندنى ئەمە لە تێرمیناڵ بنوسە،

sudo apt-get install vsftpd

بۆ دەستکاریکردنى بڕۆ بۆ ئەم پەڕگەیە /etc/vsftpd.conf،وە بۆ گۆڕینى تایبەتمەندیەکانى ئەمە بکەرەوە /etc/vsftpd.conf هەروەها گۆڕینى شوێنى بەکارهێنەر و دەسەڵاتى نوسینى بەکارهێنەرى FTP،

# Uncomment this to allow local users to log in.
local_enable=YES
# Uncomment this to enable any form of FTP write command.
write_enable=YES

پێش ئەوەى پەیوەندى بگریت بە FTPپێویست دەکات شوێنى بەکارهێنەرەکان لەگەڵ گرووپەکان دروست بکەیت،

# CD to /home/<user> and create a symbolic link to /var/www as this is the public html folder. 
ln -s /var/www www

#change ownership /var/www to user
chown -R <user> /var/www

#Change to 755 permissions 
chmod -R 755 /var/www

ئێستا ئەتوانى پەیوەندى بگریت بە FTP هەروەها لەگەڵ بارکردنى هەموو پەڕگەکان بۆ ناو ماڵپەڕکەت،


ClamAV-کاڵانەرمى ئەنتى ڤایرۆس

سیستەمى کارپێکردنى لینوکس لە هەندێک کات لەوانەیە پەڕەگەکانى ماڵپەڕەکەمان تووشى ڤایرۆسى trojans،worms بێت،ئەم ئەنتى ڤایرۆسە چالاککراوە بۆ ئەم سیستەمە کە ئەتوانى پەڕگەکانى ڕاژەکەت پشكنینى بکەیت،بۆ دبیێان/ئوبونتو ئەمە لە تێرمیناڵ بنوسە،

apt-get install clamav 

پێویست دەکات پەڕگەکان سەرەتا پشکنینى بۆ بکەیت،

clamscan -R /folders 

-R بۆ دووبارەکردنەوە لەگەڵ هەر هەڵبژاردنێک،وە بۆ نوێیکردنەوەى بنکەى دراوەى ڤایرۆسکە،

freshclam

بۆ ئەوەى هەموو ڕۆژێک پشکنین بکات بە شێوەێکى خۆدکار،تەنها ئیش بەمە بکە crontab -e دواى ئەوە ئەم دێڕەى بۆ زۆر بکە،

02 1 * * * root clamscan -R /var/www

هەموو ڕۆژێک سەعات 1.02 AM بەیانى پەڕگەکانى public html دەپشکنێ،ئەتوانى بوخچەکە بیگۆڕیت بۆ هەر پەڕگەێکى تر،ئەوەى مەبەستە کە پشکنینى بۆ بکەیت،یان پۆست ..هتد،

ئاگرەدیوارى Iptables