شرکتها, کارخانجات -هورکا-مراکز پخش و کسب و کارها

سبد خرید شما خالی است.

معرفی UCI و نحوه استفاده از این ابزار قدرتمند برای مدیریت پیکربندی در سیستم‌عامل امگا، شامل تنظیمات شبکه، فایروال و وای‌فای با دستورات ساده و موثر.

Openwrt UCI

Unified Configuration Interface (UCI) یک ابزار قدرتمند و جامع برای مدیریت و ایجاد گزینه‌های پیکربندی در سیستم‌عامل امگا است. این ابزار به کاربران اجازه می‌دهد تا تنظیمات مختلفی را برای زیرسیستم‌های متفاوت مانند وای‌فای، اتصال به شبکه، و حتی فایروال، به سادگی و بدون نگرانی از ایجاد خطاهای نحوی یا مکان فایل‌های پیکربندی تغییر دهند. استفاده از UCI به ویژه برای مدیران سیستم، متخصصان پشتیبانی IT، و کسانی که با خدمات شبکه و فناوری اطلاعات سروکار دارند، بسیار مفید است. این مقاله با هدف ارائه یک معرفی جامع از UCI، نحوه استفاده از آن، و مثال‌های کاربردی در مدیریت پیکربندی سیستم‌های امگا نگاشته شده است.

نحو UCI

UCI از یک نحو ساده و قابل درک برای تعامل با فایل‌های پیکربندی استفاده می‌کند. این نحو به شکل زیر است:

uci [OPTIONS] (COMMAND) [ARGUMENTS]

در این دستور، [OPTIONS] شامل گزینه‌های اضافی است که می‌توانند به دستور اضافه شوند، (COMMAND) دستور اصلی است که باید اجرا شود، و [ARGUMENTS] آرگومان‌هایی هستند که به دستور اضافه می‌شوند. برخی از دستورات اصلی UCI شامل موارد زیر هستند:

  • show: نمایش تنظیمات فعلی.
  • add: اضافه کردن یک بخش جدید.
  • set: تنظیم یک گزینه خاص.
  • get: دریافت مقدار یک گزینه.
  • commit: ذخیره تغییرات موقتی.

ایجاد فایل پیکربندی

برای شروع کار با UCI، نیاز به یک فایل پیکربندی دارید. به عنوان مثال، برای ایجاد یک فایل پیکربندی ساختگی به نام foobar، می‌توانید از دستور زیر استفاده کنید:

touch /etc/config/foobar

این فایل به عنوان نمونه‌ای برای تمرین و آزمایش دستورات UCI استفاده خواهد شد.

استفاده عمومی از UCI

روند کار با UCI به طور کلی شامل مراحل زیر است:

  1. مرحله‌ای کردن تغییرات: با استفاده از دستورات uci add یا uci set تغییرات به طور موقت اعمال می‌شوند.
  2. ذخیره نهایی تغییرات: با اجرای دستور uci commit، تغییرات موقتی به صورت دائمی ذخیره می‌شوند.

توجه داشته باشید که فراموش کردن اجرای uci commit پس از اعمال تغییرات، باعث عدم به‌روزرسانی پیکربندی سیستم می‌شود.

مثال: اضافه کردن یک بخش جدید

فرض کنید می‌خواهید یک بخش جدید به فایل پیکربندی foobar اضافه کنید. برای این کار از دستور uci add استفاده می‌کنید:

uci add foobar section

این دستور یک بخش جدید به نام section به فایل foobar اضافه می‌کند. برای مشاهده تغییرات می‌توانید از دستور uci show استفاده کنید:

uci show foobar

مثال: تنظیم یک گزینه

برای تنظیم یک گزینه خاص در یک بخش از فایل پیکربندی، از دستور uci set استفاده کنید. به عنوان مثال، اگر بخواهید مقدار گزینه option1 را در بخش section تنظیم کنید، دستور زیر را اجرا کنید:

uci set foobar.section.option1='value'

پس از تنظیم گزینه‌ها، باید تغییرات را با دستور uci commit ذخیره نهایی کنید:

uci commit foobar

نمایش فایل‌های پیکربندی

دستور uci show برای نمایش تنظیمات فعلی فایل‌های پیکربندی استفاده می‌شود. هر زیرسیستم در سیستم‌عامل امگا فایل پیکربندی مخصوص به خود را دارد که در دایرکتوری /etc/config ذخیره می‌شود. این فایل‌ها به بخش‌هایی تقسیم می‌شوند که هر بخش شامل گروهی از گزینه‌ها است.

مثال: نمایش تنظیمات سیستم

برای مثال، دستور زیر تنظیمات زیرسیستم system را نمایش می‌دهد:

uci show system

خروجی این دستور شامل اطلاعاتی نظیر منطقه زمانی، نام میزبان و تنظیمات LED خواهد بود. به عنوان مثال:

