Raspberry Pi + Fedora (aarch64) = Wi-Fi Hotspot (یا راسبیري روټر د نیلي خولۍ سره)

مقاله Raspberry Pi + CentOS = Wi-Fi Hotspot (یا د ریډ خولۍ سره راسبیري روټر) ما د CentOS عملیاتي سیسټم په کارولو سره د بې سیم لاسرسي نقطې ته د راسبیري بدلولو لپاره د یوې لارې په اړه خبرې وکړې. د دې انځور سره سم زما د کور روټر په راټولولو سره، ما خپل تخلیقي انا مطمین کړه او زما د آرامۍ زیربنا مهم عنصر لپاره د ذهن د سولې وده ترلاسه کړه. په هرصورت، د حل د نیمګړتیا احساس او د داخلي بشپړتیا احساس ما ځوروي: "د کار نیمګړتیا پایله د شتون حق نلري." دا فکر چې "مثالی کیدی شي او باید ترلاسه شي" ما د یوې دقیقې لپاره نه پریږدي.

او بیا یوه ورځ ، په یوه موضوعي فورم کې ، زه د راسبیري (aarch64 vs armhfp) لپاره د موجوده عملیاتي سیسټمونو لږ ژوروالي په اړه بحث ته ورسیدم: کوم چې 64-bit OS کولی شي په اصولو کې د راسبیري نسخه 3 کې فټ او کار وکړي. ++؟

د "یوزرلینډ" څخه د ARM معمارۍ لپاره زما محبوب CentOS هیڅ بیړه نه وه چې د کرنل وروستي نسخې ته لاړ شي او 64-bit ته واړوي. او د EPEL ذخیره ، د خدای څخه وصل شوی چیرې چې د ډیجیټل لاسلیک پرته ، زما په نارامه خوب کې یو خوب و ...

د RPM پر بنسټ توزیعاتو د پیروانو په توګه خبرې کول، زه حیران وم چې وموندلم چې د راسبیري لپاره OS په بحثونو کې په بشپړه توګه هیر شوی و. فیډورا! او دا د دې حقیقت سره سره چې د هغې خوشې کول
له 28 نسخې څخه دا په رسمي ډول په 3-bit نسخه کې د Raspberry Pi 64B+ ملاتړ کوي!

Raspberry Pi + Fedora (aarch64) = Wi-Fi Hotspot (یا راسبیري روټر د نیلي خولۍ سره)
پدې مقاله کې به زه د نصب کولو میتود په اړه وغږیږم فیډورا (aarch64) په Raspberry Pi 3 ماډل B + в اضافي لږترلږه فعالیت. زه به په لنډه توګه د Wi-Fi لاسرسي نقطې لوړولو ځانګړتیاو په اړه وغږیږم ، چې زما د مخکیني تشکیلاتو د آزموینې عملیاتو په پایله کې پیژندل شوي. CentOS 7.

0. هغه څه چې تاسو ورته اړتیا لرئ

هرڅه یو شان دي لکه څنګه چې په تیرو مقاله کې لیست شوي:

  • Raspberry Pi 3 ماډل B+؛
  • microSD>= 4GB (وروسته تاسو کولی شئ سیسټم 2GB ډرایو ته "لیږدئ")؛
  • د لینکس او مایکرو ایس ډی کارت ریډر سره کار سټیشن؛
  • د راسبیري او لینکس ورک سټیشن ترمینځ د وائرډ شبکې ارتباط (په دې حالت کې ، د تنظیم کولو لپاره اضافي مانیټر او کیبورډ ته اړتیا نشته) ، د دواړو وسیلو څخه انټرنیټ لاسرسی؛
  • په لینکس کې پرمختللي مهارتونه (د پوهیدو او ویریدو لپاره: پارټ, dd и mkfs).

تکراري ته ورته lfs- د خپل لینوکس په جوړولو سره، د فیډورا توزیع عکس به وکارول شي، او بیا به د هغې پر بنسټ، لږترلږه سیسټم جوړ شي (پرته له دې چې "د سرچینې څخه تالیف").

