لينكساوي

لكل من يهتم باللينكس والبرامج الحرة والمفتوحة المصدر ,أبسط شرح ممكن عن البرامج والخدمات

أهلا بك. إذا كانت هذه زيارتك الأولى فإني أنصحك بالإشتراك في خدمة RSS . لتحصل على المواضيع الجديدة فور نشرها. ويمكنك متابعتنا من خلال Twitter و Facebook





إذا كنت تخطط لبناء أونقل موقعك إلى دروبال وتملك سيرفر كامل أو vps بسبب انخفاض تكلفته في الفترة الأخيرة وﻷنه في الإستضافات المشتركة دائما ما تواجه مصاعب بسبب اعتماد بعض الحلول الوسطية لتلائم مختلف المواقع وعدم وجود الحرية في التعديل على الاستضافة وغيرها من الأسباب
الغاية من هذا الموضوع اعداد الأبونتو سيرفر ليعطي أفضل أداء مع استضافة مواقع مبنية على الدروبال
يجب أن يكون الأبونتو سيرفر منصب وعليه الخدمات التالية Apache, MySQL, SSH Server, PhpMyAdmin, … ويمكنك اتباع هذا الموضوع ليساعدك على ذلك تنصيب أبونتو سيرفر 9.04 بالصور خطوة خطوة
الأن لديك سيرفر جاهز وفريش لنبدأ بالإعداد وإضافة بعض التعديلات باتباع هذا الدليل
في البداية وقبل أن نبدأ علينا تثبيت التحديثات إن وجدت

sudo aptitude update
sudo aptitude safe-upgrade
sudo aptitude full-upgrade


علينا تثبيت حزمة build-essential بسبب احتياجها من الكثير من البرامج وأيضا حزمة curl اللي يستخدمها الدروبال في تشغيل وظائفه الدورية

sudo aptitude install build-essential
sudo apt-get install curl

علينا تنصيب postfix وهو mail server من أجل تمكين إرسال الرسائل من قبل دروبال والتأكد من الحزم اللي تلزمنا بأنها مثبته بالأمر التالي

sudo apt-get install apache2 apache2-threaded-dev php5 php5-dev php-pear php5-gd mysql-server phpmyadmin postfix

لتفعيل الروابط النظيفة أو الجميلة ( clean urls ) لزمنا تفعيل mod_rewrite في الأباتشي

sudo a2enmod rewrite

وتعطيل موديلين لا يتم استخدامهم

sudo a2dismod cgi
sudo a2dismod autoindex

ولتشغيل دروبال بجودة عالية علينا زيادة الذاكرة المسموح استخدامها (PHP’s memory limit) إلى 128 ميغا وزيادة حجم الملفات المسموح برفعها (upload) إلى 128 ميغا زيادة حجم المواضيع (post sizes) إلى 128 ميغا

sudo sed  -i 's/memory_limit = .*/memory_limit = 128M/' /etc/php5/apache2/php.ini
sudo sed -i 's/upload_max_filesize = .*/upload_max_filesize = 128M/' /etc/php5/apache2/php.ini
sudo sed -i 's/post_max_size = .*/post_max_size = 128M/' /etc/php5/apache2/php.ini

لتفعيل شريط التقدم اثناء رفع الملفات علينا تفعيل هذا الامتداد

sudo pecl install uploadprogress
sudo sed -i '/; extension_dir directive above/ a\
extension=uploadprogress.so'
/etc/php5/apache2/php.ini

لإعداد التوقيت المحلي على السيرفر

sudo dpkg-reconfigure tzdata

تقريبا أنتهينا ولكن علينا جعل السيرفر أكثر أمانا بإيقاف دخول المستخدم root وﻹخفاء معلومات الأباتشي

sudo sed  -i 's/PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
sudo sed -i 's/ServerSignature On/ServerSignature Off/' /etc/apache2/apache2.conf

علينا إخبار الأباتشي بتفعيل AllowOverride في ملفات .htaccess

sudo sed  -i 's/AllowOverride None/AllowOverride All/' /etc/apache2/sites-available/default