system.@system[0]=system
system.@system[0].timezone='GMT0'
system.@system[0].ttylogin='0'
system.@system[0].log_size='64'
system.@system[0].urandom_seed='0'
system.@system[0].cronloglevel='8'
system.@system[0].hostname='Omega-F119'
system.ntp=timeserver
system.ntp.enabled='1'
system.ntp.enable_server='0'
system.ntp.server='0.lede.pool.ntp.org' '1.lede.pool.ntp.org' '2.lede.pool.ntp.org' '3.lede.pool.ntp.org'
system.@led[0]=led
system.@led[0].name='On'
system.@led[0].default='0'
system.@led[0].trigger='default-on'
system.@led[0].sysfs='omega2p:amber:system'

مقایسه با فایل خام

برای درک بهتر ساختار فایل‌های پیکربندی، می‌توانید محتوای فایل خام system را مشاهده کنید:

cat /etc/config/system

این فایل شامل بخش‌های مختلفی از تنظیمات است که به صورت دستی نیز قابل ویرایش هستند. با این حال، استفاده از UCI برای اعمال تغییرات ایمن‌تر و موثرتر است.

محتوای فایل خام به شکل زیر است:

config system
        option timezone 'GMT0'
        option ttylogin '0'
        option log_size '64'
        option urandom_seed '0'
        option cronloglevel '8'
        option hostname 'Omega-F119'

config timeserver 'ntp'
        option enabled '1'
        option enable_server '0'
        list server '0.lede.pool.ntp.org'
        list server '1.lede.pool.ntp.org'
        list server '2.lede.pool.ntp.org'
        list server '3.lede.pool.ntp.org'

config led
        option name 'On'
        option default '0'
        option trigger 'default-on'
        option sysfs 'omega2p:amber:system'

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

بخش‌ها

هنگام استفاده از uci show، بخش‌ها با فرمت زیر نمایش داده می‌شوند:

[SUBSYSTEM].[SECTIONNAME]=[TYPE]

بخش‌ها می‌توانند با نام یا بدون نام باشند. بخش‌های بدون نام به صورت [TYPE][INDEX] نمایش داده می‌شوند. به عنوان مثال، پیکربندی فایروال ممکن است چندین بخش از نوع rule داشته باشد:

firewall.@rule[0]=rule
firewall.@rule[0].name='Allow-ICMPv6-Input'
firewall.@rule[0].src='wan'
firewall.@rule[0].proto='icmp'
firewall.@rule[1]=rule
firewall.@rule[1].name='Allow-DHCPv6'
firewall.@rule[1].src='wan'
firewall.@rule[1].proto='udp'
...

پیکربندی مرکزی OpenWrt

پیکربندی مرکزی OpenWrt به چندین فایل در دایرکتوری /etc/config/ تقسیم می‌شود. هر فایل مرتبط با بخشی از سیستم است که پیکربندی می‌کند. فایل‌های پیکربندی را می‌توان با ویرایشگر متن یا با استفاده از UCI تغییر داد. همچنین، این فایل‌ها از طریق APIهای مختلف برنامه‌نویسی قابل تغییر هستند که این قابلیت امکان تغییر پیکربندی‌ها را از طریق اسکریپت‌ها و رابط‌های وب فراهم می‌کند.

استفاده از UCI برای مدیریت پیکربندی شبکه

یکی از کاربردهای مهم UCI در مدیریت پیکربندی شبکه است. با استفاده از UCI می‌توان تنظیمات مربوط به شبکه را به سادگی تغییر داد و مدیریت کرد. در ادامه به برخی از کاربردهای UCI در پیکربندی شبکه می‌پردازیم.

تغییر آدرس IP

فرض کنید می‌خواهید آدرس IP دستگاه را از 192.168.1.1 به 192.168.2.1 تغییر دهید. برای این کار، خط مربوطه را در فایل /etc/config/network به صورت زیر تغییر دهید:

uci set network.lan.ipaddr='192.168.2.1'
uci commit network
/etc/init.d/network restart

این دستورات آدرس IP دستگاه را تغییر داده و تنظیمات جدید را اعمال می‌کند.

تنظیم DHCP

برای تنظیم DHCP می‌توانید از دستورات زیر استفاده کنید:

uci set dhcp.lan.start='100'
uci set dhcp.lan.limit='150'
uci set dhcp.lan.leasetime='12h'
uci commit dhcp
/etc/init.d/dnsmasq restart

این دستورات محدوده DHCP، تعداد آدرس‌های قابل تخصیص، و زمان اجاره آدرس‌ها را تنظیم می‌کند.

استفاده از UCI برای مدیریت فایروال

فایروال یکی از اجزای حیاتی در هر سیستم شبکه‌ای است. با استفاده از UCI می‌توان به سادگی قوانین فایروال را تنظیم و مدیریت کرد.

اضافه کردن یک قانون جدید

برای اضافه کردن یک

قانون جدید به فایروال، از دستورات زیر استفاده کنید:

uci add firewall rule
uci set firewall.@rule[-1].name='Allow-HTTP'
uci set firewall.@rule[-1].src='wan'
uci set firewall.@rule[-1].proto='tcp'
uci set firewall.@rule[-1].dest_port='80'
uci set firewall.@rule[-1].target='ACCEPT'
uci commit firewall
/etc/init.d/firewall restart

