لوگو عباس اویسی

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

  • عمومی
  • اندروید
  • جنریتور حلما
  • فریم‌ورک dagger
  • وب‌سرویس آموزشی فیلم‌ها

ساخت هات‌اسپات بدون تحریم با رسپبری‌پای

خرداد ۱۸, ۱۳۹۷

میخواستم وقتی رسپبری‌پای خریدم، از کارهای جالبی که باهاش میکنم توی کانال و بلاگم بنویسم! ولی خب متاسفانه خیلی فرصت نمیشه سراغش برم، این تعطیلات چند روزه باعث شد تا بعد مدت‌ها سعی کنم کارهایی که میخواستم باهاش انجام بدم رو عملی کنم. مهمترین کارم این بود که بجای وصل کردن لپ‌تاپ به تلویزیون از رسپبری‌پای برای دیدن سریال یا ویدئوهای یوتیوب استفاده کنم. یه روزی درگیر این بودم که یه فیلم FullHD رو روی رسپبری‌پای با زیرنویس فارسی اجرا کنم که آخرشم نشد. (البته میخواستم اینکار رو روی Raspbian انجام بدم، OMXPlayer فیلمو خیلی خوب پخش میکرد ولی با زیرنویس فارسی مشکل داشت)

به این فکرمیکردم که چیکار کنم، یادم افتاد تلویزیون یه بخشی داره که مستقیم به یوتیوب وصل میشه ولی خب اینترنت ایران اون رو باز نمیکنه. درواقع اگر من بتونم یه شبکه‌ای داشته باشم که این قضیه دسترسی رو حل کنه! نه تنها میتونم با همون تلویزیون ویدئوهای یوتیوب رو ببینم، هرجایی که مشکلاتی از قبیل تحریم و دسترسی داشتم (مثل کنسول PS4 یا بیلد کردن پروژه‌های اندروید) با وصل شدن به این شبکه حل میشه!

مودمم که این قابلیت رو نداره، پس تنها راه همون رسپبری‌پای بود. با کمی سرچ کردن توی گوگل آموزش ساخت هات‌اسپات با رسپبری‌پای رو پیدا کردم و بعد رفع یکی دو تا مشکل که در ادامه توضح دادم، تونستم کاری که میخوام رو بکنم.

 

آموزش ساخت Hotspot

برای شروع اول باید از تنظیمات wpa_supplicant.conf یه بک‌آپ گرفت تا بعدا اگر نیاز شد بشه تنظیمات اصلی رو برگردوند.

Java
1
2
sudo cp /etc/wpa_supplicant/wpa_supplicant.conf /etc/wpa_supplicant/wpa_supplicant.conf.sav
sudo cp /dev/null /etc/wpa_supplicant/wpa_supplicant.conf

بعد با استفاده از یه ادیتور مثل nano فایل wpa_supplicant.conf که الان خالیه رو ویرایش کنید و متن پایین رو داخلش ذخیره کنید.

Java
1
2
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

برای اینکه بشه رسپبری‌پای رو تبدیل به اکسس پوینت کرد، استفاده از RaspAP کارو خیلی راحت میکنه. توی ریپوی گیت‌هابشون در موردش میتونید بخونید. با یه خط دستور نصب میشه.

Java
1
wget -q https://git.io/voEUQ -O /tmp/raspap && bash /tmp/raspap

بعد اینکه نصب تموم بشه، رسپبری‌پای ریست میشه. اگر همه چی درست بوده باشه، اگر wifiهای در دسترس رو چک کنید با raspi-webui رو ببینید. من خودم چندبار اینکارو کردم ولی چیزی نیومد. ip رسپبری‌‌پای رو توی مرورگر زدم و با یوزنیم admin و پسورد secret وارد پنل مدیریت raspi شدم. دیدم موقع استارت کردن hotspot خطا میده که hostapd اجرا نمیشه.

دوباره سرچ کردم و دیدم با دستور زیر میشه بصورت دستی hostapd رو اجرا کرد.

Java
1
sudo /usr/sbin/hostapd /etc/hostapd/hostapd.conf

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

Java
1
sudo apt install aircrack-ng

بعد نصب بکچ به ترتیب دستورات زیر رو زدم. البته دستور اول برای اینه چک کنید و یه لیست بهتون میده، بعد دستور دوم با اسم پراسس رو میگیره و هر پراسسی با اون اسم هست رو kill میکنه.

Java
1
2
airmon-ng check
killall wpa_supplicant

بعد اینکار، وقتی دوباره دستور زیر رو زدم، hostapd اجرا شد.

Java
1
sudo /usr/sbin/hostapd /etc/hostapd/hostapd.conf

در نتیجه hotspot هم به درستی ساخته شد و تونستم با گوشی بهش وصل بشم. رمز پیشفرضش ChangeMe هست. برای اون قضیه دسترسی و مشکلات تحریمی هم روی رسپبری‌پای Cisco رو کانکت کردم. در نتیجه دیگه هرکی به hotspot وصل میشد، چون کل ترافیکش از Csico رد میشد از اینترنت بدون فیلتر استفاده میکرد.

راستی بعضی وقتا hostapd نصفه نیمه بسته میشه. اگر اینجوری شد، میتونید با دستور زیر شماره processشو پیدا کنید و دستی با دستور kill ببندینش.

Java
1
ps ax | grep -v grep | grep hostapd

 

منابع

سایت‌های زیادی رو چک کردم یا راه‌حل‌های مختلفی رو تست کردم اما در نهایت لینک‌های زیر، لینک‌هایی بودن که باعث شدن بتونم اینکارو انجام بدم.

Create a Wi-Fi hotspot in less than 10 minutes with Pi Raspberry!

Hostapd error nl80211: Could not configure driver mode

How to install aircrack-ng latest version