رفع الصوت في Ubuntu لينكس لأكثر من ١٠٠٪

مرحبا 🙂

في جهازي الخاص بي Thinkpad x230 عندما أقوم برفع الصوت أخر حد هو ١٠٠٪ وهي ليس القيمة القصوى للسماعات لجهازي المحمول, فكنت دائماً اذهب إلى الإعدادات الخاصة بالصوت وأقوم برفع الصوت إلى أكثر من ذلك, العملية باتت مرهقة مع التكرار, وكعادة مدير الأنظمة ” لاتقم بعمل الشيء أكثر من مرة واحدة  !” .

فبحثت في الإنترنت ووجدت الأمر اللي يقوم برفع الصوت, وهو كالتالي:

pacmd set-sink-volume 0 160%



قم بالتعويض عن ١٦٠٪ بالقيمة التي تناسبك.

ومن ثم قمت بوضع أختصار في لوحة المفاتيح لتنفيذ هذا الأمر, قم بالذهاب إلى System Settings → Keboard, select Shortcuts

 الصورة التالية توضح كيف وضع إختصار في Ubuntu




مصادر:
١,٢

linux virtualbox host only adapter

السلام عليكم !
في أوبنتو لينكس واجهت مشكلة في برنامج Virtualbox وبالتحديد عندما أردت إضافة كرت شبكة من نوع “host-only adapter”ظهرت لي رسالة ” invalid settings detected”



Add caption

ميزة خيار الشبكة هذا انه يقوم بإنشاء منفذ جديد على جهاز المضيف ” host” ,ويقوم بإعطائه اي بي “ip” ومن ثم يقوم بشكل أوتوماتيكي بإعطاء الألة الافتراضية “virtual machine” اي بي من نفس الsubnet, وبالتالي يمكّن جهاز المضيف والضيف من التواصل معاً وكأنهم جهازين على نفس الشبكة.
الحل متسلسل بالصور باللقطات التالية:

بحيث كما يظهر بالصورة التالية يمكنك أضافة “منفذ” بالضغط على أول خيار “علامة الزر الزائد”

ومن ثم نعود للvirtual machine  ونختار المنفذ اللذي قمنا باختياره.

المصادر: ١,٢

Give root access for Pure-FTPD server

طلب منّا أحد العملاء الدخول كمستخدم الجذر “root” عن طريق خدمة الـFTP , الخادم  تعمل عليه لوحة تحكم cpanel , طبعاً لمّا تحاول الدخول بالمستخدم الجذر ” root”  راح يظهر معك في ملف السجل ” log file” هذه الرسالة:

pure-ftpd: (?@191.55.98.77) [WARNING] Can’t login as [root]: account disabled

الحل هنا بسيط , بحيث يوجد في ملف الاعدادات الخاص ب pure-ftpd السطر هذا
MinUID 100

ونعرف ان الجذر ” root ” الUID الخاص فيه هو 0 , فعندك خيارين إما انك تقوم بتعليق هذا السطر بوضع # امام السطر , او تقوم بتغييره الى 0 .

طبعاً ﻻينصح أبداً من ناحية أمنية انك تقوم بهذا الإجراء,ماينصح به هو  إنشاء مستخدم له صلاحيات محددة ومن ثم تحديد  المجلدات المسموح له الدخول فيها.

مقدمة عن الحوسبة السحابية في منتدى مشغلي الشبكات في الرياض