این دستورات یک قانون جدید برای اجازه دادن به ترافیک HTTP از شبکه خارجی اضافه می‌کند.

استفاده از UCI برای مدیریت وای‌فای

پیکربندی وای‌فای یکی دیگر از کاربردهای مهم UCI است. با استفاده از UCI می‌توانید تنظیمات مربوط به وای‌فای را به سادگی تغییر دهید.

تنظیم SSID و کلید رمزنگاری

برای تنظیم SSID و کلید رمزنگاری شبکه وای‌فای، از دستورات زیر استفاده کنید:

uci set wireless.@wifi-iface[0].ssid='MyNetwork'
uci set wireless.@wifi-iface[0].key='MyPassword'
uci commit wireless
/etc/init.d/network restart

این دستورات SSID و کلید رمزنگاری شبکه وای‌فای را تنظیم می‌کند.

نتیجه‌گیری

UCI یک ابزار کارآمد و ساده برای مدیریت پیکربندی سیستم‌عامل امگا است. با استفاده از این ابزار، می‌توانید بدون نگرانی از خطاهای نحوی یا مکان فایل‌های پیکربندی، به راحتی تنظیمات سیستم را تغییر دهید و مدیریت کنید. این امکان به ویژه برای مدیران سیستم و افرادی که به پشتیبانی IT و خدمات شبکه و فناوری اطلاعات مشغول هستند، بسیار مفید و ضروری است. UCI با ارائه یک رابط کاربری یکپارچه و ساده، باعث سهولت در مدیریت و کاهش احتمال خطاهای پیکربندی می‌شود.

منابع

پیوست: دستورات UCI مفید

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

نمایش پیکربندی‌ها

برای نمایش تمامی پیکربندی‌های یک زیرسیستم خاص:

uci show [subsystem]

برای نمایش مقدار یک گزینه خاص:

uci get [subsystem].[section].[option]

تنظیم و اضافه کردن پیکربندی‌ها

برای تنظیم مقدار یک گزینه خاص:

uci set [subsystem].[section].[option]='value'

برای اضافه کردن یک بخش جدید:

uci add [subsystem] [section_type]

حذف پیکربندی‌ها

برای حذف یک بخش خاص:

uci delete [subsystem].[section]

برای حذف یک گزینه خاص:

uci delete [subsystem].[section].[option]

ذخیره تغییرات

برای ذخیره تمامی تغییرات موقتی:

uci commit [subsystem]

بارگذاری مجدد تنظیمات

برای بارگذاری مجدد تنظیمات شبکه:

/etc/init.d/network restart

برای بارگذاری مجدد تنظیمات فایروال:

/etc/init.d/firewall restart

فایل های پیکربندی OPenwrt

فایل های پیکربندی