1. د اصلي ویش نصب کول

په انټرنیټ کې د سیسټم خام عکس همغږي:
https://…/fedora-secondary/releases/…/Spins/aarch64/images/Fedora-Minimal-…xz

په مایکرو ایس ډی کې ثبتولو وروسته او د کارولو دمخه ، تاسو اړتیا لرئ:

  1. د فایل سیسټم "روټ" پراخ کړئ (دریمه برخه، ext3)
    parted /dev/mmcblk0 resizepart 3 100%
    e2fsck -f /dev/mmcblk0p3; resize2fs /dev/mmcblk0p3; e2fsck -f /dev/mmcblk0p3
    for i in 1 2 3; do mkdir -p /mnt/$i; mount /dev/mmcblk0p$i /mnt/$i; done
    

  2. SELinux غیر فعال کړئ
    echo 'SELINUX=disabled' > /mnt/3/etc/selinux/config
    

  3. د لومړني ترتیب وزرډ لرې کړئ:
    find /mnt/3/etc/systemd/ -iname initial-setup.service -delete
    

  4. د ssh له لارې لاسرسي ته اجازه ورکړئ:
    mkdir -p /mnt/3/root/.ssh
    cp -fv ~/.ssh/id_rsa.pub /mnt/3/root/.ssh/authorized_keys
    sed -i 's/#PermitRootLogin.*/PermitRootLogin yes/g' /mnt/3/etc/ssh/sshd_config
    

اوس تاسو کولی شئ د مایکرو ایس ډی څخه "راسبیري" ډاونلوډ کړئ او د شبکې له لارې یې سره وصل کړئ.

یو سړه پیل شاوخوا یو نیم دقیقې وخت نیسي. د بارولو وروسته د سیسټم TTX:

Raspberry Pi + Fedora (aarch64) = Wi-Fi Hotspot (یا راسبیري روټر د نیلي خولۍ سره)

rpm -qa | wc -l
444

2. د لږترلږه سیسټم راټولول

له بده مرغه، د پراختیا کونکو څخه "لږترلږه توزیع" د سرچینو په مصرف کې له خورا معتدل څخه لرې ښکاري. د سیسټم عکس حتی کوچنی کیدی شي.

د دې کولو لپاره، تاسو اړتیا لرئ چې په مالینکا کې سکریپټ چل کړئ:

#!/bin/bash

. /etc/os-release
P=$(mktemp --directory $(pwd)/$ID-$VERSION_ID.XXX)

dnf --installroot=$P --releasever=$VERSION_ID --setopt=install_weak_deps=false 
--assumeyes install  
    bcm283x-firmware 
    dnf              
    grub2-efi-aa64   
    kernel           
    openssh-server   
    shim-aa64

for f in /boot/efi/EFI/fedora/grub.cfg 
         /boot/efi/EFI/fedora/grubenv  
         /boot/efi/rpi3-u-boot.bin     
         /etc/default/grub             
         /etc/fstab
do
  cp -fv $f $P$f
done

