وبلاگ محسن

۲ مطلب در آبان ۱۳۹۲ ثبت شده است

چطور از اندروید به کامپیوتر لینوکسیمون ssh کنیم

| دوشنبه, ۱۳ آبان ۱۳۹۲، ۰۷:۱۸ ق.ظ

اگر نمیدونید SSH چیه باید به طور خلاصه بگم که یه پروتکل برای ارتباط دو دیوایس درون شبکه ست. به این معنی که من میتونم در حالی که طبقه پایین خونمون هستم، با لپ تاپم به کامپیوترم که طبقه بالاست، از طریق SSH وصل بشم و هر دستوری که بخوام روی کامپیوترم با یه پروتکل بسیار امن اجرا کنم.

علاوه بر این چیزی که SSH رو خیلی برای ما خاص می کنه اینکه این سرویس اصالت یونیکسی داره، پس یاد گرفتنش برای هر کاربر لینوکسی تا حدی واجبهsmiley
 
اما چیزی که اخیرا خیلی باعث جذاب تر شدن SSH شده اینه که شما با گوشی اندرویدیتون هم می تونید این ارتباط رو برقرار کنید!
خب مسلما اولین ابزاری که احتیاج داریم Connectbot. یه اپ خیلی با حال که از طریق اون روند اتصال ssh رو طی می کنیم.
تنها کاری هم که لازمه با کامپیوتر انجام بدید فعال کردن دیمون ssh به اسم sshd و بعد فهمیدن آی پی آدرسِ.
برای فعال کردن دیمون در سیستم فدورا از این دستور رو وارد می کنیم:
sudo systemctl start sshd.service

و برای فهمیدن آی پی آدرس از دستور ip به شکل زیر ستفاده می کنیم:

ip addr show

که یه همچین خروجی به ما میده:

(آی پی آدرس سیستم با رنگ آبی مشخص شده)

 

البته من خودم Fing استفاده می کنم؛ یه اپ جالب دیگه برای دیدن آی پی تمام دیوایس های متصل به شبکه.

حالا به سراغ connectbot می ریم که در نگاه اول با هم چین شکلی رو به رو می شیم:

همون طور که می بینید، در فیلد پایین، باید اطلاعات اتصال رو وارد کنیم که شامل سه بخشه: username که یه اسم دلخواهِ، hostname که همون آی پی سیستمِ و port که برابر عدد 22 ست.(درگاه 22 پورت پیش فرض ssh در سیستم های یونیکسی سی)

 

با فشردن دکمه done وارد قسمتی میشید که ازتون پسورد روت رو می خواد و بعد از وارد کردن پسورد اتصال شما برقرار میشه:

 

پ.ن: اگر می خواین دیمون sshd هر بار که کامپیوتر رو روشن می کنید فعال بشه، یا به قول معروف startup باشه، این کامند رو اجرا کنید:

sudo chkconfig sshd on

قانون اول: یک گیک هیچ وقت کار تکراری نمی‌کند!

| پنجشنبه, ۹ آبان ۱۳۹۲، ۱۰:۰۹ ب.ظ

البته من خودمو هنوز گیک نمی دونم اما تو موقعیتی که برام پیش اومد سعی کردم باشم.

جریان از این قراره که به تازگی، یه رام جدید رو گوشی arc s عزیزم نصب کردم. برای همین چند روزی سرگرم دستکاری گوشیم بودم تا متوجه شدم به خاطر همین انگولک کردن ها، کل دفترچه تلفنم، چهار بار از سیم کارت import شده. یعنی هر نفر چهار بار اسمش تکرار شده بود و به عبارت دیگه کانتکتی که باید ۱۰۹ شماره می داشت الان ۴۳۶ تا داره و این یعنی سر درد! و حتی برتر از اون: یه نمای زشت در کنج سیستم من.

پس باید از شرش خلاص شد. اولین چیزی  که به ذهنم رسید حذفِ دونه به دونه ی شماره ها و اسم های اضافی بود که خوشبختانه خیلی زود پشیمون شدم. میدونید چرا؟ چون با یه حساب سر انگشتی معلوم شد باید نهصد و هشتاد و یک بار روی صفحه گوشیم ضربه بزنم(109*3*3). و باور کنید مشاهده پرز های موکت برام لذت بخش تر از همچین کار مزخرفیه.

پس تصمیم گرفتم یه ایده خوب به ذهنم برسه ؛ و چون با یه سیستم لینوکسی طرفیم امکان خلاقیت وجود داره!

استفاده از خط فرمان و پیدا کردن فایل کانتکت و حذف اون ایده ایی بود که به سرم زد. که البته برای انجامش گوشیتون باید روت باشه.

باید یه شبیه ساز ترمینال و نرم افزار Busybox هم رو گوشیتون نصب باشه(بیزی باکس نرم افزاریِ که مجموعه ایی از نرم افزارهای بومی لینوکس رُ، روی اندرویدِ نصب می‌کنه .مثل: ls, grep, cd, sed و غیره)

پس برای شروع کار وارد  Terminal Emulator میشیم و با استفاده از دستور su سطحمونو به کاربر ریشه ارتقا میدیم:


مکان فعلی ما دایرکتوری روتِ و از همینجا باید اون فایل مورد نظرمونو پیدا کنیم. اما چه جوری؟ ما نه میدونیم کجاست و نه اسم دقیقی ازش داریم و نه هیچ چیز قطعی دیگه. شاید بشه با cd به دایرکتوری های مختلف پیداش کرد، اما این هیچ فرقی با دونه دونه پاک کردن شماره ها نداره.

اینجاست که دو تا از ابزار های جادویی لینوکس به کار ما میان و با یه خط دستور اون چیزی رو که می خوایم نشونمون میدن: find و grep:

lما با دستور زیر به find میگیم که تمام دایرکتوری های موجود رو برای پیدا کردن فایل ها بگرد و خروجیتو انتقال بده به grep و اونجا به گرپ می گیم خطوطی رو که عبارت contact درشون هست رو نشون بده:

# find / -type f | grep contact

بعد از چند ثانیه کوتاه، خروجی زیر به دست میاد:


ظاهرا خط هفتم، آدرس همون فایلیِ که دنبالشیم :-). به دایرکتوریش cd می‌کنیم و با rm فایل contacts2.db رو حذف می کنیم:



تنها کاری که می مونه یه بار ریبوت کردن گوشی و یه بار import شماره ها از روی سیم کارته.


زیبا بود نه؟!

کار خودمو نمی گم؛فلسفه  گنو لینوکسو می گم.

طرز تفکر جالبی که می گه به جای استفاده از ابزارای بزرگ بزرگی که هیچی ازشون سر در نمیاری بیا از قطعه های کوچیک من استفاده کن و اون ها رو کنار هم بذار و اون چیزی که می خوای رو خودت درست کن.

ایدئولوژی منحصر به فردی که کاربراشو خلاق تربیت میکنه و به اونها یاد می ده هر چیزی که یاد میگیرید متعلق به خودتون نیست، بلکه باید با دیگران هم یاد بدید بذارید.

و معلم عجیبی که دائم به شاگرداش می‌گه «خودت انجامش بده»  ;-)