/etc/config/dhcp تنظیمات Dnsmasq و odhcpd : DNS ، DHCP ، DHCPv6
/etc/config/dropbear گزینه های سرور SSH
/etc/config/firewall NAT ، فیلتر بسته، ارسال پورت و غیره
/etc/config/network سوئیچ، رابط و پیکربندی مسیر:
مبانی ، IPv4 ، IPv6 ، مسیرها ، قوانین ، WAN ، نام‌های مستعار ، سوئیچ‌ها ، VLAN ، انتقال IPv4/IPv6 ، تونل‌سازی
/etc/config/system متفرقه تنظیمات سیستم، NTP ، RNG ، Watchcat
/etc/config/wireless تنظیمات بی سیم و تعریف شبکه وای فای
IPv6
/etc/config/ahcpd پروتکل پیکربندی Ad-Hoc (AHCP) پیکربندی سرور و ارسال کننده
/etc/config/dhcp6c سرویس گیرنده WIDE-DHCPv6
/etc/config/dhcp6s سرور WIDE-DHCPv6
/etc/config/gw6c پیکربندی مشتری GW6c
دیگر
/etc/config/babeld پیکربندی بابلد
/etc/config/bbstored پیکربندی سرور BoxBackup
/etc/config/ddns پیکربندی پویا DNS (ddns-scripts)
/etc/config/dnscrypt-proxy پروکسی DNSCrypt
/etc/config/emailrelay E-MailRelay: سرور SMTP ساده و پروکسی با پشتیبانی POP . ارسال ایمیل بسته
/etc/config/etherwake Wake-on-Lan: etherwake
/etc/config/freifunk_p2pblock از iptables layer7-، ipp2p- و ماژول های اخیر برای مسدود کردن ترافیک p2p/sharing استفاده می کند.
/etc/config/fstab نقاط را سوار کنید و تعویض کنید
/etc/config/hd-idle یک شبح غیرفعال دیگر برای هارد دیسک های متصل
/etc/config/httpd گزینه های وب سرور (Busybox httpd، منسوخ شده)
/etc/config/ipset-dns ipset-dns را پیکربندی کنید
/etc/config/luci پیکربندی پایه LuCI
/etc/config/luci_statistics پیکربندی بسته آماری
/etc/config/mini_snmpd تنظیمات mini_snmpd
/etc/config/minidlna تنظیمات MiniDLNA
/etc/config/mjpg-streamer برنامه پخش جریانی برای وب کم های سازگار با Linux-UVC
/etc/config/mountd دیمون خودکار OpenWrt
/etc/config/mroute فایل های پیکربندی برای چندین مسیر WAN
/etc/config/multiwan پیکربندی ساده چند WAN
/etc/config/mwan3 پیکربندی چند WAN با تعادل بار و شکست
/etc/config/nodogsplash پیکربندی nodogsplash
/etc/config/ntpclient گرفتن زمان مناسب
/etc/config/nut_server کنترل یک UPS (منبع تغذیه بدون وقفه) و/یا اشتراک گذاری با سایر میزبان ها
/etc/config/nut_monitor نظارت بر یک UPS (منبع تغذیه اضطراری) از یک میزبان راه دور یا سرور محلی آجیل
/etc/config/nut_cgi رابط کاربری وب برای NUT (مشاهده فقط در UCI)
/etc/config/p910nd پیکربندی برای چاپگر غیر اسپولینگ daemon p910nd.server
/etc/config/pure-ftpd پیکربندی سرور Pure-FTPd
/etc/config/qos اجرای کیفیت خدمات برای آپلود
/etc/config/racoon Racoon IPsec Daemon
/etc/config/samba تنظیمات فایل مایکروسافت و دیمون خدمات چاپ
/etc/config/snmpd تنظیمات SNMPd
/etc/config/sqm تنظیمات SQM
/etc/config/sshtunnel تنظیمات بستهsshtunnel
/etc/config/stund پیکربندی سرور STUN
/etc/config/tinc پیکربندی بسته tinc
/etc/config/tor پیکربندی Tor
/etc/config/tor-hs پیکربندی سرویس های مخفی Tor
/etc/config/transmission پیکربندی بیت تورنت
/etc/config/uhttpd گزینه های وب سرور (uHTTPd)
/etc/config/upnpd تنظیمات سرور miniupnpd UPnP
/etc/config/users پایگاه داده کاربران برای خدمات مختلف
/etc/config/ushare تنظیمات سرور UPnP را به اشتراک بگذارید
/etc/config/vblade vblade userspace AOE target
/etc/config/vnstat تنظیمات دانلودر vnstat
/etc/config/wifitoggle وای فای را با یک دکمه روشن کنید
/etc/config/wol Wake-on-Lan: wol
/etc/config/znc پیکربندی ZNC bouncer

منبع : https://openwrt.org/docs/guide-user/base-system/uci

لیست دستورات Uci در openwrt

Command  هدف شرح
commit [<config>] تغییرات فایل پیکربندی داده شده یا اگر هیچ کدام داده نشده است، تمام فایل های پیکربندی را در سیستم فایل می نویسد. تمام دستورات «uci set»، «uci add»، «uci rename» و «uci delete» در یک مکان موقت قرار می‌گیرند و با «uci commit» فوراً فلش می‌شوند. این پس از ویرایش فایل های پیکربندی با ویرایشگر متن مورد نیاز نیست، بلکه برای اسکریپت ها، رابط های کاربری گرافیکی و سایر برنامه هایی که مستقیماً با فایل های UCI کار می کنند لازم است.
batch یک اسکریپت UCI چند خطی را اجرا می کند که معمولاً در یک دستور سند اینجا پیچیده می شود.
export [<config>] پیکربندی را در قالب قابل خواندن ماشین صادر می کند. به صورت داخلی برای ارزیابی فایل های پیکربندی به عنوان اسکریپت های پوسته استفاده می شود.
import [<config>] فایل های پیکربندی را در نحو UCI وارد می کند.
changes [<config>] تغییرات مرحله‌ای را در فایل پیکربندی داده‌شده یا اگر هیچ کدام داده نشده است، همه فایل‌های پیکربندی را فهرست کنید.
add <config> <section-type> یک بخش ناشناس از نوع section-typeبه پیکربندی داده شده اضافه کنید.
add_list <config>.<section>.<option>=<string> رشته داده شده را به یک گزینه لیست موجود اضافه کنید.
del_list <config>.<section>.<option>=<string> رشته داده شده را از یک گزینه لیست موجود حذف کنید.
show [<config>[.<section>[.<option>]]] گزینه، بخش یا پیکربندی داده شده را در نماد فشرده نشان دهید.
get <config>.<section>[.<option>] مقدار گزینه داده شده یا نوع بخش داده شده را بدست آورید.
set <config>.<section>[.<option>]=<value> مقدار گزینه داده شده را تنظیم کنید یا یک بخش جدید با نوع تنظیم شده به مقدار داده شده اضافه کنید.
delete <config>.<section>[.<option>] بخش یا گزینه داده شده را حذف کنید.
rename <config>.<section>[.<option>]=<name> نام گزینه یا بخش داده شده را به نام داده شده تغییر دهید.
revert <config>[.<section>[.<option>]] گزینه، بخش یا فایل پیکربندی داده شده را برگردانید.
reorder <config>.<section>=<position> یک بخش را به موقعیت دیگری منتقل کنید.