rm  -fv $P/dev/*
rm -rfv $P/var/cache/dnf

echo "--------------------------------------------------------------------------------"
du -hs $P

د سکریپټ چلولو وروسته، په اوسني ډایرکټر کې به یو فرعي لارښود جوړ شي ($P) د نوي لږترلږه OS نسخې د ریښې مینځپانګې سره. تاسو کولی شئ راسبیري بند کړئ او مایکرو ایس ډی د لینکس ورک سټیشن ته بیرته ورکړئ.

3. د دقیق سیسټم نصب کول

نصب کول د لږترلږه OS "انځور" فایلونو کاپي کولو ته غوړیږي (په تیرو مرحله کې ترلاسه شوي) په ځانګړي ډول چمتو شوي مایکرو ایس ډی ته مناسب لارښودونو ته.

یو 2GB کارت او په هغې کې دوه برخې کافي دي:

  1. / بوټ / ایفي - EFI + FAT32، بوټ، 100MB؛
  2. / (root) - EXT4، ټول پاتې ځای.

د مایکرو ایس ډی چمتو کولو او دې ته د فایلونو کاپي کولو وروسته ، تاسو اړتیا لرئ:

  • د OS بوټ سم کړئ؛
  • شبکه فعاله کړئ؛
  • د ssh له لارې لاسرسی تنظیم کړئ.

د بوټ فکس دا دی چې په فایلونو کې د برخو UUID ځای په ځای کړي:

microSD:/boot/efi/EFI/fedora/grub.cfg
microSD:/boot/efi/EFI/fedora/grubenv

او پیرامیټر خوندي_داخله= په وروستي فایل کې

په دوتنه کې:

microSD:/etc/fstab

تاسو کولی شئ زاړه ارزښتونه ومومئ، او اوسني (تازه) ارزښتونه د کمانډ محصول کې:

blkid | grep mmcblk | sort

د بدلولو وروسته، تاسو باید محتويات هم سم کړئ فسټاب په مایکرو ایس ډی کې ترڅو د ماونټ پوائنټونه د نوي برخې UUIDs سره مطابقت ولري.

د شبکې فعالیت کله چې تاسو لومړی راسبیري چالان کړئ د کوچني "کرچ" سره ترلاسه کیدی شي - یو لینک رامینځته کړئ (په سکیمیک ډول):

ln -s /usr/lib/systemd/system/systemd-networkd.service 
  microSD:/etc/systemd/system/multi-user.target.wants

او دوتنه:

mkdir -p microSD:/etc/systemd/network
cat > microSD:/etc/systemd/network/dhcp.network << EOF
[Match]
Name=*
[Network]
DHCP=ipv4
EOF

د بریالي ډاونلوډ وروسته ، لانچ پاک کړئ systemd-networkd:

systemctl disable systemd-networkd
systemctl enable systemd-networkd

د ssh له لارې د سوپر یوزر لاسرسی د 1 مرحلې سره ورته ترتیب شوی.

د هرڅه په دقت او پرته له غلطیو ترسره کولو سره ، تاسو کولی شئ مایکرو ایس ډی "راسبیري" ته واړوئ او په اضافي لږترلږه نسخه کې د 64-bit OS سره کار پیل کړئ.

4. چمتو سیسټم

د بشپړ شوي سیسټم "انځور"، د پورته لارښوونو سره سم جوړ شوی، د لینک څخه ډاونلوډ کیدی شي:
Fedora-Tiny-31-5.5.7-200.aarch64

دا به یو آرشیف وي چې دوه فایلونه لري: د نصب کولو سکریپټ او TGZ د OS فایلونو سره. آرشیف باید د لینکس ورک سټیشن کې خلاص شي ، مایکرو ایس ډی دننه کړئ (د 2GB کارت کافي دی) او سکریپټ د پیرامیټر سره پرمخ وړئ - د وسیلې نوم:

./install /dev/mmcblk0

پام وکړئ!

پرته له کوم خبرتیا، وسیله به فارمیټ شي او عملیاتي سیسټم به په هغې کې نصب شي.

د سکریپټ له خطا پرته اجرا کولو وروسته ، کارت په "راسبیري" کې تنظیم کیدی شي او کارول کیدی شي: د dhcp له لارې نیول ، پاسورډ - "1".

سیسټم د ټولو IDs او کیلي څخه پاک شوی، له همدې امله هر نوی نصب ځانګړی دی.

زه یو ځل بیا تکراروم، سیسټم - لږ تر لږه! له همدې امله ، مه ویره مه کوئ: DNF شتون لري ، د دې کار کولو لپاره تاسو باید سم "اختراع" وکړئ /etc/resolv.conf.

د راسبیري سړه پیل شاوخوا 40 ثانیې وخت نیسي. د بارولو وروسته د سیسټم TTX:

Raspberry Pi + Fedora (aarch64) = Wi-Fi Hotspot (یا راسبیري روټر د نیلي خولۍ سره)

rpm -qa | wc -l
191

5. وای فای

زه به د وائی فای لاسرسي نقطې پلي کولو ځانګړتیاو باندې یو څه پاتې شم. د ځانګړتیاوو لپاره، تاسو کولی شئ زما پخوانی ته مراجعه وکړئ مقالې.

EPEL نور اړتیا نلري - ټولې کڅوړې په رسمي ذخیره کې شتون لري.

دا به شاید د ورکولو ارزښت ولري dnsmasq، ځکه چې فیډورا ، د CentOS برعکس ، په کافي اندازه وروستي سیسټمډ شبکه لري ، کوم چې نورمال جوړ شوی DHCP/DNS سرورونه لري. مګر حقیقت دا دی چې د RHEL8 پراختیا کونکو کې د NM پرته بل څه سره د شبکې سټیک ملاتړ کولو څخه انکار وکړ، د پروژې په روښانه راتلونکي کې باور نه هڅوي (بدبختي). په لنډه توګه، ما دا هڅه نه ده کړې.

سربیره پردې ، د جوړ شوي Wi-Fi اډاپټر لپاره اوسني ډرایورونه د راسبیان توزیع څخه "غلا" نشي کیدی ، مګر مستقیم له دې څخه ډاونلوډ کیدی شي. github.

دا هغه څه دي چې د براډکام فرم ویئر فایلونه زما په راسبیري کې ښکاري (په سکیمیک ډول):

ls /usr/lib/firmware/brcm | grep 43455

 [612775] brcmfmac43455-sdio.bin
  [14828] brcmfmac43455-sdio.clm_blob
[symlink] brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt -> brcmfmac43455-sdio.txt
   [2099] brcmfmac43455-sdio.txt

د دوی پرته تاسو به 5GHz/AC ترلاسه نکړئ.

د انٹرفیسونو شمیر او نومونو په اړه. اوس زه هرچا ته په کلکه سپارښتنه کوم چې د سافټویر سویچونو "خدمتونو" څخه کار وانخلي پرته لدې چې بالکل اړین وي (پل)، کوم چې د شبکې سټیک کې د پام وړ بار معرفي کوي او روټینګ فشاروي. که تاسو پلان نلرئ چې ډیری بې سیم اډیپټرونه ولرئ ، نو تاسو باید یوازې فزیکي انٹرفیس وکاروئ. زه دوه وائی فای لرم، نو زه یوازې دوی د سافټویر پل سره یوځای کوم (که څه هم تاسو کولی شئ پرته له دې د hostapd سیټ اپ په مختلف ډول وګورئ).

او زه د انٹرفیسونو نوم بدلول خوښوم.

په فیډورا کې د دې کولو لپاره تاسو اړتیا لرئ سمبولیک لینک جوړ کړئ:

/etc/systemd/network/99-default.link -> /dev/null

او بیا به دا ممکنه وي چې معنی لرونکي نومونه پرته له دې چې شاوخوا وګرځي udev، مګر یوازې د systemd-networkd کارول.

د مثال په توګه، دا هغه څه دي چې زما په روټر کې د شبکې اډیپټرونه ویل کیږي:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000

2: wan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000

3: lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000

4: int: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master lan state UP group default qlen 1000

5: ext: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master lan state UP group default qlen 1000

  • اینټ - جوړ شوی، اضافه - بهرني (USB) Wi-Fi اډاپټرونه په "پل" کې راټول شوي لین;
  • دوی - ایترنیټ اډاپټر چې انټرنیټ ورسره وصل دی.

ایا تاسو پام کړی؟ fq_code - واقعیا په زړه پوری شی. د نوي لینکس کرنل سره یوځای، دوی د بې سیم رینج کې ریښتینې معجزې کار کوي: یو سخت "تورینټ ډاونلوډ" به د ګاونډیو ترمنځ د سرعت ناڅاپي تخریب لامل نشي. حتی د کور IP-TV د بار شوي چینل سره "د هوا په اوږدو کې" فعالیت کوي "مات نه کوي" او په هیڅ ډول "ټیټ" نه کوي!

د ډیمون خدمت فایل لږ بدلونونه لري hostapd.

دا اوس داسې ښکاري (د جوړ شوي اډاپټر مثال په کارولو سره):

[Unit]
Description=Hostapd IEEE 802.11 AP, IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator
After=network.target
BindsTo=sys-subsystem-net-devices-int.device

[Service]
Type=forking
PIDFile=/run/hostapd-int.pid
#ExecStartPre=/usr/sbin/iw dev int set power_save off
ExecStart=/usr/sbin/hostapd /path/to/hostapd-int.conf -P /run/hostapd-int.pid -B

[Install]
RequiredBy=sys-subsystem-net-devices-int.device

او په 5GHz/AC کې د کار کولو لپاره "جادو" hostapd-int.conf:

ssid=rpi
wpa_passphrase=FedoRullezZ

# 5180 MHz  [36] (20.0 dBm)
# 5200 MHz  [40] (20.0 dBm)
# 5220 MHz  [44] (20.0 dBm)
# 5240 MHz  [48] (20.0 dBm)
# 5745 MHz [149] (20.0 dBm)
# 5765 MHz [153] (20.0 dBm)
# 5785 MHz [157] (20.0 dBm)
# 5805 MHz [161] (20.0 dBm)
# 5825 MHz [165] (20.0 dBm)

channel=36
#channel=149

# channel+6
# http://blog.fraggod.net/2017/04/27/wifi-hostapd-configuration-for-80211ac-networks.html

vht_oper_centr_freq_seg0_idx=42
#vht_oper_centr_freq_seg0_idx=155

country_code=US

interface=int
bridge=lan

driver=nl80211

auth_algs=1
wpa=2
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP

macaddr_acl=0

hw_mode=a
wmm_enabled=1

# N
ieee80211n=1
require_ht=1
ht_capab=[HT40+][SHORT-GI-40][SHORT-GI-20]

# AC
ieee80211ac=1
ieee80211d=0
ieee80211h=0
vht_oper_chwidth=1
require_vht=1
vht_capab=[SHORT-GI-80]

زما د Ericsson A1018s څخه جوړ شوی یو کوچنی فوټوشاپ:

(انټرنیټ پیوستون - 100Mbit/sec)Raspberry Pi + Fedora (aarch64) = Wi-Fi Hotspot (یا راسبیري روټر د نیلي خولۍ سره)
او په پای کې، یو کوچنی FAQ.

6. پرله پسې پوښتنې

6.1 ولې په راسبیري کې د وای فای روټر جوړ کړئ؟

یو څوک کولی شي په ساده ډول ځواب ووایی ، لکه "دا هڅه کول په زړه پوري دي او دا ټول."

مګر په حقیقت کې، ما ته داسې ښکاري چې موضوع خورا جدي ده. د "خونري" انټرنیټ په دوره کې، په پلورنځي کې د روټر پیرود او د دې تولید کونکي ته یرغمل پاتې کیدل یو ډیر ناورین دی. ډیری خلک لا دمخه پوهیږي چې د CVE یا جوړ شوي شاته دروازې سره ناست ممکن ندي.

البته، تاسو کولی شئ د لیوالتیا څخه د WRT فرم ویئر ته مهاجرت وکړئ. په دوی کې شاید ډیر باور شتون ولري ، مګر که تاسو نه غواړئ په دوی تکیه وکړئ ، نو یوازې خپل محصول وکاروئ. په عین حال کې، یو بشپړ کمپیوټر دی ترڅو په نړۍ کې هرڅه پلي شي. د روټینګ شرایطو کې، البته.

له همدې امله، د "راسبیري" غوره کول یو خالص اقتصادي اقدام دی: یو ریښتینی کمپیوټر او په ورته وخت کې یو ارزانه. که څه هم، شاید هم - د دوی "ډبل" دننه سره.

6.2 مګر راسبیري یو "ټیټ روټر" دی: ورو او د یو ایترنیټ بندر سره!

د کور Wi-Fi روټر په توګه ، راسبیري زما لپاره د قناعت وړ دی. ما دمخه د هوا سرعت په اړه پورته خبرې کړې دي. او دلته یوازې یو ایترنیټ شتون لري ، ښه ، د ایپل څخه ورته محصول کې دا ورته دی!

مګر په جدي توګه، البته زه نور غواړم. او د دې حقیقت سره سره چې زما په کورنۍ کې ټول وسایل په بې سیم سره وصل دي، ځینې وختونه د مسو پیوستون ته اړتیا لیدل کیږي. د داسې قضیو لپاره، زه په سټاک کې "موبایل مرکز" لرم:

وسیله - داسې یو څهRaspberry Pi + Fedora (aarch64) = Wi-Fi Hotspot (یا راسبیري روټر د نیلي خولۍ سره)

6.3 که دا یو روټر وي، نو د TCP/IP "ټیوننګ" په اړه هیڅ نه ویل کیږي، ځکه چې دا مهم دی!

د شبکې سټیک تنظیم کولو سربیره (tcp_fastopen، YeAH، او داسې نور)، دا او پخوانۍ مقاله نور لنډیزونه نه پوښي، په ځانګړې توګه، د غوره کارونې لپاره د مایکرو ایس ډی چمتو کولو پروسه (که څه هم انسټالر هڅه کوي د حافظې کارت فارمیټ کړي. یوه پیچلې لاره). د پرمختګ پروسه نه ختمیدونکي ده، تاسو باید په وخت کې ودروئ.

6.4 ولې فیډورا؟

ځکه چې زه خوښوم! فیډورا د ګیکس لپاره "اصلي جریان" سیسټم دی، د چا لپاره چې دا مقاله په حقیقت کې موخه ده. د لیکلو په وخت کې ، شاید یوازینی OS چې د راسبیري لپاره په 64-bit نسخه کې په رسمي ډول د پراختیا کونکو د پام وړ کارمندانو لخوا ملاتړ کیږي (له هغه څخه چې زه یې انتظار نشم کولی دانه 5.6).

6.5 آیا بلوتوث کار کوي؟ ویډیو/غږ/GPIO څنګه دی؟

نه پوهیږم. مقاله د سیسټم لږترلږه نصبولو او د وائی فای روټر په توګه د هغې وروسته کارولو په اړه ده.

6.6 ولې د CentOS/Fedora/RedHat په اړه ټولې مقالې د SELinux غیر فعالولو سره پیل کیږي؟

ځکه چې سیسټم لږ تر لږه دی، دا حتی د دې د تنظیم کولو لپاره فایر وال یا اسانتیاوې نلري. هرڅوک چې ورته اړتیا لري کولی شي اضافي هرڅه نصب کړي چې دوی ورته اړتیا لري.

6.7 سیسټم نشي کارول کیدی، پټنوم نشي بدلیدلی - پاسورډ نشته. نه پینګ، نه هیڅ نه!

موجود دي DNF. یا دا نصب کول ستاسو لپاره ندي - د پراختیا کونکو څخه د توزیع کټ وکاروئ.

6.8 SWAP چیرته دی؟ زه د هغه پرته ژوند نشم کولی!

آیا دا سمه ده؟ بیا سمه ده:

fallocate -l 1G /swap
chmod -v 0600 /swap
mkswap -f /swap
swapon -v /swap
grep "/swap" /etc/fstab || echo "/swap swap swap defaults 0 0" >> /etc/fstab

6.9 زه غواړم سمدلاسه د ترتیب شوي Wi-Fi لاسرسي نقطې سره چمتو شوی عکس ډاونلوډ کړم!

د "هرچا لپاره" د انسټالر چمتو کول به یو څه وخت او هڅې ته اړتیا ولري. که (ناڅاپه!) څوک واقعیا دا په زړه پوري او اړین ومومي ، موږ ته ولیکئ او موږ به یو څه راوړو.

زه به دا پای ته ورسوم.

زه هیله لرم چې هرڅوک خوندي سرفینګ او په زیربنا باندې اعظمي کنټرول ولري!

سرچینه: www.habr.com

Add a comment