انتهينا الأن من إعداد السيرفر يجب عليك إعادة تشغيله ليتم تفعيل جميع التعديلات اللي قمنا بها
بعض الحيل لتحسين الأداء
لتسريع تنصيب دروبال علينا تفعيل opcode caching مثل APC أو eAccelerator وأنا أفضل APC في الأبونتو بالأمر التالي وعندما يتم سؤالك اختر الافتراضي في جميع الأسئلة

sudo pecl install apc
sudo sed -i '/; extension_dir directive above/ a\
extension=apc.so'
/etc/php5/apache2/php.ini

يوجد حيلتين أيضا لتحسين الأداء وهي تفعيل موديل mod_deflate و mod_expires
mod_deflate سيقوم بضغط ملفات CSS لتوفير القليل من الباندويث
mod_expires سيقوم بعمل كاش للملفات الثابتة التي تعمل
علينا إعداد mod_deflate ليقوم بضغط ملفات css وملفات الجافا سكربت لأن دروبال لا يقوم بها بشكل افتراضي

sudo a2enmod expires
sudo a2enmod deflate
sudo sed -i 's/DEFLATE text\/html text\/plain text\/xml/DEFLATE text\/html text\/plain text\/xml text\/css text\/javascript application\/x-javascript/' /etc/apache2/mods-available/deflate.conf

يمكننا أيضا بتسريع الاستعلام في قاعدة البيانات mysql بعمل كاش لها

sudo sed  -i 's/query_cache_limit       = 1M/query_cache_limit       = 1M\
query_cache_type        = 1/'
/etc/mysql/my.cnf

نعيد تشغيل الخدمات لتطبيق التغييرات اللي قمنا بها

sudo /etc/init.d/apache2 force-reload
sudo /etc/init.d/ssh force-reload
sudo /etc/init.d/mysql force-reload

إضافة بعض المستخدمين
سنضيف مستخدم ftp ونحدد المسار المخصص لعمله ضمن مجلد /var/www

sudo adduser ftp
sudo chgrp -R www-data /var/www
sudo chown -R ftp /var/www
sudo chmod -R 2750 /var/www
# NOTE : "sudo chmod -R 2770" for files directories
sudo usermod -a -G www-data ftp

رفع الملفات
لست بحاجه إلى استخدام سيرفر ftp فقط استخدم SSH/SFTP ﻷنها تقوم بماتريد وأكثر أمانا
وأخيرا يجب أن تتذكر بأنه عليك حماية سيرفرك بكافة الوسائل والطرق الممكنة لتأدية هذا الغرض منها استخدام الجدار الناري وايقاف الخدمات الغير ضرورية ومتابعة التحديثات والحفاظ على كلمة المرور قوية و…..
وفي النهاية هذا السكربت ليقوم بكل ماذكرته في هذا الموضوع :cool:
تحميل السكربت
المصدر تم التعديل عن المصدر في الموضوع والسكربت
وتحياتي

زاهر القدور

زاهر القدور مدون تقني ومؤسس لينكساوي أهتم بالمصادر الحرة والمفتوحة عموماً واللينكس والووردبريس خصوصاً يمكنك متابعتي من خلال Twitter و Facebook

مجموع التعليقات 3

  1. عبدالله قال:

    تقريبا أنتهينا ولكن علينا جعل السيرفر أكثر أمانا بإيقاف دخول المستخدم root وﻹخفاء معلومات الأباتشي

    سوال اذا اريد ان ادخل بالروت انا مرة ثانية كيف وانا اغلقتها

  2. اهلا عبد الله
    حتى تعيد تفعيل دخول الروت لازم تدخل بمستخدم أخر معه صلاحية sudo وتعدل ملف
    /etc/ssh/sshd_config
    وتجعل هذا الخيار يبدو كالتالي
    PermitRootLogin yes
    الحماية والأمان للسيرفر طريق طويل ومعقد ويلزمه الكثير
    إن شاء الله نتكلم عنه وقت لاحق

TrackBacks / PingBacks

أضف تعليق وشاركنا رأيك

*