-c <path> مسیر جستجو را برای فایل‌های پیکربندی تنظیم کنید (پیش‌فرض: /etc/config) 
-d <str> تعیین‌کننده جداکننده مقادیر لیست در uci نشان می‌دهد 
-f <file> استفاده از <file> به‌عنوان ورودی به جای stdin 
-m هنگام وارد کردن، داده‌ها را در یک بسته موجود ادغام کنید 
-n نام بخش‌های بدون نام در صادرات (پیش‌فرض) 
-N بخش‌های بدون نام را نام‌گذاری نکنید 
-p <path> یک مسیر جستجو برای فایل‌های تغییر پیکربندی 
اضافه کنید -P <path> یک مسیر جستجو اضافه کنید فایل‌ها را تغییر دهید و از آن به‌عنوان پیش‌فرض استفاده کنید 
-q حالت آرام (پیام‌های خطا را چاپ نکنید) - 
حالت اجباری سخت (توقف خطاهای تجزیه‌کننده، پیش‌فرض) 
-S غیرفعال کردن حالت سخت 
-X از نحو توسعه‌یافته در «نمایش» استفاده نکنید

نمونه دستورات UCI برای شبکه :

Display just the value of an option

uci get httpd.@httpd[0].port

Append an entry to a list

uci add_list system.ntp.server='0.de.pool.ntp.org'

Replace a list completely

uci delete system.ntp.server
uci add_list system.ntp.server='0.de.pool.ntp.org'
uci add_list system.ntp.server='1.de.pool.ntp.org'
uci add_list system.ntp.server='2.de.pool.ntp.org'

Adding a new section to subsystem configuration

uci add SUBSYSTEM_NAME SECTION_NAME

It will generate a new section called SECTION_NAME inside the subsystem called SUBSYSTEM_NAME. Afterwards you can add keys to this section as normal. It will print an alphanumeric code that you can use as “section” for further adding keys to it.

See this example:

uci add firewall rule
uci set firewall.@rule[-1].src='wan'

Showing the not-yet-saved modified values

uci changes

Saving modified values of a single subsystem

uci commit SUBSYSTEM_NAME 
reload_config

Saving all modified values

uci commit
reload_config

دسترسی SSH برای تازه واردان

یکی از روش های مدیریت OpenWrt استفاده از رابط خط فرمان بر روی SSH است. OpenWrt به طور پیش فرض به اتصالات SSH ورودی در پورت گوش می دهد 22/tcp. برای “ssh into your router”، می توانید با استفاده از آدرس IP LAN روتر خود، دستور زیر را در شبیه ساز ترمینال وارد کنید که معمولاً عبارت است از : 192.168.1.1

ssh root @ 192.168.1.1

اولین باری که به روتر خود ssh می کنید، احتمالاً هشداری در مورد اثر انگشت کلید RSA خواهید دید . اگر مطمئن هستید که این آدرس دستگاه OpenWrt شماست، به سادگی تایپ yesکرده و Return را فشار دهید. سپس رمز عبوری که به روتر خود داده اید را وارد کنید یا اگر این تنظیمات اولیه است، Return را فشار دهید. در اینجا یک جلسه نمونه است:

$ ssh [email protected] <== شما این را تایپ کنید
اصالت میزبان "192.168.1.1 (192.168.1.1)" قابل اثبات نیست.
اثر انگشت کلید RSA SHA256:4VbDA/MOc7inPiyllF5f0r3Q6iEx89ddKdhLGBovsiY است.
آیا مطمئن هستید که می خواهید به اتصال ادامه دهید (بله/خیر)؟ بله <== و این
هشدار: "192.168.1.1" (RSA) برای همیشه به لیست میزبان های شناخته شده اضافه شد.
رمز عبور [email protected]: <== و رمز عبور در اینجا

BusyBox نسخه 1.28.4 () پوسته داخلی (خاکستر)

  _______ ________ __
 | |.-----.-----.-----.| | | |.----.| |_
 | - || _ | -__| || | | || _|| _|
 |_______|| __|_____|__|__||________||__| |____|
          |__| بی سیم
 ------------------------------------------------ ---
 OpenWrt 18.06.2، r7676-cddd7b4c77
 ------------------------------------------------ ---

root@OpenWrt:~# <== دستور next را در اینجا تایپ کنید

برای پایان دادن به جلسه ssh به روتر خود، تایپ کرده exitو Return را فشار دهید.

بقیه این صفحه چندین شبیه ساز ترمینال را توضیح می دهد که ویندوز، لینوکس یا macOS می توانند برای دسترسی به دستگاه OpenWrt شما استفاده کنند.

توجه: برای افزودن یک کلید عمومی SSH به دستگاه OpenWrt خود، از رابط وب LuCI رجوع کنید

شبیه سازهای ترمینال ویندوز

