{ jS@lam }

مقالات، دروس، مقتطفات في البرمجة و تطوير المواقع و نظام لينكس

استخدام بروتوكول نقل الملفات الآمن SFTP

كتبها سلام الجهني ضمن Server Administration في

إن نقل الملفات بين أجهزة بعيدة عبر بوتوكول نقل الملفات FTP طريقة شائعة ولكنها غير آمنة و لا يحبذ استخدامها، بل من الأفضل الاعتماد على بروتوكول نقل الملفات الآمن SFTP الذي يعمل بطريقة مشابهة لكن آمنة لكونه يأتي ضمن SSH.
هناك عدة برامج بواجهات رسومية تستخدم SFTP لنقل الملفات لكن المحتوى الآتي في هذه المقالة أتحدث فيه عن استخدام SFTP من ضمن سطر الأوامر أو Terminal ﻷن مدير السيرفر قد يحتاج إلى الوصول إلى السيرفر من أماكن قد لا تتوفر فيها ادوات رسومية سهلة.
... اقرأ النص الكامل

تعليقات (1)

استخدام Sqlmap لاختبار الثغرات من نوع SQL Injection

كتبها سلام الجهني ضمن Security في

يتطلب من مبرمج مواقع الانترنت التي تستخدم قواعد البيانات أن يكون على دراية كافية باستعلامات الـ sql و خبرة في تنفيذها و منع العميل من إمكانية تنفيذ استعلامات على موقعه ﻷن ذلك قد يؤدي إلى اختراق الموقع بالكامل و يتم ذلك من خلال استغلال ثغرة تتيح عرض اسم قاعدة بيانات الموقع و من ثم عرض الجداول و حتى عرض محتوياتها مما يؤدي لتسريب المعلومات التي غالبا تسمح للمهاجم بالسيطرة على الموقع او على اﻷأقل تخريبه.
... اقرأ النص الكامل

تعليقات (0)

حفظ نسخ احتياطية من مواقعك إلى خدمة S3 من امازون [2]

كتبها سلام الجهني ضمن Server Administration في

استكمالا للمقالة السابقة حول كيفية حفظ نسخ احتياطية من مواقعك على استضافة VPS إلى أمازون نتابع الآن في الجزء الثاني والذي يتضمن كيفية أخذ النسخ الاحتياطية للملفات و لقواعد البيانات ثم مزامنة رفعها إلى أمازون.
بداية سنكتب بريمج يقوم بأخذ نسخ احتياطية للمواقع التي نرغب بحفظ نسخ احتياطية منها على أمازون بالإضافة لقواعد بياناتها و يقوم أيضا بحذف النسخ القديمة ثم يقوم بمزامنة النسخ على استضافة امازون:

#!/bin/sh
NDATE=`date +%d-%m-%Y-%H-%M`
tar -zcvf /home/backups/Backup-${NDATE}.tar.gz /SITES_DIRECTORY
find /home/backups/Backup-* -mtime +1 -exec rm {} \;
s3cmd sync /home/backups/ s3://bucket_name/ --delete-after
mysqldump --all-databases -uusername -ppassword | gzip > /home/backups/DBS-BACKUP-${NDATE}.sql.gz
find /home/backups/DB* -mtime +1 -exec rm {} \;
s3cmd sync /home/backups/ s3://bucket_name/ --delete-removed
... اقرأ النص الكامل

تعليقات (0)

حفظ نسخ احتياطية من مواقعك إلى خدمة S3 من امازون [1]

كتبها سلام الجهني ضمن Server Administration في

تقدم amazon من بين خدماتها المتنوعة خدمة S3 للتخزين السحابي بأسعار قليلة ومنافسة من حيث تقدير السعر حسب حجم الاستخدام كـ $0.023 لكل 1GB بالنسبة ﻷول 50TB شهريا. (يمكن الاطلاع على قائمة الأسعار من هنا).
سأتحدث عن كيفية كتابة برمجية صغيرة لنقل النسخ الاحتياطية من مواقع انترنت على استضافة VPS إلى استضافة أمازون.
بداية بعد إنشاء حساب في أمازون ستحتاج إلى إنشاء مفتاح وصول Access Key و مفتاح أمان Secret Key ، سنستخدمهم لاحقا.
نحتاج بداية إلى تنصيب أداة S3cmd إلى المخدم وذلك كما يلي:
1- نحتاج أداة python-pip و أداة فك ضغط ملفات zip في حال عدم تواجدها نقوم بالتنصيب من خلال الأمر:

sudo yum install unzip python-pip

افترضت ان النظام CentOS فيما إذا كان من إصدارات Debian نستخدم apt-get بدلا من yum.
2- تنزيل أرشيف S3cmd بالأمر:
wget https://github.com/s3tools/s3cmd/archive/master.zip
... اقرأ النص الكامل

تعليقات (0)

تنصيب Node على استضافة مشتركة

كتبها سلام الجهني ضمن Nodejs في

من خلال هذه المقالة القصيرة سنتعلم كيفية تنصيب Nodejs على استضافة مشتركة، قبل البدء يجب أن يكون لديك صلاحيات وصول لأوامر linux من خلال Terminal.
يمكنك الوصول لسطر أوامر لينكس الخاص باستضافتك إما من خلال لوحة التحكم قسم Terminal او من خلال الأمر:

~ $ ssh -p port username@xxx.xxx.xxx.xxx

حيث تستبدل xxx.xxx.xxx.xxx بالـ IP الخاص بالسيرفر الذي تستضيف فيه ملفاتك، يمكنك طلب ذلك من مقدم الخدمة.
كذلك الامر بالنسبة للمنفذ. ... اقرأ النص الكامل

ما هو Composer و لماذا نستخدمه؟

كتبها سلام الجهني ضمن تطوير المواقع في

Composer هو أداة لإدارة الاعتماديات في PHP بحيث يمكنك من تعريف المكتبات التي تحتاجها في مشروعك و سيقوم بمتابعة الأمر من حيث إضافتها لمشروعك و تحديثها و متابعة اعتمادياتها على مكتبات أخرى و تحديثها...
بالإضافة لذلك سيمكنك من تنصيب تطبيقات PHP متوفرة على Packagist الذي هو مخزن الحزم الأساسي لـ Composer مثل Symfony, Laravel , Drupal ...
لتنصيب Composer نستخدم الأوامر التالية:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"

يمكن الاطلاع على الصفحة الخاصة بالتنصيب في الموقع الرسمي هنا حيث ستجد خيارات إضافية، و بالنسبة لمستخدمي نظام ويندوز ، يتم تنزيل ملف التنصيب composer-setup.exe و بتشغيله يتم تنصيب composer و إعداد المسارات اللازمة. ... اقرأ النص الكامل