في التاسع من ديسمبر 2012  قمت بتقديم عرض بسيط عن ” الحوسبة السحابية” في منتدى مشغلي الشبكات SANOF, منتدى مشغلي الشبكات مهتم بكل مايخص الشبكات والبنية التحتية. طبعاً المميز في هذا المنتدى انه يضم شباب من مختلف الشركات التقنية, والمهتمين بالبنية التحتية عموماً والشبكات على وجه الخصوص.
تقوم هذه المجموعة بالاجتماع بشكل دوري “كل شهر” بحيث يتضمن اﻻجتماع في الساعة الاولى عرض يقوم بتقديمه أحد أعضاء المجموعة أو فرد مستضاف, ومن ثم يتبع هذا العرض مناقشة تقنية بين أفراد المجموعة, بالنسبة لي أرى ان المميز في هذه المجموعة أنها مختصة بالبنية التحتية وهو المجال الذي أنا مهتم فيه . 
بالنسبة للعرض عن “الحوسبة السحابية” قمت بتغطية الأمور التالية:
  • ماهي الحوسبة السحابية.
  • كيف تعمل الحوسبة السحابية.
  • أنواع الحوسبة السحابية.
  • خصائص الحوسبة السحابية.
  • أنواع خدمات الحوسبة السحابية ” تختلف عن رقم 2″.
  • أمثلة من أرض الواقع على أنواع خدمات الحوسبة السحابية.
  • الشبكات في عصر الحوسبة السحابية.
  • فوائد ومخاوف الحوسبة السحابية.
العرض كان دمج لعرضين وجدتهم في الانترنت, وقمت بالتعديل عليهم واضافة بعض الشرائح وخاصة جزء الشبكات في عصر الحوسبة السحابية, غالباً عندما أقدم أعرض يكون يحتوي على صور فقط وأقوم انا بالكلام, لأني لست من الذين يميلون للعروض التقديمية المليئة بالكلام.

المصادر:
1,2,3,4,5,6,

تقرير مؤتمر Saudi Arabian High Performance Computing في جامعة الملك عبدالله | KAUST



في صباح السبت الموافق 1 ديسمبر 2012 انطلقت فعاليات مؤتمر Saudi Arabian High Performance Computing في جامعة الملك عبدالله للعلوم والتقنية KAUST وهو مؤتمر مهتم بكل مايتعلق بالحواسيب الفائقة السرعة, بحيث يأتي المهتمون من جميع المؤسسات والشركات التي تستخدم هذا الحاسوب وعدد من الشركات التقنية التي تكون مصنعة لهذا الحاسوب أو اجزاء منه.

حيث كان يومي السبت واﻻحد مخصص للعروض التقديمية ويوم اﻻثنين كان للشروح التعليمية (Tutorials) .

قائمة الحضور كانت متنوعة جداً وهذا الجميل فيها, تقريباً هذا اللي كنت أذكره من شركات أو مؤسسات مثلّها أشخاص في المؤتمر:

HP,Allinea,Fujitsu,KAUST,KFPUM,INSPUR,DDN,AMD,NVIDIA,CAPS,Panasas,Bull,PNNL,Saudi Aramco,KACST 





والكثير من جامعات أو شركات لم يتسنى لي ذكرهم, فالجميل بالمؤتمر انه كان يتناول كل مايخص الـHPC تفصيلياً وعلى وجه العموم.

بالنسبة لي صراحةً كثير من الجهات هذي هي المرة الاولى التي اعرف انهم يمتلكون حاسوب فائق السرعة, وكما يبدوا لي ان هذا المجال محتاج لكثير من الكفاءات التقنية وتتوفر فيه فرص كثيرة للشباب.

وبالمناسبة, أحب اشيد بتنظيم الطلاب من جامعة الملك عبدالله لهذا المؤتمر, صراحة كان تواصلهم وتنظيمهم احترافي, طبعاً يوجد أخطاء, لكن عموماً أنا جداً معجب بالتنظيم, واعتبره قريب جداً من تنظيم المؤتمرات التي تقام بالدول الاجنبية.

أيضاً من محاسن حضوري لهذا المؤتمر انه سنحت لي فرصة زيارة بعض مرافق جامعة الملك عبدالله, وكانت بصراحة جداً جميلة , أنصحكم بزيارتها يوماً ما. 
للاستزادة حول أجندة المؤتمر اضغط هنا

bnx2 device eth2 does not seem to be present, delaying initialization.