ترمینال ویندوز یا گزینه های قدیمی PowerShell، Command Prompt، ConHost یا WSL Bash در دسترس هستند. برنامه های شخص ثالث مانند PuTTY ، MinGW (نصب شده با Git)، Cmder، SmarTTY، و WinSCP نیز شبیه سازهای ترمینال هستند که می توانند SSH را در روتر OpenWrt ارائه دهند.

ترمینال های داخلی ویندوز 10/11

Windows Terminal ، PowerShell و Command Prompt اجازه استفاده از سرویس گیرنده SSH را می دهد. آن کلاینت اکنون به صورت پیش‌فرض در دسترس است، اما اگر نسخه ویندوز شما قدیمی‌تر است، می‌توانید این راهنما را برای فعال کردن SSH دنبال کنید .

اگر یک توزیع WSL نصب کرده اید ، کلاینت SSH معمولاً در آنجا از قبل نصب شده است.

اگر مستقیماً راه‌اندازی کنید cmd.exe، powershell.exeیا wsl.exeترمینال قدیمی ConHost باز می‌شود. در غیر این صورت، می توانید ترمینال مدرن ویندوز را از فروشگاه MS نصب کنید و هر یک از این پوسته ها را از آنجا انتخاب کنید.

  1. هر یک از شبیه سازهای ترمینال بالا را باز کنید و بنویسید (“ssh” فرمان است، “root” کاربر OpenWrt است که به آن متصل می شوید و “192.168.1.1” IPssh [email protected] پیش فرض OpenWrt است ).
  2. پیامی مبنی بر پذیرش یک کلید جدید از دستگاه OpenWrt وجود دارد، “بله” را بنویسید و کلید Enter را فشار دهید.
    1. اگر به دلایلی OpenWrt را مجدداً نصب کرده باشید، دستگاه کلید دیگری خواهد داشت و با خطای عدم تطابق کلید مواجه می شوید. خطا بیان می کند که خط فرمان برای کپی-پیست کردن در ترمینال برای حذف کلید قدیمی و ادامه دادن چیست. انجامش بده و دوباره امتحان کن اگر با این کار خطا برطرف نشد، ممکن است لازم باشد حذف کنید C:\Users\yourusername\.ssh\known_hostsو دوباره امتحان کنید.
  3. اگر می‌خواهید جلسه را ببندید، «خروج» را بنویسید.

ویژگی اختیاری SSH ویندوز همچنین شامل کلاینت SCP است (برای باز کردن/ویرایش/دانلود/آپلود فایل ها در OpenWrt از طریق SSH ). از آموزش های google for SCP برای یادگیری نحوه استفاده از آن استفاده کنید. در غیر این صورت، از WinSCP استفاده کنید که برای اهداف SCP راحت تر است.

پاورشل

Powershell دسترسی SSH را فراهم می کند .

زیرسیستم ویندوز برای لینوکس (WSL)

زیرسیستم ویندوز برای لینوکس روشی مناسب برای اجرای یک محیط لینوکس به انتخاب شما از جمله اکثر ابزارهای خط فرمان، ابزارهای کمکی و برنامه های کاربردی مستقیماً در ویندوز است. برای جزئیات دقیق نحوه نصب WSL در ویندوز 10، به مستندات مایکروسافت مراجعه کنید: https://docs.microsoft.com/en-us/windows/wsl/install-win10

بتونه

PuTTY به شما امکان دسترسی خط فرمان به OpenWrt را می دهد.

  1. PuTTY را دانلود کنید، 32 بیت putty.exeرا از Alternative binary filesبخش دریافت کنید.
  2. در سرویس گیرنده ویندوز خود شروع putty.exeکنید → پنجره ورود PuTTY ظاهر می شود.
  3. به Sessionرده پنجره ورود PuTTY بروید، به دنبال فیلد بگردید و به سادگی آدرس IP (به عنوان مثال 192.168.1.1 ) دستگاه OpenWrt خود را وارد کنید، پورت 22 پیش فرض ارائه شده را نگه دارید .Host Name (or IP address)
  4. روی Openدکمه در پایین کلیک کنید تا یک اتصال باز شود. با این کار یک پنجره پوسته ظاهر می شود که از شما خواسته می login asشود. با رمز عبور OpenWrt که مدتی قبل تعریف کرده اید به عنوان root وارد شوید. اگر هنوز رمز عبوری را روی “root” تنظیم نکرده اید، رمز عبور از شما خواسته نمی شود.
  5. تمام شد، شما وارد خط فرمان OpenWrt شده اید.

تنظیم احراز هویت مبتنی بر کلید.

  1. یک جفت کلید با استفاده از puttygen.exe. کلید خصوصی را در رایانه شخصی ذخیره کنید و کلید عمومی را به /etc/dropbear/authorized_keysدستگاه OpenWrt خود اضافه کنید.
  2. Connection → SSH → Auth: در کادر «Parameters Authentication» در زیر «Private key file for Authentication» مسیر فایل کلید خصوصی خود را برای این اتصال (مثلاً openwrt.ppkفایلی که قبلا ایجاد کرده اید) ذکر کنید. بهترین کار این است که روی «مرور…» کلیک کنید و فایل را از طریق گفتگوی فایل انتخاب کنید.

