<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>باحث عن المعرفة &#187; ssh</title>
	<atom:link href="http://www.mtafran.com/tag/ssh/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mtafran.com</link>
	<description>{وقل ربي زدني علماً}</description>
	<lastBuildDate>Mon, 06 Jun 2011 04:41:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>استخدام svn عبر ssh</title>
		<link>http://www.mtafran.com/2009/11/svn-over-ssh-tunnel/</link>
		<comments>http://www.mtafran.com/2009/11/svn-over-ssh-tunnel/#comments</comments>
		<pubDate>Tue, 24 Nov 2009 06:35:38 +0000</pubDate>
		<dc:creator>باحث</dc:creator>
				<category><![CDATA[أمن معلومات]]></category>
		<category><![CDATA[إدارة مواقع]]></category>
		<category><![CDATA[برمجة]]></category>
		<category><![CDATA[لينكس]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[svn]]></category>

		<guid isPermaLink="false">http://www.mtafran.com/?p=691</guid>
		<description><![CDATA[svn هو برنامج يستخدم في عمليّات إدارة الكود (أو الملفات بشكل عام) بحيث يمكن للمستخدم إنشاء نسخة من ملف والعمل عليه وتحديثه ومن ثمّ حفظ الملف. والقيام بنفس العملية أكثر من مرّة في كل مرّة تحفظ التغيرات التي اجراها المستخدم &#8230; <a href="http://www.mtafran.com/2009/11/svn-over-ssh-tunnel/">أكمل قراءة التدوينة <span class="meta-nav">&#8592;</span></a>]]></description>
			<content:encoded><![CDATA[<p>svn هو برنامج يستخدم في عمليّات إدارة الكود (أو الملفات بشكل عام) بحيث يمكن للمستخدم إنشاء نسخة من ملف والعمل عليه وتحديثه ومن ثمّ حفظ الملف. والقيام بنفس العملية أكثر من مرّة في كل مرّة تحفظ التغيرات التي اجراها المستخدم بشكل تجميعي مما يسمح للمستخدم في حال رغبته في العودة إلى إصدارة قديمة من الملف (على سبيل المثال بعد إضافة للملف أدّت إلى خلل في عمله.)<br />
<span id="more-691"></span><br />
المستخدم يقوم في العادة بالاتصال بخادم svn عبر الشبكة بشكل نصي بمعنى لو كان هناك متلصص على الشبكة بإمكانه الإطلاع على محتوى الملفات. حلّ ذلك سهل باستخدام svn عبر ssh. للقيام بذلك نحتاج إلى القيام بإدخال تعديلات على ملف التحكّم ssh الخاص بالمستخدم. هذا الملف (config) في العادة موجود في مجلد البيت الخاص بالمستخدم تحت المجلد المخفي .ssh. إذا لم يكن موجوداً قم بإنشائه.</p>
<p><code>touch /home/username/.ssh/config</code></p>
<p>ثم ضع فيه الآتي<br />
<code>Host IPADDR<br />
Port #<br />
User USERNAME</code></p>
<p>أبدل IPADDR بالعنوان الحقيقي لخادم svn<br />
أبدل # برقم المنفذ الذي تستمع عليه خدمة ssh على الخادم البعيد<br />
أبدل USERNAME باسم المستخدم على خادم ssh </p>
<p>مثال<br />
<code>Host 1.1.1.1<br />
Port 8022<br />
User mtafran</code></p>
<p>الآن من الحاسوب المحلّي نفّذ الأمر التالي:<br />
<code>svn co svn+ssh://1.1.1.1/my/project local</code></p>
<p>ستضطر إلى إدخال كلمة المرور أكثر من مرّة ولكن بعدها سوف يتم إنشاء المجلد ووضع الملفات التي تمّ سحبها من المخزن فيه.</p>
<p>قد يكون هناك طرق أخرى أفضل لعمل ذلك ولكنّي وجدّت هذه الطريقة سهلة والأهم من ذلك أنهّا تعمل. إن كان لديكم طرق أخرى للقيام بنفس المهمّة فحبّذا لو تشاركونا فيها.</p>
<div class="tweetthis" style="text-align:left;"><p> <a class="tt" href="http://delicious.com/post?url=http://www.mtafran.com/2009/11/svn-over-ssh-tunnel/&amp;title=%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85+svn+%D8%B9%D8%A8%D8%B1+ssh" title="Post to Delicious"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/delicious/tt-delicious-micro4.png" alt="Post to Delicious" /></a> <a class="tt" href="http://digg.com/submit?url=http://www.mtafran.com/2009/11/svn-over-ssh-tunnel/&amp;title=%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85+svn+%D8%B9%D8%A8%D8%B1+ssh" title="Post to Digg"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/digg/tt-digg-micro4.png" alt="Post to Digg" /></a> <a class="tt" href="http://reddit.com/submit?url=http://www.mtafran.com/2009/11/svn-over-ssh-tunnel/&amp;title=%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85+svn+%D8%B9%D8%A8%D8%B1+ssh" title="Post to Reddit"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/reddit/tt-reddit-micro4.png" alt="Post to Reddit" /></a> <a class="tt" href="http://stumbleupon.com/submit?url=http://www.mtafran.com/2009/11/svn-over-ssh-tunnel/&amp;title=%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85+svn+%D8%B9%D8%A8%D8%B1+ssh" title="Post to StumbleUpon"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/su/tt-su-micro4.png" alt="Post to StumbleUpon" /></a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.mtafran.com/2009/11/svn-over-ssh-tunnel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>عمل نفق باستخدام SSH</title>
		<link>http://www.mtafran.com/2009/11/port-tunneling-using-ssh/</link>
		<comments>http://www.mtafran.com/2009/11/port-tunneling-using-ssh/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 04:26:34 +0000</pubDate>
		<dc:creator>باحث</dc:creator>
				<category><![CDATA[أمن معلومات]]></category>
		<category><![CDATA[حيل مفيدة]]></category>
		<category><![CDATA[port tunneling]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[لينكس]]></category>

		<guid isPermaLink="false">http://www.mtafran.com/?p=680</guid>
		<description><![CDATA[استخدامات SSH تتخطّى مجرد الاتصال بالخادم البعيد بطريقة آمنة. في هذه التّدوينة سأتطرق إلى أحد هذه الاستخدامات وهو عمل نفق tunneling باستخدام SSH. فائدة هذه الطريقة تظهر عندما ترغب مثلاً بعمل اتصال من مقهى أو ما شابه ولا تريد لأحد &#8230; <a href="http://www.mtafran.com/2009/11/port-tunneling-using-ssh/">أكمل قراءة التدوينة <span class="meta-nav">&#8592;</span></a>]]></description>
			<content:encoded><![CDATA[<p>استخدامات SSH تتخطّى مجرد الاتصال بالخادم البعيد بطريقة آمنة. في هذه التّدوينة سأتطرق إلى أحد هذه الاستخدامات وهو عمل نفق tunneling باستخدام SSH. فائدة هذه الطريقة تظهر عندما ترغب مثلاً بعمل اتصال من مقهى أو ما شابه ولا تريد لأحد أن يتلصص على اتصالك. فتقوم بعمل اتصال بخادم عليه خدمة SSH (هذا الخادم قد يكون حاسوبك في المنزل أو خادم لدى شركة استضافة) وبعد ذلك تقوم بجعل هذا الخادم كوسيط proxy تقوم من خلاله بالاتصال بمواقع الانترنت الأخرى.<br />
<span id="more-680"></span><br />
الطريقة سهلة للغاية والتالي هو الخطوات التي تحتاجها للقيام بذلك:</p>
<p><code>ssh -D PORTNUM user@server</code></p>
<p>لنفرض أننا نريد أن نعيّن المنفذ المحلّي على حاسوبنا ليكون 8080</p>
<p>ولنفرض أن المستخدم على الخادم البعيد هو المستخدم الجذر وأن عنوان الخادم هو 1.2.3.4 فسيكون الأمر كالتّالي:</p>
<p><code>ssh -D 8080 root@1.2.3.4</code></p>
<p>الآن على متصفحك المفضّل اختر الوسيط proxy وضع العنوان المحلي 1.2.3.4 والمنفذ المحلّي 8080 واستمتع باتصال آمن <img src='http://www.mtafran.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>استخدم هذه الطريقة في ما يرضي الله عزّوجل وأنا بريء من أي استخدام خاطئ أو غير مسؤول.</p>
<div class="tweetthis" style="text-align:left;"><p> <a class="tt" href="http://delicious.com/post?url=http://www.mtafran.com/2009/11/port-tunneling-using-ssh/&amp;title=%D8%B9%D9%85%D9%84+%D9%86%D9%81%D9%82+%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85+SSH" title="Post to Delicious"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/delicious/tt-delicious-micro4.png" alt="Post to Delicious" /></a> <a class="tt" href="http://digg.com/submit?url=http://www.mtafran.com/2009/11/port-tunneling-using-ssh/&amp;title=%D8%B9%D9%85%D9%84+%D9%86%D9%81%D9%82+%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85+SSH" title="Post to Digg"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/digg/tt-digg-micro4.png" alt="Post to Digg" /></a> <a class="tt" href="http://reddit.com/submit?url=http://www.mtafran.com/2009/11/port-tunneling-using-ssh/&amp;title=%D8%B9%D9%85%D9%84+%D9%86%D9%81%D9%82+%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85+SSH" title="Post to Reddit"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/reddit/tt-reddit-micro4.png" alt="Post to Reddit" /></a> <a class="tt" href="http://stumbleupon.com/submit?url=http://www.mtafran.com/2009/11/port-tunneling-using-ssh/&amp;title=%D8%B9%D9%85%D9%84+%D9%86%D9%81%D9%82+%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85+SSH" title="Post to StumbleUpon"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/su/tt-su-micro4.png" alt="Post to StumbleUpon" /></a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.mtafran.com/2009/11/port-tunneling-using-ssh/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>خطوات عمليّة للتّصدّي لهجمات كسر كلمات مرور SSH</title>
		<link>http://www.mtafran.com/2009/04/practical-steps-to-counter-ssh-brute-force-attacks/</link>
		<comments>http://www.mtafran.com/2009/04/practical-steps-to-counter-ssh-brute-force-attacks/#comments</comments>
		<pubDate>Sun, 26 Apr 2009 18:43:20 +0000</pubDate>
		<dc:creator>باحث</dc:creator>
				<category><![CDATA[أمن معلومات]]></category>
		<category><![CDATA[إدارة مواقع]]></category>
		<category><![CDATA[brute-force]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[كسر]]></category>
		<category><![CDATA[كلمات مرور]]></category>

		<guid isPermaLink="false">http://www.mtafran.com/?p=550</guid>
		<description><![CDATA[هجمات ssh عادت من جديد وبقوة اذا كانت كلمة المرور الخاص بحساب الSSH خاصّتك 8 أحرف فقط فحسابك إمّا قد تم اختراقه من خلال معرفة الكلمة أو هو في طريقه إلى ذلك. وذلك بغض للنظر عن النظام أو قطعة العتاد &#8230; <a href="http://www.mtafran.com/2009/04/practical-steps-to-counter-ssh-brute-force-attacks/">أكمل قراءة التدوينة <span class="meta-nav">&#8592;</span></a>]]></description>
			<content:encoded><![CDATA[<p> هجمات ssh  عادت من جديد وبقوة اذا كانت كلمة المرور الخاص بحساب الSSH  خاصّتك 8 أحرف فقط فحسابك إمّا قد تم اختراقه من خلال معرفة الكلمة أو هو في طريقه إلى ذلك. وذلك بغض للنظر عن النظام أو قطعة العتاد الذي تستخدمه. </p>
<p>الإجراءات التي يمكنك اتخاذها من أجل الحماية هي:<br />
<span id="more-550"></span><br />
1- حددّ العناوين التي يمكنها الاتصال بخدمة ssh فمن لايستطيع الوصول إلى ssh لن يستطيع كسر كلمة مروره</p>
<p>2- قم دائماً وأبداً بعمليات مسح للتأكد من سلامة السياسات عموماً والخاص ب ssh على وجه الخصوص</p>
<p>3- اعد تهيئة ssh لديك لاستخدام مفاتيح محمية بكلمة مرور ولا تسمح لكلمات مرور فقط<br />
أنشأ مفتاح جديد<br />
<code>$ ssh-keygen -t rsa</code><br />
سيطلب منك ادخال pssphrase قم بإدخاله<br />
هذا سينشأ ملفان داخل مجلدك ~./ssh<br />
id_rsa هو الخاص<br />
id_rsa هو العام</p>
<p>انسخ الفتاح العام على الخادم الذي تريد الاتصال به باستخدام المفتاح وقم بإضافته للملف المفاتيح المصرّح لها<br />
<code>$ cat id_rsa.pub >> ~/.ssh/authorized_keys</code></p>
<p>الآن غيّر التصاريح كالآتي:<br />
<code>$ chmod 700 ~/.ssh<br />
$ chmod 600 ~/.ssh/authorized_keys</code></p>
<p>4- استخدم اسماء مستخدمين صعبة وغير معروفة فاسماء المستخدمين العادية او التي يمكن توقعها تستخدم بكثرة. ولكن اسم كهذا m7acc0nt%$ d يصعب معرفته وبالتالي نصعب عملية كسر كلمة مروره.</p>
<p>5- غير موقع المنفذ الخاص بSSH لديك من 22 إلى شيء آخر هذه قد لا تفيد كثيراً في حالة الهجوم الموجه ولكن في حالة كون الهجوم تقوم به botnet فهذا هو المنفذ المستخدم في الهجوم في الغالب<br />
<code># Run ssh on a non-standard port:<br />
Port 7788  #Change me</code></p>
<p>الآن عند اتصالك بالخادم ستقوم بذلك كالآتي:<br />
<code>ssh -p7788 mtafran.com</code></p>
<p>6- استخدم برنامج ولكن قم بتخصيصه بشكل مشدّد فهو سوف يساعد بشكل كبير واقول هذا من تجربة فعلية ولكن ضع في الحسبان ان الهجمات القادمة من botnet اذا كانت هذه ال bitnet كبيرة مثلاً 10000 او 100000 او أكثر فستكون فعاليته اقل. مثلاً برنامج <a href="http://www.mtafran.com/2009/04/counter-ssh-brute-force-with-fail2ban/">fail2ban</a></p>
<p>7- راقب السجلات هذا سيعطيك نظرة على الهجمات القادمة وكذلك يعتبر وسيلة بين فترة والأخرى للتأكد من برامج مثل fail2ban من انها تعمل </p>
<p>مرجع</p>
<p>http://isc.sans.org/diary.html?storyid=6214</p>
<div class="tweetthis" style="text-align:left;"><p> <a class="tt" href="http://delicious.com/post?url=http://www.mtafran.com/2009/04/practical-steps-to-counter-ssh-brute-force-attacks/&amp;title=%D8%AE%D8%B7%D9%88%D8%A7%D8%AA+%D8%B9%D9%85%D9%84%D9%8A%D9%91%D8%A9+%D9%84%D9%84%D8%AA%D9%91%D8%B5%D8%AF%D9%91%D9%8A+%D9%84%D9%87%D8%AC%D9%85%D8%A7%D8%AA+%D9%83%D8%B3%D8%B1+%D9%83%D9%84%D9%85%D8%A7%D8%AA+%D9%85%D8%B1%D9%88%D8%B1+SSH" title="Post to Delicious"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/delicious/tt-delicious-micro4.png" alt="Post to Delicious" /></a> <a class="tt" href="http://digg.com/submit?url=http://www.mtafran.com/2009/04/practical-steps-to-counter-ssh-brute-force-attacks/&amp;title=%D8%AE%D8%B7%D9%88%D8%A7%D8%AA+%D8%B9%D9%85%D9%84%D9%8A%D9%91%D8%A9+%D9%84%D9%84%D8%AA%D9%91%D8%B5%D8%AF%D9%91%D9%8A+%D9%84%D9%87%D8%AC%D9%85%D8%A7%D8%AA+%D9%83%D8%B3%D8%B1+%D9%83%D9%84%D9%85%D8%A7%D8%AA+%D9%85%D8%B1%D9%88%D8%B1+SSH" title="Post to Digg"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/digg/tt-digg-micro4.png" alt="Post to Digg" /></a> <a class="tt" href="http://reddit.com/submit?url=http://www.mtafran.com/2009/04/practical-steps-to-counter-ssh-brute-force-attacks/&amp;title=%D8%AE%D8%B7%D9%88%D8%A7%D8%AA+%D8%B9%D9%85%D9%84%D9%8A%D9%91%D8%A9+%D9%84%D9%84%D8%AA%D9%91%D8%B5%D8%AF%D9%91%D9%8A+%D9%84%D9%87%D8%AC%D9%85%D8%A7%D8%AA+%D9%83%D8%B3%D8%B1+%D9%83%D9%84%D9%85%D8%A7%D8%AA+%D9%85%D8%B1%D9%88%D8%B1+SSH" title="Post to Reddit"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/reddit/tt-reddit-micro4.png" alt="Post to Reddit" /></a> <a class="tt" href="http://stumbleupon.com/submit?url=http://www.mtafran.com/2009/04/practical-steps-to-counter-ssh-brute-force-attacks/&amp;title=%D8%AE%D8%B7%D9%88%D8%A7%D8%AA+%D8%B9%D9%85%D9%84%D9%8A%D9%91%D8%A9+%D9%84%D9%84%D8%AA%D9%91%D8%B5%D8%AF%D9%91%D9%8A+%D9%84%D9%87%D8%AC%D9%85%D8%A7%D8%AA+%D9%83%D8%B3%D8%B1+%D9%83%D9%84%D9%85%D8%A7%D8%AA+%D9%85%D8%B1%D9%88%D8%B1+SSH" title="Post to StumbleUpon"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/su/tt-su-micro4.png" alt="Post to StumbleUpon" /></a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.mtafran.com/2009/04/practical-steps-to-counter-ssh-brute-force-attacks/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>مكافحة هجمات ssh brute force باستخدام fail2ban</title>
		<link>http://www.mtafran.com/2009/04/counter-ssh-brute-force-with-fail2ban/</link>
		<comments>http://www.mtafran.com/2009/04/counter-ssh-brute-force-with-fail2ban/#comments</comments>
		<pubDate>Sat, 25 Apr 2009 03:29:54 +0000</pubDate>
		<dc:creator>باحث</dc:creator>
				<category><![CDATA[أمن معلومات]]></category>
		<category><![CDATA[إدارة مواقع]]></category>
		<category><![CDATA[لينكس]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[fail2ban]]></category>
		<category><![CDATA[linux هجمات]]></category>
		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://www.mtafran.com/?p=539</guid>
		<description><![CDATA[لا شك أنّ هجمات تشكّل ازعاج لمدير الشبكة أو الموقع. هناك عدّة برامج تساعد في عملية التّصدي لهذه الهجمات ولكن من أفضل هذه البرامج وأسهلها في التعامل هو fail2ban. لنشمّر عن سواعدنا نبدأ بعمليّة تنصيب وتجهيز البرنامج: تنصيب برنامج fail2ban &#8230; <a href="http://www.mtafran.com/2009/04/counter-ssh-brute-force-with-fail2ban/">أكمل قراءة التدوينة <span class="meta-nav">&#8592;</span></a>]]></description>
			<content:encoded><![CDATA[<p>لا شك أنّ هجمات تشكّل ازعاج لمدير الشبكة أو الموقع. هناك عدّة برامج تساعد في عملية التّصدي لهذه الهجمات ولكن من أفضل هذه البرامج وأسهلها في التعامل هو fail2ban.</p>
<p>لنشمّر عن سواعدنا نبدأ بعمليّة تنصيب وتجهيز البرنامج:</p>
<p>تنصيب برنامج fail2ban</p>
<p><code>apt-get install fail2ban</code></p>
<p>هذا سيقوم بتنصيب الحزمة<br />
<span id="more-539"></span><br />
موقع ملفات التعريف الخاصّة بالحزمة موجودة في<br />
<code>/etc/fail2ban</code></p>
<p>عند عمل عرض للملفات نلاحظ وجود الملفات التالية<br />
<code>$ls<br />
action.d  fail2ban.conf  filter.d  jail.conf  jail.local</code></p>
<p>الملف الذي سوف نتعامل معه من أجل عمل تخصيص في عمل البرنامج هو</p>
<p>jail.local</p>
<p>هذه مقاطع من الملف</p>
<p><code>[DEFAULT]</code></p>
<p>هنا القسم الافتراضي<br />
<code># "ignoreip" can be an IP address, a CIDR mask or a DNS host</code><br />
الخاصّية التالية هي من أجل العناوين التي سيتم استثناؤها من قبل البرنامج<br />
<code>ignoreip = 127.0.0.1</code><br />
هنا مدّة الحظر على العناوين التي قامت بالمخالفة<br />
<code>bantime  = 86400</code><br />
هنا عدد مرّات السّماح لعنوان بالفشل في ادخال كلمة المرور<br />
<code>maxretry = 3</code></p>
<p>هنا القسم الخاص بال SSH<br />
<code>[ssh]</code><br />
لتفعيل القسم<br />
<code>enabled = true</code><br />
المنفذ<br />
<code>port    = ssh<br />
filter  = sshd</code><br />
مكان السّجلات التي سيقوم البرنامج بمراقبتها<br />
<code>logpath  = /var/log/auth.log</code><br />
عدد مرات تكرار المحاولة<br />
<code>maxretry = 2</code></p>
<p>هنا القسم الخاص بالاباتشي<br />
<code>#[apache]</p>
<p>#enabled = true<br />
#port    = http<br />
#filter  = apache-auth<br />
#logpath = /var/log/apache*/*error.log<br />
#maxretry = 5</code></p>
<p>نلاحظ من خلال المقاطع أعلاه أن التعامل مع البرنامج سهل للغاية كذلك نلاحظ أنّ البرنامج يمكن استخدامه ليس فقط من أجل سسش بل يمكن استخدامه أيضاً  من اجل خدمات أخرى مثل الاباتشي أو برامج نقل الملفات.<br />
<strong><br />
كيف يعمل البرنامج؟</strong><br />
من خلال مراقبة السّجلّات يقوم بالبرنامج بقراءة المقاطع المتعلقة بفشل عملية تسجيل دخول مثلاً إذا بلغ عدد مرات الفشل في فترة زمنية قصيرة العدد المسموح به سيتم إنشاء قاعدة ابي تابلز تحظر اتصال ذلك العنوان بالخادم لاي خدمة للمدّة المعيّنة في الملف.</p>
<p>لنفرض السيناريو التالي:<br />
لديك 3 عناوين 2 في العمل والآخر في المنزل وتريد السماح لهذه العناوين بالاستمرار بالمحاولة حتى لو تم تجاوز عدد المرات المسموح بها كل المطلوب هو أن تقوم بإضافة هذه العناوين للملف<br />
jail.local</p>
<p>كالآتي<br />
<code>ignoreip = 127.0.0.1 1.1.1.1 2.2.2.2 3.3.3.3</code></p>
<p>وهكذا نكون جاهزين للبدء في استخدام البرنامج</p>
<p> الآن لبدء البرنامج &#8211; الخدمة نقوم بتنفيذ الأمر التالي:<br />
<code>/etc/init.d/fail2ban start</code></p>
<p class="error"><strong>ملاحظة:</strong> لا تقم أبداً بتعديل الملف jail.conf وسبب ذلك كما هو مذكور في بداية الملف حتى تتجنّب عملية الدمج خلال الترقية.</p>
<div class="tweetthis" style="text-align:left;"><p> <a class="tt" href="http://delicious.com/post?url=http://www.mtafran.com/2009/04/counter-ssh-brute-force-with-fail2ban/&amp;title=%D9%85%D9%83%D8%A7%D9%81%D8%AD%D8%A9+%D9%87%D8%AC%D9%85%D8%A7%D8%AA+ssh+brute+force+%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85+fail2ban" title="Post to Delicious"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/delicious/tt-delicious-micro4.png" alt="Post to Delicious" /></a> <a class="tt" href="http://digg.com/submit?url=http://www.mtafran.com/2009/04/counter-ssh-brute-force-with-fail2ban/&amp;title=%D9%85%D9%83%D8%A7%D9%81%D8%AD%D8%A9+%D9%87%D8%AC%D9%85%D8%A7%D8%AA+ssh+brute+force+%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85+fail2ban" title="Post to Digg"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/digg/tt-digg-micro4.png" alt="Post to Digg" /></a> <a class="tt" href="http://reddit.com/submit?url=http://www.mtafran.com/2009/04/counter-ssh-brute-force-with-fail2ban/&amp;title=%D9%85%D9%83%D8%A7%D9%81%D8%AD%D8%A9+%D9%87%D8%AC%D9%85%D8%A7%D8%AA+ssh+brute+force+%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85+fail2ban" title="Post to Reddit"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/reddit/tt-reddit-micro4.png" alt="Post to Reddit" /></a> <a class="tt" href="http://stumbleupon.com/submit?url=http://www.mtafran.com/2009/04/counter-ssh-brute-force-with-fail2ban/&amp;title=%D9%85%D9%83%D8%A7%D9%81%D8%AD%D8%A9+%D9%87%D8%AC%D9%85%D8%A7%D8%AA+ssh+brute+force+%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85+fail2ban" title="Post to StumbleUpon"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/su/tt-su-micro4.png" alt="Post to StumbleUpon" /></a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.mtafran.com/2009/04/counter-ssh-brute-force-with-fail2ban/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>عمل اتصال SSH بواسطة PHP</title>
		<link>http://www.mtafran.com/2008/04/connect-using-ssh-in-php/</link>
		<comments>http://www.mtafran.com/2008/04/connect-using-ssh-in-php/#comments</comments>
		<pubDate>Sat, 19 Apr 2008 15:37:02 +0000</pubDate>
		<dc:creator>باحث</dc:creator>
				<category><![CDATA[برمجة]]></category>
		<category><![CDATA[connection]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[اتصال]]></category>

		<guid isPermaLink="false">http://www.mtafran.com/?p=13</guid>
		<description><![CDATA[احتجت في عملي الى عمل اتصال بواسطة PHP وتزويد الاتصال بكلمة المرور ونظراً لأن ذلك متعذر من خلال اقتران exec_shell في PHP فبدأت بالبحث عن طريقة تجعل ما أريد ممكناً. بحمد الله وفضله عثرت على موقع يشرح ما أريد بالضبط. &#8230; <a href="http://www.mtafran.com/2008/04/connect-using-ssh-in-php/">أكمل قراءة التدوينة <span class="meta-nav">&#8592;</span></a>]]></description>
			<content:encoded><![CDATA[<p>احتجت في عملي الى عمل اتصال بواسطة PHP وتزويد الاتصال بكلمة المرور ونظراً لأن ذلك متعذر من خلال اقتران exec_shell في PHP فبدأت بالبحث عن طريقة تجعل ما أريد ممكناً.</p>
<p>بحمد الله وفضله عثرت على موقع يشرح ما أريد بالضبط. وإليكم مختصر الطريقة.</p>
<p>هذه الطريقة جرّبت على نظام لينكس Ubuntu مع PHP 5</p>
<p>ما هو مطلوب من أجل عمل ما نريد؟</p>
<p>$sudo aptitude update<br />
$sudo aptitude install php5-dev php5-cli php-pear buid-essential \<br />
$openssl-dev zlib1g-dev</p>
<p>الاوامر اعلاه ستقوم بتنصيب الحزم التي نحتاج إليها إذا كانت هذه الحزم موجودة على نظامك فلا داعي للأمر الثاني.</p>
<p>ثم قم بتنزيل مكتبة libssh2 من موقع sourceforge</p>
<p><span id="more-13"></span></p>
<p>cd /usr/src<br />
wget http://surfnet.dl.sourceforge.net/sourceforge/libssh2/libssh2-0.14.tar.gz<br />
tar -zxvf libssh2-0.14.tar.gz<br />
cd libssh2-0.14/<br />
./configure<br />
make all install</p>
<p>لاحظ أن الحزم التي نحتاج إليها هي 2-0.14 لقد قمت بتجربة آخر اصدارة وهي الان 0.18 ولكن لم تعمل.</p>
<p>اللآن نحتاج إلى ربط libssh2 مع PHP لعمل ذلك ننفذ الامر التالي</p>
<p>pecl install -f ssh2<br />
بعد ذلك نحتاج الى اضافة الامتداد الى ملفي php.ini في</p>
<p>/etc/php5/cli/php.ini, و /etc/php5/apache2/php.ini<br />
موقع هذه الملفات قد يختلف اذا كنت تستخدم نظام آخر غير Ubuntu</p>
<p>اضف هذا السطر الى الملفين اعلاه</p>
<p>extension=ssh2.so<br />
موقع السطر في الملفين السطر 515 او حوله</p>
<p>الان اصبحنا جاهزين لاستخدام هذه الخاصيّة</p>
<p>هناك طريقتان لاستخدام هذه الخاصية:<br />
1- خاصية التنفيذ وهي الخاصية المفضلة<br />
2- خاصية الشل</p>
<p>1- خاصية التنفيذ: تقوم بتنفيذ أمر وارجاع النتيجة الى السكريبت</p>
<p> </p>
<p>&lt;pre lang=&#8221;php&#8221; &#8220;&gt;<br />
if (!function_exists(&#8220;ssh2_connect&#8221;)) die(&#8220;function ssh2_connect doesn&#8217;t exist&#8221;);<br />
// log in at server1.example.com on port 22<br />
if(!($con = ssh2_connect(&#8220;server1.example.com&#8221;, 22))){<br />
echo &#8220;fail: unable to establish connection\n&#8221;;<br />
} else {<br />
// try to authenticate with username root, password secretpassword<br />
if(!ssh2_auth_password($con, &#8220;root&#8221;, &#8220;secretpassword&#8221;)) {<br />
echo &#8220;fail: unable to authenticate\n&#8221;;<br />
} else {<br />
// allright, we&#8217;re in!<br />
echo &#8220;okay: logged in&#8230;\n&#8221;;<br />
// execute a command<br />
if(!($stream = ssh2_exec($con, &#8220;ls -al&#8221; )) ){<br />
echo &#8220;fail: unable to execute command\n&#8221;;<br />
} else{<br />
// collect returning data from command<br />
stream_set_blocking( $stream, true );<br />
$data = &#8220;&#8221;;<br />
while( $buf = fread($stream,4096) ){<br />
$data .= $buf;<br />
}<br />
fclose($stream);<br />
}<br />
}<br />
}<br />
&lt;/pre&gt;</p>
<p>الأمر أعلاه ان يظهر النتيجة ولكن سيقوم بتخزينها في متغير data اذا ارد اظهار النتيجة فقط اضف السطر التالي قبل نهاية السكريبت</p>
<p>echo $data;<br />
2- خاصية الشل خاصية متقدمة حيث انها تقوم بفتح شل فعلي النظام الذي نعمل اتصال معه</p>
<p>if (!function_exists(&#8220;ssh2_connect&#8221;)) die(&#8220;function ssh2_connect doesn&#8217;t exist&#8221;);<br />
// log in at server1.example.com on port 22<br />
if(!($con = ssh2_connect(&#8220;server1.example.com&#8221;, 22))){<br />
echo &#8220;fail: unable to establish connection\n&#8221;;<br />
} else {<br />
// try to authenticate with username root, password secretpassword<br />
if(!ssh2_auth_password($con, &#8220;root&#8221;, &#8220;secretpassword&#8221;)) {<br />
echo &#8220;fail: unable to authenticate\n&#8221;;<br />
} else {<br />
// allright, we&#8217;re in!<br />
echo &#8220;okay: logged in&#8230;\n&#8221;;</p>
<p>// execute a command<br />
if(!($stream = ssh2_exec($con, &#8220;ls -al&#8221; )) ){<br />
echo &#8220;fail: unable to execute command\n&#8221;;<br />
} else{<br />
// collect returning data from command<br />
stream_set_blocking( $stream, true );<br />
$data = &#8220;&#8221;;<br />
while( $buf = fread($stream,4096) ){<br />
$data .= $buf;<br />
}<br />
fclose($stream);<br />
}<br />
}<br />
}</p>
<p>أسأل الله أن يكون في ذلك فائدة لكم. إن كانت لديكم اقترحات او طرق أفضل فلا تبخلوا بها</p>
<div class="tweetthis" style="text-align:left;"><p> <a class="tt" href="http://delicious.com/post?url=http://www.mtafran.com/2008/04/connect-using-ssh-in-php/&amp;title=%D8%B9%D9%85%D9%84+%D8%A7%D8%AA%D8%B5%D8%A7%D9%84+SSH+%D8%A8%D9%88%D8%A7%D8%B3%D8%B7%D8%A9+PHP" title="Post to Delicious"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/delicious/tt-delicious-micro4.png" alt="Post to Delicious" /></a> <a class="tt" href="http://digg.com/submit?url=http://www.mtafran.com/2008/04/connect-using-ssh-in-php/&amp;title=%D8%B9%D9%85%D9%84+%D8%A7%D8%AA%D8%B5%D8%A7%D9%84+SSH+%D8%A8%D9%88%D8%A7%D8%B3%D8%B7%D8%A9+PHP" title="Post to Digg"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/digg/tt-digg-micro4.png" alt="Post to Digg" /></a> <a class="tt" href="http://reddit.com/submit?url=http://www.mtafran.com/2008/04/connect-using-ssh-in-php/&amp;title=%D8%B9%D9%85%D9%84+%D8%A7%D8%AA%D8%B5%D8%A7%D9%84+SSH+%D8%A8%D9%88%D8%A7%D8%B3%D8%B7%D8%A9+PHP" title="Post to Reddit"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/reddit/tt-reddit-micro4.png" alt="Post to Reddit" /></a> <a class="tt" href="http://stumbleupon.com/submit?url=http://www.mtafran.com/2008/04/connect-using-ssh-in-php/&amp;title=%D8%B9%D9%85%D9%84+%D8%A7%D8%AA%D8%B5%D8%A7%D9%84+SSH+%D8%A8%D9%88%D8%A7%D8%B3%D8%B7%D8%A9+PHP" title="Post to StumbleUpon"><img class="nothumb" src="http://www.mtafran.com/wp-content/plugins/tweet-this/icons/en/su/tt-su-micro4.png" alt="Post to StumbleUpon" /></a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.mtafran.com/2008/04/connect-using-ssh-in-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