مرحبا, عند تشغيل السيرفر كانت تظهر الرسالة التالية عند تشغيل كرت الشبكة
bnx2 device eth2 does not seem to be present, delaying initialization. 
طلعت المشكلة انه في الملف هذا واللي يوجد فيه كيف الكيرنل يشوف كروت الشبكة 
/etc/udev/rules.d/70-persistent-net.rules
الملف كان كذا
# PCI device 0x8086:0x10f8 (ixgbe) (custom name provided by external tool)
SUBSYSTEM==”net”, ACTION==”add”, DRIVERS==”?*”, ATTR{address}==”bc:30:5b:8f:5a:57″, ATTR{type}==”1″, KERNEL==”eth*”, NAME=”p1p1″

# PCI device 0x14e4:0x164f (bnx2x) (custom name provided by external tool)
SUBSYSTEM==”net”, ACTION==”add”, DRIVERS==”?*”, ATTR{address}==”bc:30:5b:8f:5a:53″, ATTR{type}==”1″, KERNEL==”eth*”, NAME=”p3p1″

# PCI device 0x8086:0x10f8 (ixgbe) (custom name provided by external tool)
SUBSYSTEM==”net”, ACTION==”add”, DRIVERS==”?*”, ATTR{address}==”bc:30:5b:8f:5a:59″, ATTR{type}==”1″, KERNEL==”eth*”, NAME=”p1p2″

# PCI device 0x14e4:0x163a (bnx2) (custom name provided by external tool)
SUBSYSTEM==”net”, ACTION==”add”, DRIVERS==”?*”, ATTR{address}==”bc:30:5b:8f:5a:51″, ATTR{type}==”1″, KERNEL==”eth*”, NAME=”em2″

# PCI device 0x14e4:0x164f (bnx2x) (custom name provided by external tool)
SUBSYSTEM==”net”, ACTION==”add”, DRIVERS==”?*”, ATTR{address}==”bc:30:5b:8f:5a:55″, ATTR{type}==”1″, KERNEL==”eth*”, NAME=”p3p2″

# PCI device 0x14e4:0x163a (bnx2) (custom name provided by external tool)
SUBSYSTEM==”net”, ACTION==”add”, DRIVERS==”?*”, ATTR{address}==”bc:30:5b:8f:5a:4f”, ATTR{type}==”1″, KERNEL==”eth*”, NAME=”em1″

# PCI device 0x14e4:0x164f (bnx2x) (custom name provided by external tool)
#SUBSYSTEM==”net”, ACTION==”add”, DRIVERS==”?*”, ATTR{address}==”bc:30:5b:8f:5a:53″, ATTR{type}==”1″, KERNEL==”eth*”, NAME=”p3p1.399″

 

الخطأ باللون اﻻحمر, الvlan مفروض ماتعتبر ككرت جديد , طبعاً بعد ازالة اخر سطر , انحلّت معي المشكلة.

حماية المجلدات في لينكس أوبنتو بكلمة مرور مع Cryptkeeper

خلال الفترة الماضية كنت أبحث عن برنامج مناسب في لينكس أوبنتو لتشفير المجلدات وحمايتها بواسطة كلمة مرور, صحيح أنه يوجد كلمة مرور على نفس الحاسب, لكن بمجرد وضعك كلمة مرور على المجلد يزيد من الحماية.
من خلال البحث وجدت ضالتي في برنامج يدعى Cryptkeeper , ممتاز وسهل جداً ويلبي إحتياجي, بحيث تقوم بتركيب البرنامج ,تقوم بتشغيله ومن ثم تختار المجلد الذي تريد أن تقوم بتشفيره وأخيراً تختار كلمة المرور.
نستطيع تنصيب البرنامج عن طريق الأمر التالي:
sudo apt-get install cryptkeeper
اذا كنت تستخدم واجهة Unity ادخل الأمر التالي:
gsettings set com.canonical.Unity.Panel systray-whitelist “[‘all’]”
ببساطة تقوم بتشغيل البرنامج ومن ثم الضغط على علامة المفتاح في الاعلى , وتختار ” New encrypted folder”
encrypt folders linux 
ثم تختار المجلد الذي تريد أن تقوم بتشفيره أو تقوم بإنشاء مجلد جديد
encrypt files linux
بعدها تضغط زر “forward” ومن ثم تقوم بإدخال كلمة المرور التي تريد أن تحمي بواسطتها المجلد.
سوف تلاحظ علامة قرص أمام المجلد الذي قمت بحمايته والذي هو في حالتنا يسمّى “SafeFolder”
encrypt folders linux
المميز في هذا البرنامج أنه ﻻيقوم إفتراضياً بإظهار المجلد المحمي حتى تفتح البرنامج وتختار من علامة المفتاح أي المجلدات المحمية التي تريد أن تفتحها.
ياليت اللي عنده فكرة عن برنامج مماثل يشاركنا فيها.
المصادر: 1,2,3