اتصالات خودکار

  1. اتصال → داده: در کادر «جزئیات ورود»، «نام کاربری ورود خودکار» را وارد کنید root.
  2. یک جلسه ذخیره شده را بارگیری، ذخیره یا حذف کنید، openwrt.lanدر Saved Sessions وارد شده و روی دکمه Save کلیک کنید.
  3. برای ایجاد یک میانبر PuTTY با ورود خودکار، یکی ایجاد کنید و جلسه ذخیره شده را با یک @علامت اضافه کنید، به عنوان مثال PuTTY را با:putty.exe @openwrt.lan

WinSCP

WinSCP به شما امکان می دهد فایل سیستم OpenWrt را در Windows Exlorer مانند GUI -style مرور کنید.

  1. WinSCP را دانلود کنید، نسخه بتا Installation packageیا غیربتا را دریافت portable executablesکنید و آنها را در کلاینت ویندوز خود نصب یا از حالت فشرده خارج کنید
  2. در کلاینت ویندوز خود شروع WinSCP.exeکنید، پنجره ورود به سیستم WinSCP ظاهر می شود
  3. روی New Siteسمت چپ کلیک کنید، مطمئن شوید که روی scpFile protocol تنظیم شده است، سپس آدرس IP دستگاه OpenWrt خود (192.168.1.1) را در سمت راست وارد کنید، پورت پیش فرض را نگه دارید . در root root ، در ، رمز عبور root خود را وارد کنید (یا اگر هنوز رمز عبور تنظیم نکرده اید، آن را خالی بگذارید)Host name22User namePassword
  4. Loginدر پایین پنجره کلیک کنید .
  5. انجام شده. اکنون یک نمای Exlorer مانند از سیستم فایل OpenWrt خود دارید.

ویرایش فایل های پیکربندی OpenWrt با ویرایشگر رابط کاربری گرافیکی یکپارچه WinSCP.

  1. برای ویرایش یک فایل پیکربندی OpenWrt با ویرایشگر مبتنی بر رابط کاربری گرافیکی WinSCP ، فقط روی فایل در WinSCP کلیک راست کرده و Editاز منوی زمینه انتخاب کنید.

Cmder

Cmder برای ویندوز یک شبیه ساز ترمینال منبع باز است که بر روی ویندوز اجرا می شود. استفاده از آن رایگان است و یک “پوسته خط فرمان” آسان را ارائه می دهد که به شما امکان می دهد به OpenWrt ssh کنید. فونت های جذاب و رنگ بندی آن برای چشم ها آسان است. توزیع کامل ترجیح داده می شود (به توزیع کوچک )، زیرا یک شبیه سازی bash را با مجموعه ای از دستورات Unix-y ارائه می دهد.

  1. Cmder را دانلود کنید .
  2. فایل cmder.zip را از حالت فشرده خارج کنید.
  3. پوشه Cmder را باز کنید و روی نماد Cmder دوبار کلیک کنید. پنجره Cmder را می بینید که مشابه تصویر زیر باز می شود.
  4. برای ssh به روتر OpenWrt در 192.168.1.1، تایپ کنید ssh [email protected]و سپس Return را فشار دهید.

SmartTTY

SmarTTY به شما امکان دسترسی خط فرمان به OpenWrt را می دهد و به شما امکان می دهد فایل ها را در OpenWrt باز/ویرایش/دانلود/آپلود کنید و به طور کلی مدرن تر و کاربرپسندتر از PuTTY است (ابزار دیگری که در زیر توضیح داده شده است).

  1. SmartTTY را دانلود کنید، «دانلود» را برای نصب‌کننده یا «نسخه قابل حمل» را انتخاب کنید اگر می‌خواهید آن را به عنوان یک برنامه مستقل که بدون نصب کار می‌کند، انتخاب کنید.
  2. پس از نصب یا پس از باز کردن آرشیو، روی فایل اجرایی SmartTTY دوبار کلیک کنید.
  3. با پنجره ای با دو گزینه روبرو می شوید، روی “تنظیم یک اتصال SSH جدید ” دوبار کلیک کنید (گزینه دیگر برای اتصالات سریال است، برای دانگل های usb- TTL و مواردی که به پین ​​های سریال اشکال زدایی دستگاه روی برد متصل می شوید، برنده شدیم. اکنون از آن استفاده نکنید).
  4. پنجره به تنظیمات SSH تغییر می کند ، اطلاعات زیر را بنویسید:
    1. نام میزبان: آدرس IP دستگاه OpenWrt (پیش‌فرض 192.168.1.1 است )
    2. نام کاربری: root (این “مدیر” و تنها کاربر در OpenWrt پیش فرض است)
    3. رمز عبور: این قسمت را برای اولین اتصال خود خالی بگذارید، سپس رمز عبوری را که تنظیم کرده اید بنویسید (چه در Luci GUI یا بعد از اولین دسترسی SSH )
  5. روی دکمه “اتصال” در پایین کلیک کنید و اکنون صفحه ترمینال بزرگی را خواهید دید
  6. یک میان‌افزار پیش‌فرض OpenWrt فاقد مؤلفه سرور است که به شما امکان می‌دهد فایل‌ها را در SmartTTY باز/ویرایش/مشاهده/آپلود/دانلود کنید، بنابراین پس از اتصال به اینترنت opkg update && opkg install openssh-sftp-serverبرای نصب آن بنویسید. اگر مرحله بعدی ناموفق بود، ممکن است لازم باشد دستگاه OpenWrt را مجددا راه اندازی کنید تا این سرویس جدید به درستی راه اندازی شود.
  7. اکنون می‌توانید روی File → Open a Remote File کلیک کنید تا پنجره‌ای باز شود که سیستم فایل دستگاه OpenWrt را نشان می‌دهد و می‌توانید در آن پیمایش کنید و فایل‌های متنی را برای مثال به طور معمول باز کنید (آنها در یک پنجره ویرایشگر متنی SmartTTY باز می‌شوند)
  8. اگر می‌خواهید فایل‌ها را در/از یک پوشه خاص در دستگاه آپلود یا دانلود کنید، می‌توانید روی منوی SCP کلیک کنید و مناسب‌ترین اقدام را از آنجا انتخاب کنید.

پس از اولین باری که به دستگاهی وصل شدید، SmarTTY یک نمایه را ذخیره کرد، بنابراین می توانید با دوبار کلیک کردن روی نماد آن در اولین پنجره ای که هنگام راه اندازی SmartTTY می بینید، دوباره به همان دستگاه (در آن آدرس IP با آن رمز عبور) متصل شوید. در صورت نیاز می توانید روی این نماد نمایه کلیک راست کنید تا دوباره آن را ویرایش کنید.

شبیه ساز ترمینال لینوکس

همه توزیع‌های لینوکس یک سرویس گیرنده ssh خط فرمان را به عنوان بخشی از نصب پیش‌فرض ارائه می‌کنند.

  1. یک شبیه ساز ترمینال را باز کنید و بنویسید (“ssh” فرمان است، “root” کاربر OpenWrt است که به آن متصل می شوید و “192.168.1.1” IPssh [email protected] پیش فرض OpenWrt است )
  2. پیامی در مورد پذیرش یک کلید جدید از دستگاه OpenWrt وجود دارد، “بله” را بنویسید و کلید Enter را فشار دهید.
    1. اگر به دلایلی OpenWrt را مجدداً نصب کرده باشید، دستگاه کلید دیگری خواهد داشت و با خطای عدم تطابق کلید مواجه می شوید. خطا بیان می کند که خط فرمان برای کپی-پیست کردن در ترمینال برای حذف کلید قدیمی و ادامه دادن چیست.
  3. اگر می خواهید جلسه را ببندید، “خروج” را بنویسید

لینوکس همچنین معمولاً دارای کلاینت های SCP/ SFTP (برای باز کردن/ویرایش/دانلود/آپلود فایل ها در OpenWrt) است که ممکن است به صورت پیش فرض نصب شوند یا نباشند. شما باید اسناد توزیع خود را جستجو کنید یا با رابط مدیریت بسته خود برای “scp” و “sftp” جستجو کنید تا مکان و وضعیت نصب فعلی آن را پیدا کنید. راهنمای scp را برای سرویس گیرنده SCP خط فرمان بخوانید یا چند آموزش را در گوگل جستجو کنید تا نحوه استفاده از آن را بیاموزید.

فرمانده نیمه شب

Midnight Commander نرم افزار Norton Commander مانند فایل منیجر است که روی لینوکس و macOS کار می کند. می توانید از طریق mc به فایل های راه دور در OpenWrt دسترسی داشته باشید:

  1. ‘F9’ را فشار دهید
  2. تنظیمات پنل “چپ” را انتخاب کنید
  3. “پیوند پوسته” را انتخاب کنید
  4. [email protected]/” را وارد کرده و OK را فشار دهید
  5. اکنون لیستی از فایل ها و دایرکتوری ها را در ریشه OpenWrt خواهید دید

در داخل بر روی scp مانند پروتکل FISH کار می کند بنابراین به سرور SFTP نصب شده نیاز ندارد .

شبیه سازهای ترمینال macOS

در macOS (مک OSX سابق) هر شبیه ساز ترمینال به شما امکان ssh را می دهد.

  1. ترمینال – برنامه ترمینال داخلی macOS، آن را در /Applications/Utilities پیدا کنید.
  2. iTerm2 یک برنامه ترمینال بسیار پیشرفته، ابزار اهدایی – ارزشش را دارد.

برای ssh به روتر OpenWrt خود در 192.168.1.1، تایپ کنید ssh [email protected]، سپس Return را فشار دهید.

شبیه ساز ترمینال ChromeOS

منبع : https://openwrt.org/docs/guide-user/base-system/uci

منبع2 :https://openwrt.org/docs/guide-quick-start/sshadministration

آیا این نوشته برایتان مفید بود؟

یک نظر

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

لوگو png امداد شبکه