Speed Up SSH Connection In Ubuntu

في Ubuntu لمّا تحاول تتصل في خادم SSH , مثل كذا :
# ssh root@10.33.5.77


الشيء اللي راح تلاحظه انه راح تمر تقريباً 50 ثانية حتى المؤشر يسمح لك بإدخال كلمة السر, ال50 ثانية هذي تصبح وقت طويل اذا كنت تتصل في عشرات  الخودام كل يوم.
 طبعاً لو عملت debug عند اتصالك بخادم ال SSH  راح تظهر لك هالرسالة:
debug3: preferred gssapi-keyex,gssapi-with-mic,gssapi,publickey,keyboard-interactive,password
السبب في هذا البطئ انه في اعدادت العميل والخادم لل SSH انه خاصية GSSAPI موضوعة بالشكل التالي:
GSSAPIAuthentication yes
GSSAPI اختصار ل Generic Security Services API  
غالباً الخاصية هذي تستخدم لو كان عندك kerberos .
طيب نعطلها بحيث نذهب للملف اﻻتي:

ونضع
GSSAPIAuthentication no




راح تلاحظ انه عميل الSSH رجع لسرعته الطبيعية.


المصادر: 1,2,3

شرح أداة ProxyChains

 هذه تدوينة قمت بكتابها لصالح مجتمع القبعات البيضاء وقام بمساعدتي فيها اﻻخ مهند شحات
Proxy Chains عبارة عن أداة تمكنك من الإتصال ببروتوكولات مثل SSH, TELNET, VNC, FTP من خلف خادم بروكسي HTTP, HTTPS, SOCKS.

متى يمكن استخدام ProxyChains:

  1. عندما تكون الطريقة الوحيدة لأي اتصال خارج شبكتك عن طريق بروكسي
  2. لتخطي بعض إعدادات جدران الحماية Firewalls للإتصال الخارجي
  3. لإستخدام أكثر من بروكسي للإتصال
  4. لإستخدام البروكسي في بعض بروتوكولات TCP مثل TELNET وغيرها
لتوضيح الفائدة من هذه الأداة لنأخذ مثال للتوضيح:
لنفترض أننا نريد أن نقوم بعمل فحص لخادم www.google.com عن طريق برنامج nmap لكن أريد ان أكون مجهول الهوية بقدر الإمكان عند فحصي للخادم. في هذه الحالة يمكن استخدام ProxyChains + شبكة TOR.

افتراض:
افترض انك تستخدم توزيعة Backtrack والتي تأتي إفتراضياً محملة بـ ProxyChains وبرنامج Tor يستمع افتراضيا على المنفذ رقم 9050 ويمكنك التحقق من ذلك بواسطة اﻻمر التالي :

في ملف إعدادت ال ProxyChains تستطيع تحديد البروكسي الذي تريد استخدامه , وكما هو موضح باﻻزرق أمثلة على انواع البروكسي , وفي حالتنا هنا استخدمنا بروتوكول socks4 وعنوان البروكسي هو الجهاز الخاص بنا ورقم المنفذ هو 9050 الذي يستخدمه برنامج Tor

اﻻن لو قمت بعمل فحص لخادم www.google.com بدون استخدام شبكة TOR , يمكن التعرف على هويتك عن طريق الـIP باستخدام نظام كشف للتسلل Intrusion Detection Systems، او غيره.

ولكي تخفي هويتك تحتاج لإستخدام برنامج nmap من خلف بروكسي TOR عن طريق استخدام أداة ProxyChains

ختاماً، إستخدامات ProxyChains كثيرة يمكنك اكتشافها حسب الحاجة والمتطلبات فإستخدمها في بعض الأوقات يعتبر مفيد جداً.

سكربت fanout لإرسال الاوامر لأكثر من سيرفر في نفس الوقت

هل صادفت مرة معك وان احتجت لنفس اﻻمر على على أكثر من سيرفر ؟ كمثال تريد تحديث أنظمة الريدهات الموجودة لديك :
yum update -y
طبعاً  لن تواجه مشكلة لو كان عندك سيرفرين او 3 أو حتى 5 , لكن لمّا نتكلم عن أكثر من 20 سيرفر , أكيد سوف تتعرض لمشكلة , لأنه من غير الطبيعي انك تدخل على كل سيرفر وتنفذ نفس اﻻمر ! دائماً مدير اﻻنظمة الجيّد لايفعل نفس الشيئ مرتين !  
طبعاً يوجد مايعرف  بconfiguration managmant softwear مثل puppet,chef , هذه اﻻدوات جداً احترافية وتحتاج كثير من الوقت والمعرفة عشان تقوم في بنائها في البيئة الخاصة بك.
اليوم راح أتكلم عن سكربت بسيط يدعى fanout , وظيفة السكربت هذا انه يقوم بإرسال اﻻمر نفسه الى  العدد الذي تطلبه من السيرفرات ومن ثم يقوم بجمع كل مخرجات السيرفرات وعرضها لك على الشاشة بشكل مرتب وبسيط !
أحياناً أيضاً تحتاج انك تنفذ نفس الأمر على عدد من السيرفرات في نفس الوقت, مثل في حالة إعدادك للـCluster تحتاج بدء بعض الخدمات في نفس الوقت أو لن تتمكن من تشغيل الخدمة.
طيب نجي للشغل وطريقة الإستخدام, قم بتحميل اﻻداءة من هنا.
نقوم الان بفك الضغط عن المجلد
tar -xvf fanout-current.tar.gz
ثم اﻻنتقال للمجلد الذي قمنا بإستخراجه
cd fanout-current
  ثم تقوم ببناء البرنامج 
[root@centos57 fanout-current]# make

Installing files… bin directory… fanout fanterm fanmux… doc directory… AUTHORS COPYING CREDITS ChangeLog INSTALL Makefile NEWS README TODO… done!


طيب قبل ﻻنبدأ بإستخدام هذا السكربت, نحتاج نخزن السيرفرات الخاصة بنا في متغير مثلاً اسمه SERVERS

export SERVERS=”root@192.168.1.4 root@192.168.1.6″

هنا في حالتي أريد الاتصال في سيرفرين فقط.
أيضاً شي جداً مهم ! عشان السكربت يعمل بشكل ممتاز, تحتاج اﻻتصال عن طريق الـssh بطريقة Passphrase-Less Authentication لكن عيب الطريقة هذي أنه لو أحد حصل على المفتاح الخاص بك, يمكنه عمل مايريد في السيرفر, يمكنك قراءة المزيد عن هذه الطريقة هنا.

طيب نجرب أول أمر لنا ونشوف كيف يعمل السكربت, سوف نقوم بإرسال أمر “uname -a “


./fanout “$SERVERS” ‘uname -a’
المخرجات صارت كالتالي

Starting root@192.168.1.4
Starting root@192.168.1.6
Fanout executing “uname -a”
Start time Tue Sep 11 22:00:24 AST 2012 , End time Tue Sep 11 22:00:28 AST 2012
==== As root on 192.168.1.4 ====
  Linux centos57 2.6.18-274.el5 #1 SMP Fri Jul 22 04:49:12 EDT 2011 i686 i686 i386 GNU/Linux

==== As root on 192.168.1.6 ====
  Linux centos57 2.6.18-274.el5 #1 SMP Fri Jul 22 04:49:12 EDT 2011 i686 i686 i386 GNU/Linux

Exiting fanout, cleaning up…done.

سهل صح ؟ 😀
أنا صراحة استفدت بشكل كبير من هذا السكربت خاصة في أمور الـClustering, اذا كنت تعرف شي مماثل ياليت تشاركنا فيه 🙂