انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید

اوبونتو ۲۶٫۰۴ «راکون ثابت‌قدم» با پشتیبانی بلند مدّت منتشر شد 🎊

آخرین ارسال‌ها

صفحه: 1 [2] 3 4 ... 10
11
اوایل همیشه این سوال فکرم رو درگیر می‌کرد که از بین این‌همه روش مختلف برای نصب برنامه در لینوکس، بالاخره کدوم رو باید انتخاب کنم؟ نسخه مخازن رسمی، فلت‌پک (Flatpak)، اسنپ (Snap)، دیستتروباکس (Distrobox) یا روش‌های دیگه؟ اصلاً چرا باید این‌همه تنوع در روش‌های نصب نرم‌افزار وجود داشته باشه؟
بعد از کلی آزمایش، دست‌کاری سیستم و خوندن فروم‌ها و مقالات مختلف، بالاخره تونستم به یک دسته‌بندی و نتیجه‌گیری منطقی برسم که می‌خوام تو این مقاله باهاتون به اشتراک بذارم.

اصل طلایی: سیستم رو خراب نکنید! (Don't Break Debian)
قبل از بررسی روش‌ها، باید مهم‌ترین اصل بازی رو یاد بگیریم؛ اصلی که تو ویکی دبیان به زیبایی با عنوان «دبیان را خراب نکنید!» (Don't Break Debian) اومده. این قانون فقط مخصوص دبیان نیست و تقریبا شامل حال تمام توزیع‌ها میشه.
وقتی از سیستم‌عامل به صورت روزمره استفاده می‌کنید، هماهنگی پکیج‌ها و عدم تداخلشون حرف اول رو میزنه. به عبارت ساده‌تر: ما هرگز کمی بروزتر بودن رو فدای break شدن (از کار افتادن) سیستم نمیکنیم.
یکی از مهم‌ترین عادت‌های یک کاربر یا توسعه‌دهنده موفق لینوکس، احترام به پایداری سیستم اصلیه. اگر پکیج اضافه‌ای از یک مخزن خاص می‌خواید یا کاربردهای ویژه‌ای مد نظرتونه، به جای دست‌کاری و ناپایدار کردن سیستم‌عامل پایه، باید سراغ راه‌حل‌های ایزوله مثل Distrobox (که مثل داکر اما برای زیرسیستم شخصی عمل می‌کنه)، Flatpak و... برید. همیشه اول باید بتونید برنامه رو روی یک نسخه پایدار بسازید و اجرا کنید، بعد در صورت نیاز اون رو به نسخه‌های جدیدتر آپدیت کرده و مطابقت بدید.
با در نظر گرفتن این اصل، بریم سراغ بررسی روش‌های نصب:

۱. مخازن پیش‌فرض توزیع (Official Repositories)
مطمئن‌ترین و بی‌دردسرترین روش، استفاده از پکیج‌منیجر پیش‌فرض خود توزیعه؛ ابزارهایی مثل apt ،dnf یا pacman که هر کدوم معماری و توزیع‌های مشخصی رو پوشش میدن.
کاربرد اصلی: نصب ابزارها و برنامه‌های پایه سیستم (Core Utilities) مثل ادیتورهای متنی، زبان‌های برنامه‌نویسی و ابزارهای سیستمی.
چرا این روش؟ چون برای این ابزارها، پایداری و سازگاری حداکثری با سیستم‌عامل بسیار حیاتی‌تر از «آخرین نسخه بودن» است.
یک نکته مهم: اگر واقعاً برای ابزارهای پایه هم مکرراً به آخرین نسخه نیاز دارید، به جای دست‌کاری مخازن، بهتره کلاً توزیع خودتون رو عوض کنید و سراغ توزیع‌هایی برید که نسخه‌های بروزتر رو رسماً انتشار میدن؛ مثلاً اوبونتو یا فدورا، و اگر باز هم بروزتر می‌خواید، توزیع‌های غلطان (Rolling Release) مثل اوپن‌سوزه تامبلوید (OpenSUSE Tumbleweed) یا آرچ لینوکس (Arch Linux).
پس چرا همه فقط از پکیج‌منیجر توزیع خودشون استفاده نمی‌کنند؟
چون در کنار تمام مزایا، با چند چالش مواجه می‌شیم:
بروز نبودن برخی برنامه‌ها (به دلیل سیاست‌های پایداری توزیع).
محدود بودن برنامه‌های پشتیبانی شده
خطر به‌هم‌ریختن توزیع، کثیف شدن سیستم و بروز مشکل هنگام دریافت و اعمال آپدیت‌ها در صورت افزودن مخازن غیررسمی.
همین مشکلات باعث شد روش‌های جدیدتری توسعه پیدا کنند که در ادامه بررسی می‌کنیم.

۲. مخازن بک‌پورت دبیان (Debian Backports)
اگر از دبیان پایدار (Debian Stable) استفاده می‌کنید، این مخازن پل امنی هستند برای اینکه نرم‌افزارهای انتخابی خودتون رو بروز کنید، بدون اینکه مجبور باشید پایداری کل سیستم رو با رفتن به شاخه‌های Testing یا Unstable به خطربندازید.
سناریوی واقعی: فرض کنید دبیان استیبل رو روی یک سرور یا سیستم سیستم روزمره نصب کردید و همه چیز عالی کار می‌کنه. اما یک کارت گرافیک جدید خریدید که هسته (Kernel) ۲ سال پیشِ دبیان استیبل اون رو نمی‌شناسه!
راه‌حل: به جای ارتقای کل سیستم‌عامل به یک نسخه ناپایدار، مخزن Backports رو فعال می‌کنید.
نحوه کار: توسعه‌دهندگان دبیان، برنامه یا کربل جدید رو از شاخه‌های Testing/Sid می‌گیرند و اون رو با کتابخانه‌های قدیمی و امنِ Debian Stable مجدداً کامپایل می‌کنند.
نتیجه: شما می‌تونید فقط کربل یا مثلاً LibreOffice رو به آخرین نسخه ارتقا بدید، در حالی که ۹۹٪ سیستم‌عامل شما کاملاً دست‌نخورده، دست‌نیافتنی و پایدار باقی می‌مونه.

۳. مخازن شخص ثالث و PPAها (PPA / AUR / Copr)
در اوبونتو با PPA، در آرچ با AUR و در فدورا با Fedora Copr طرف هستیم. این مخازن در نگاه اول بسیار جذاب به نظر می‌رسند، اما استفاده مداوم و بی‌درنگ از اون‌ها دقیقاً اصل اول یعنی «دبیان (سیستم) را خراب نکنید» رو زیر سوال می‌بره.
دیدگاه تجربی من درباره این روش: تا جایی که امکان داره برای نصب پکیج‌ها سراغ Third-partyها نرید و ترکیب پیش‌فرض سیستم‌عامل رو دست‌کاری نکنید؛ چرا که این کار موقع آپدیت، ریکاوری و حفظ امنیت، باگ‌ها و مشکلات غیرمنتظره‌ای ایجاد می‌کنه.
چه زمانی مجاز هستیم؟ فقط زمانی که پکیجی واقعاً ارزشش رو داشته باشه، وابستگی‌ها (Dependencies) و کتابخانه‌های سنگینی به سیستم اضافه نکنه که پایداری رو تهدید کنه، و مهم‌تر از همه بدانید چطور در صورت نیاز تمیز حتماً پاکش کنید (Clean Uninstall).
مثال شخصی: من خودم برای نصب افزونه better blur در محیط KDE یا نصب ابزار starship (برای زیباسازی ترمینال) از این روش استفاده کردم. این روش بیشتر به درد پکیج‌های سبک و خاصی می‌خوره که در مخازن رسمی نیستند و شما به نوعی "فن" اون پکیج هستید! اگه برای پکیج‌های سنگین می‌خواید از این روش استفاده کنید توصیه من استفاده به همراه Distrobox هست که جلوتر می‌گم.
(نکته: این قابلیت در همه توزیع‌ها یکسان نیست؛ مثلاً در دبیان پایدار مفهوم PPA به شکل اوبونتو وجود نداره).

۴. شاخه‌های تست و ناپایدار (Debian Testing / Sid - Unstable)
تقریباً اکثر توزیع‌ها چنین شاخه‌هایی دارند، اما استفاده از اون‌ها به عنوان پکیج‌منیجر سیستمِ استفاده روزمره (Daily Driver) اصلاً توصیه نمیشه.
چرا دبیان Sid (Unstable) برای استفاده روزمره مناسب نیست؟
مکانیزم کار: وقتی توسعه‌دهنده‌ای نسخه جدیدی از یک نرم‌افزار رو منتشر می‌کنه، اون پکیج ابتدا وارد Sid میشه.
ریسک بالا: Sid هیچ لایه امنیتی یا لایه‌ی تستِ تاخیری نداره. اگر پکیجی با یک باگ بحرانی آپلود بشه که محیط گرافیکی یا روند بوت سیستم رو بشکنه، کاربر Sid همان لحظه اون شکست رو تجربه خواهد کرد!
مشکل دانگرید (Downgrade): اگر در دبیان استیبل مخازن Sid رو فعال و سیستم رو آپگرید کنید، سیستم از حالت اورجینال خارج میشه. فرایند Downgrade هم به طور پیش‌فرض پشتیبانی نمیشه. تنها راه برگشت اینه که یا سیستم رو از نو نصب کنید یا مخازن رو به Stable برگردونید و منتظر بمونید تا نسخه جدید دبیان (هر دو سال یک‌بار!) منتشر بشه تا پکیج‌های پایدار روی پکیج‌های Sid شما Overwrite بشن. البته اگه کسی Sid را وارد Stable کرده باشه، لزوماً با انتشار نسخه بعدی Debian مشکلش حل نمی‌شه و در بسیاری از موارد نصب مجدد سیستم یا عملیات Downgrade پیچیده لازمه.
اگرچه تو فروم‌ها کاربرانی رو می‌بینیم که میگن «من چند ماهه دارم بدون مشکل از Sid استفاده می‌کنم»، اما حقیقت اینه که این شاخه‌ها برای تست‌های اتوماتیک، توسعه‌دهندگان مخازن و کسانی ساخته شده که عاشق نرم‌افزارهای Bleeding-edge هستند و دانش کافی برای رفع مشکلات سیستم از طریق ترمینال رو دارند.

(پایان بخش اول - در بخش بعدی سراغ روش‌های مدرن‌تر مثل Flatpak، Snap، AppImage و Distrobox خواهیم رفت...)
12
سلام ممنون. بله واقعا برای کسانی که دستگاه روت‌شده دارند روش خوبی هست(با رعایت نکات جانبی)
اما فکر کنم روش WARP برای paypal و دیگر موارد حساس باشه چون معمولا رنج آیپی‌های کلودفلر مشخص هست و ازشون استفاده زیادی می‌شه که البته خوب هرکسی بر حسب نیازش روش رو انتخاب می‌کنه.


آپدیت:
گفتیم که معمولا این کانفیگ‌های v2ray اعتمادی بهشون نیست و نقص‌های امنیتی جدی دارند که بارها تو مقالات خارجی بهش پرداخته شده:
https://amnezia.org/blog/internet-censorship-in-iran-q1-2026-and-forecastخصوصا وقتی مجبوریم از اشخاص شخص ثالث ناآشنا تهیه کنیم یا از سرویس‌های رایگان استفاده کنیم و با توجه به اینکه هر چندوقت یک‌بار مسئله جدیدی پیش میاد و پروتکل‌ها و آیپی و ... عوض می‌شن
خودمون هم بخوایم سرور vps بخریم و سرویس v2ray رو ستاپ کنیم هم وقت زیادی می‌بره هم اینکه در صورت نابلد بودن سریع فیلتر می‌شه و هم هزینه نسبتا زیادی رو داره و در نهایت هم آخرش شاید به هدف آیپی تمیز و قابل اعتمادی که قصد داریم نرسیم.
که در نهایت گفتیم راهکار استفاده از پروتکل‌های استاندارد و فروشندگان معتبر هست که باید نت تونل‌شده بین‌الملل داشته باشیم تا بتونیم به این سرویس‌ها دسترسی پیدا کنیم
که روش‌هایی که بالا گفتیم استفاده از خروجی نت بین‌الملل روتری بود که کانفیگ روی اون تنظیم شده بود.

حالا فرض کنید که نمی‌خواید از نت تونل‌شده یه دستگاه دیگه استفاده کنید
یه چند تا روش دیگه هم هست که با هم بررسیشون می‌کنیم:

افزونه‌های VPN مرورگر:
۱- شما به کانفیگ v2ray خودتون تو سیستم با TUN متصل می‌شید.
۲- حالا با افزونه‌های استاندارد فایرفاکس می‌تونید به سرورهای خاص پریمیومی که تهیه کردید دسترسی داشته باشید.
مثلا Proton VPN و Nord و TorGuard و خیلی از کمپانی‌های دیگه این افزونه‌های اختصاصی رو برای مرورگر دارند و اونجا به اکانتتون لاگین می‌کنید.

گر به IPهای Residential یا ISP برای سرویس‌های حساس نیاز دارید با جستجو در ردیت هم می‌تونید ببینید کدوم شرکت آیپی بهتری رو ارائه می‌ده و سرویس‌های حساس اون رو flag نمی‌کنند.
البته معمولا این سرویس‌ها در پلن‌های با نیاز خاص، کانفیگ وایرگارد اختصاصی می‌دن که با افزونه قابل دسترسی نیست.

استفاده از proxy chain داخل خود کلاینت V2Ray:
اکثر سایت‌های معروف فروش VPN کانفیگ وایرگارد رو هم به شما می‌دن باید بگردید تو قسمت مخصوص اون وبسایت پیدا کنید. مثلا اون شرکت‌هایی که بالا گفتم همه این قابلیت رو دارند.
از اونجایی که هسته sing-box به صورت native از پروتکل وایرگارد پشتیبانی می‌کنه شما می‌تونید داخل خود کلاینت v2ray، کانفیگ Wireguard و vmess و ... رو به هم chain کنید(با رفتن به گزینه add proxy chains). البته تو V2rayN این قابلیت هست تو Throne فعلا این قابلیت نیست.

استفاده از Wire Proxy:
من خودم استفاده از این روش رو بیشتر می‌پسندم چون کنترل خیلی خوبی روی خروجی دارید و واقعا روش سبک و پرسرعتی هم هست.

صفحه گیتهاب پروژه:
https://github.com/windtf/wireproxy
مراحل:
۱. کانفیگ V2ray رو با اپلیکیشن Throne در حالت TUN مود وصل بشید که به اینترنت آزاد دسترسی داشته باشید و کل سیستم رو در سطح پایین تونل کنه
۲. قبل از انجام این مرحله چک کنید که کانفیگ وایرگاردتون معتبر باشه. چون این سایت‌های فروش VPN معمولا تنها یک‌بار private key کانفیگ وایرگارد رو به شما نشون می‌دن و دفعه بعدی حتی اگر روی دانلود هم کلیک کنید اون قسمت رو با کاراکتر فرضی پر می‌کنند
فرض کنید محتویات کانفیگ خام ما چنین چیزی هست:
[Interface]
PrivateKey = censored
Address = 10.2.0.2/32
DNS = 10.2.0.1
CheckAlive = 1.1.1.1, 3.3.3.3
CheckAliveInterval = 3

[Peer]
PublicKey = censored
AllowedIPs = 0.0.0.0/0
Endpoint = 149.34.244.174:51820
حالا کانفیگ خودمون رو مشخص می‌کنیم با چه نوع پروتکل پروکسی و روی چه آیپی و پورتی اجرا بشه به این روش که این خط رو به انتهای این فایل اضافه می‌کنیم:
[Socks5]
BindAddress = 127.0.0.1:25344
و سپس اون رو ذخیره می‌کنیم و مسیر دقیق اون رو به خاطر داشته باشید.

۳. حالا اپ wireproxy رو که از گیتهاب دانلود کردید به این روش در ترمینال اجرا کنید(گرافیکی نیست و cli محور هست):
قبل از این مرحله، برای بار اول:
chmod +x wireproxyسپس اجرای وایرپروکسی به این روش:
./wireproxy --config "/path/to/file/YourWireguard.conf" می‌تونید یک tab جدید در ترمینال باز کنید و ببینید که آیا wire proxy روی این پروکسی و پورت کار می‌کنه یا خیر:
ss -lntp | grep wireproxy
۴. پس از این مراحل با روش تنظیم پروکسی برای برنامه‌ها در لینوکس که ابتدای مطلب گفتم خیلی راحت می‌تونید تعیین کنید که کدوم برنامه‌ها از این پروکسی استفاده کنند.
اینجا کنترل خیلی دقیق‌تری هم روی برنامه‌ها دارید کامل می‌شه مجبورشون کرد یا از پروکسی استفاده کنند و یا کانکشن قطع بشه(چیزی مثل kill switch)
و به راحتی هم می‌تونید در هر دو اپ بین کانفیگ‌های مختلف V2ray و Wireguard بدون تداخل با هم سوییچ کنید و لاگ‌هاشون رو مانیتور کنید.
مزیتی که این روش داره این هست که دیگه نگران این نیستید که اگر سیستم ریبوت بشه و حواستون نباشه بدون فعال کردن وایرگارد برید و با فایرفاکس سایت رو باز کنید
چون تا وایرگارد با موفقیت وصل نشه آدرس پروکسی کاملا غیرفعاله و فایرفاکسی که پروکسی روی اون ست کردید هیچی رو بالا نمیاره
حتی هر وقت هم از اپلیکیشن Throne کانفیگ v2ray رو قطع کردید و خواستید با اینترنت معمولی بگردید براتون مشکلی پیش نمیاد چون یا کانفیگ وایرگارد کاملا قطع می‌شه(با توجه به شرایط اینترنت فعلی) یا به احتمال کم متصل می‌مونه(که البته اگه این‌طور بود که نیازی به اون کانفیگ V2ray دیگه نداشتیم)
می‌تونید یک مرورگر جدا مثل Firefox Nightly رو داشته باشید که همیشه مجبور باشه از پروکسی استفاده کنه و صرفا از اون مرورگر برای کارهای حساس استفاده کنید.

استفاده از Proxy Provider ها :
یک آپشن خیلی خوب دیگه‌ای هم که پیدا کردم تهیه مستقیم پروکسی‌های استاندارد هست. از بس با محدودیت اینترنت سر و کله زدم و برام این قابلیت‌ها کار نمیکردن که این آپشن از یادم رفته بود و تو صفحه گیتهاب همین wireproxy آشنا شدم
برای مثال می‌تونید به این وبسایت نگاه کنید:
https://www.ipcook.comقبلش باید در مورد معتمد بودن این provider تحقیق کنید اما خوب این‌کار معمولا خیلی از تهیه اشتراک‌های اون vpn های بالا به صرفه‌تره وقتی که به اینترنت آزاد دسترسی دارید
و اصلا هدف طراحی‌شون هم همین بیزینس و کارهای این‌چنینی هست.
البته به شخصه امتحان نکردم اما تا جایی که در مورد مکانیزمش تحقیق کردم اگر ارائه‌دهنده کارش رو درست انجام بده روش خوبی هست.
روش استفاده اون هم که ابتدا با v2ray در حالت tun مود وصل می‌شید و سپس از این پروکسی‌ها استفاده می‌کنید یا حتی می‌تونید از proxy chain استفاده کنید.
البته یک نکته رو هم بگم: اگر از روش پروکسی SOCKS5 مستقیم (مثل همون سایت IPcook یا پروکسی‌های مشابه) استفاده می‌کنید، داستانش با وایرپروکسی یکم فرق داره. پروتکل SOCKS5 خودش به تنهایی هیچ رمزنگاری اضافه‌ای انجام نمیده و صرفاً ترافیک رو عبور میده.
البته این موضوع اصلاً جای نگرانی نداره و برای هدف اصلی ما مشکلی ایجاد نمی‌کنه. چون در نهایت سایت مقصد (مثل PayPal) فقط آی‌پی خروجی پروکسی ما رو می‌بینه و همه‌چیز کاملاً تمیز به نظر می‌رسه.صرفاً برای کسانی اهمیت داره که روی «شنود نشدنِ بسته‌ها توسط افراد میان‌راهی» حساسیت خیلی بالایی دارند، وگرنه برای کار با سرویس‌های حساس هیچ خطری ایجاد نمی‌کنه.
همچنین از اونجایی که امروزه تقریبا تمام سایت‌های حساس (مثل PayPal و صرافی‌ها) از پروتکل HTTPS استفاده می‌کنند، خود مرورگر ترافیک رو قبل از خروج رمزنگاری می‌کنه. پس اگر کانفیگ V2ray شما ناامن یا بدون رمزنگاری هم باشه، جای نگرانی نیست و ترافیک امن رد میشه.
ولی اگر به دنبال حریم خصوصی کامل و امنیت مطلق هستید یعنی دلتون می‌خواد حتی اسم اون وب‌سایتی هم که باز می‌کنید (دامنه/SNI) از دید سرور V2ray مخفی بمونه روش Wireproxy همچنان یک پله امن‌تر و برتر هست؛ چون وایرگارد کل ترافیک رو در پایین‌ترین لایه رمز می‌کنه و عملاً سرور V2ray هیچی از محتوا و مقصد شما نمی‌فهمه.




در پایان هم بگم که همه‌چیز فقط آیپی تمیز نیست. ثابت بودن آیپی و دستگاهی که با اون لاگین می‌کنید، Browser Fingerprint و گرفتن تست قبل از لاگین، و موارد دیگه هم در کار با سایت‌های حساس اهمیت دارن و یک نکات ریزی هست اگر رعایت کنید احتمال Flag شدن اکانت به شدت پایین میاد چون سرویس‌ها فقط IP رو بررسی نمی‌کنند مجموعه‌ای از سیگنال‌ها رو کنار هم می‌زارن
مثلا به این جدول نگاه کنید سیستم چیزی شبیه این می‌بینه:
مورد        وضعیت
IP           آلمان
Time Zone   تهران
زبان مرورگر   فارسی
Keyboard Layout   فارسی
ساعت سیستم   UTC+3:30
WebRTC           ایران
DNS        ایران
Browser Fingerprint   قبلاً از ایران دیده شده

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

در عمل، ثبات از بی‌نقص بودن مهم‌تره. کاربری که همیشه با همون دستگاه، همون مرورگر، همون IP و همون تنظیمات وارد می‌شه معمولا رفتار طبیعی‌تری از کاربری داره که هر روز کشور یا ip یا تنظیمات خودش رو عوض می‌کنه.
13
mdbook یک ابزار خط فرمان برای ساخت کتاب از روی پرونده‌های markdown است.
به این شکل که شما مطالب را در قالب فایل مارک‌داون می‌نویسید و mdbook آن‌ها را به html کامپایل می‌کند.
نتیجه یک محصول سبک و تمیز است.

این نرم‌افزار که برای ساخت مستندات، کتاب‌های فنی و آموزش‌ها بسیار مناسب است با زبان راست Rust نوشته شده است.


نشانی

https://rust-lang.github.io/mdBook/
14
سلام و عرض ادب؛ ممنون از دوست عزیز seyal که زحمت کشیدن و این مطالب رو با جزئیات و توضیجات لازم قرار دادن. منم صرفا شیوه‌ای که چند ساله خودم دارم استفاده می‌کنم رو قرار می‌دم همین.
بنده یه گوشی قدیمی داشتم(Redmi 9) که روتش کردم و با برنامه‌ی VPNHotspot و معمولا با کلاینت Hiddify تمام ترافیک رو از VPN می‌گذرونم. من خیلی نشت IP یا DNS واسم حائز اهمیت بود چون کوچک‌ترین لیک باعث می‌شد کارم مختل بشه که با فعال کردن Warp بر روی Hiddify و کانفیگ‌های معمولی v2ray تونستم بهترین نتیجه رو بگیرم.

https://github.com/mygod/vpnhotspot
15
با توجه به اینکه پروژه V بیشتر هدفش اتصال به اینترنت آزاد هست تا داشتن قابلیت‌های پیشرفته حریم خصوصی و فراهم کردن یک VPN تجاری،
باید کلاینتی که از اون استفاده می‌کنیم این رو ساپورت کنه که developer ها زیاد مانوری روی این قضیه نمی‌دن
هرچند با تنظیم صحیح و آگاه بودن کاربر تا حد زیادی می‌شه به این نتایج رسید.
من هم با تست‌هایی که داشتم زیاد اعتمادی به این kill switch تو خود کلاینت‌ها ندارم چون اصلا هدفشون این نیست.

برای همین هم هست که این روشی که بالا گفتیم می‌تونه مفید واقع بشه
چون که با داشتن اتصال اینترنت بین‌الملل به صورت ورودی Native در دستگاه، می‌تونیم از کلاینت‌ها و پروتکل‌های استاندارد VPN استفاده کنیم
و حالا با استفاده از اون اپ و پروتکل‌های استاندارد به قابلیت‌های kill switch و .. دسترسی داریم چون مخصوص این نیاز ساخته شدن.


16
ممنون از ارسال مفیدتون.
این روش قابلیت kill switch هم داره؟ اگه اضافه بشه خیلی خوب می‌شه.

17
خوب یک روش دیگه‌ای هم هست که به ذهنم رسید اجراش کنم و خروجی خوبی هم داد
یجورایی شبیه همون روش روتر Openwrt هست.

به این صورت که یک لپتاپ قدیمی داشتم و روش اوبونتو ریخته بودم
گفتم چطوره که بیایم و کانفیگ v2ray که داریم رو روی این دستگاه فعال کنیم و بعد خروجی اون رو با یک روتر پخش کنیم
یعنی اینکه لپتاپ با وایفای خودش به مودم/روتر ما وصل می‌شه حالا می‌تونه این اینترنتی رو که از این طریق دریافت می‌کنه به صورت تونل‌شده با پورت LAN خروجی بده که بعدا خروجی این پورت LAN رو به یک اکسس‌پوینت معمولی بدیم.
و حالا هر دستگاهی که به این Access Point وصل بشه یک اینترنت پروکسی‌شده رو دریافت می‌کنه.
حتی می‌تونید مستقیم این کابل LAN رو به یک لپتاپ دیگه وصل کنید و تو اون لپتاپ اینترنت تونل شده دریافت کنید.

این روش برای این خوبه که مثلا دستگاهی دارید به صورت native قابلیت تنظیم پروکسی نداره
یا اینکه یه توزیع لینوکسی خاصی رو می‌خواهید نصب کنید که همون اول باید به اینترنت بین‌الملل متصل باشید تا پکیج‌های ضروری اولیه رو بگیره


خوب بریم سراغ مراحل کار:
من این کار رو تو اوبنتو 26.04 انجام دادم و خیلی خوب کار می‌کرد.
سیستم مقصد خودم هم که خروجی رو تست کردم فدورا بود.
این دو تا اسم رو می‌گذارم که آموزش واضح‌تر باشه.
پس میزبان شد اوبنتو و مقصد هم فدورا.
دقت کنید من اکثر دستورات رو با sudo انجام می‌دم چون این سیستم من آزمایشی هست شما اگه می‌خواید انجام بدید یا کامل مطالعه کنید ببینید چطور وابستگی‌ها نصب می‌شن و کلاینت کار میکنه.


۱- با سیستم اوبونتو به وایفای که دارید متصل بشید

۲- دو تا لپتاپ رو با کابل LAN به همدیگه متصل کنید

۳- داخل اوبونتو این دستور رو اجرا کنید:
nm-connection-editorیک پنجره گرافیکی نمایش داده می‌شه
وارد تنظیمات قسمت Ethernet که به فدورا متصله بشید(در حالیکه گزینه Ethernet هایلایت هست اون چرخ‌دنده پایین گوشه سمت چپ صفحه رو بزنید)
بعد برید داخل قسمت IPV4 Setting و گزینه Shared to other computers رو از منوی Method انتخاب و ذخیره کنید و خارج بشید
تا الان نصف راه رو اومدیم اگه با فدورا از کابل LAN به اوبنتو متصل بشید می‌بینید که دسترسی به اینترنت براتون برقرار هست.

۴- نیاز به نرم‌افزاری داریم که بتونه کانفیگ ما رو در حالت TUN Mode اجرا کنه.
نرم‌افزارهای مختلفی رو امتحان کردم؛ هسته‌های خام که تنظیمات پیچیده‌ای داشتند و Beginner friendly نبود، V2rayN هم که TUN Modeاش دارای باگ بود هم تو فدورا هم اوبنتو، nekoray هم که TUN مودش کار می‌کرد قدیمی بود و کانفیگ‌های جدید وصل نمی‌شد. خیلی گشتم تا اینکه در نهایت به این نرم‌افزار رسیدم که عالی کار می‌کنه:
https://github.com/throneproj/Throneایشون از همون پروژه Nekoray استفاده می‌کنه اما به طور مرتب آپدیت هسته‌ها رو انجام میدن. برای نصب این نرم‌افزار نسخه .zip مخصوص لینوکس رو دانلود کنید و سپس اجرای این دستورات:
wget https://github.com/throneproj/Throne/releases/download/1.1.6/Throne-1.1.6-linux-amd64.zip
unzip Throne-1.1.6-linux-amd64.zip
cd Throne-1.1.6-linux-amd64
cd Throne
chmod +x ./Throne

۵- نرم‌افزار رو اجرا کنید
نکته مهم:
شاید وقتی این برنامه با فایل‌منیجر اجرا کنید ببیند که باز نمیشه.
داشتم ازش دلسرد می‌شدم که تو ترمینال اون رو به این صورت باز کردم(اگر برای شما هم باز نشد به این روش می‌تونید بفهمید مشکل از کجا بوده):
./Throneو معلوم شد که بعضی کتابخونه‌ها که برای اجراش لازم هستند رو نداره که به این روش نصب کنید:
sudo apt update
sudo apt install libopengl0 libgl1 libglx0 libgl1-mesa-glx
حالا باز با همون دستور قبلی پس از نصب این کتابخونه‌ها برنامه رو اجرا کنید.

۶- کانفیگ خودتون رو وارد نرم‌افزار کنید و پس از فعال کردن از قسمت بالای سمت راست گزینه TUN Mode رو تیک بزنید.

۷- تمام.
حالا هم روی خود اوبونتو و هم فدورا به اینترنت تونل شده دسترسی دارید
بدون اینکه نیاز باشه که برای هر کاری مدام دستی پروکسی تعیین کنید.
از تو لاگ نرم‌افزار Throne هم به راحتی می‌تونید ترافیک رو بررسی کنید
اگه به جای فدورا یک اکسس‌پوینت و یا روتر قرار بدید(با اتصال صحیح به پورت ورودی و تنظیم صحیح) اون روتر/اکسس‌پوینت می‌تونه این اینترنت تونل شده رو به دستگاه‌هایی که بهش متصل می‌شن مثل یک اینترنت عادی پخش کنه بدون اینکه متوجه بشن که به یک VPN متصلند.

البته اینم امکان‌پذیره که با اوبونتو اینترنت رو با LAN از مودم بگیرید و اوبونتو پس از فعالسازی هات‌اسپات لپتاپ مثل یک پخش‌کننده عمل کنه(اونو امتحان نکردم دیگه)  ;)
ترجیحا یک تست DNS Leak هم بگیرید. من گرفتم مشکلی نداشت.


یک کاربرد خیلی خوب دیگه‌ای که این روش میتونه داشته باشه:
فرض کنید که شما از جایی یک کانفیگ حرفه‌ای برای کارهای Trade و .. تهیه کردید
اما این کانفیگ‌ها در شرایط نت فعلی متصل نیستند و اپ مخصوص به خودشون رو هم دارند.
از اون طرف هم این کانفیگ‌های V2ray که دارید درسته که دسترسی به اینترنت بین‌الملل رو براتون فراهم می‌کنند
اما آیپی‌های حرفه‌ای ندارند و ریسک کار با اون در اپ‌های حساس بانکی و .. بالاست.

تو روشی که یک سیستم باید همه‌چیز رو هندل کنه، یعنی به صورت proxychain هم به کانفیگ v2ray متصل بشه هم به کانفیگ تمیزی که دارید
اون کانفیگ تمیز حتما باید پروتکلش قابل ایمپورت کردن به این اپ v2ray باشه در غیر این صورت پس از فعالسازی هرکدوم با مشکل routing loop مواجه می‌شید
چون وقتی V2ray رو فعال کنید میاد کل شبکه رو تونل می‌کنه و اون تونلی که برنامه دوم ساخته بود رو پاک می‌کنه
اگه هم بیاید اپ دوم رو فعال کنید میاد تونل v2ray رو غیرفعال می‌کنه و دسترسی خودش و v2ray رو به اینترنت قطع می‌کنه
حتی با تنظیم پروکسی برای اون اپ خاص هم این مشکل حل نمیشه چون به محض اینکه اون اپ TUN مود خودش رو فعال کنه v2ray دیگه نمی‌تونه به اینترنت متصل بشه.

مگر اینکه اپ دوم به شما اجازه بده که اون رو در حالت صرفا پروکسی اجرا کنید و کل سیستم رو TUN نکنه که خوب خیلی از این اپ‌های شخص ثالث از این قابلیت پیشتیبانی نمی‌کنند چون قابلیت‌هایی مثل kill switch و .. رو برای حداکثر ایمنی روی اون پیاده‌سازی کردند.

البته تو لینوکس باز هم می‌شه که دو تا TUN رو به هم زنجیره کرد
اما کار پیچیده‌ای هست و دوم اینکه مثلا اگر دستگاه اندرویدی داشته باشید که root نشده باشه و بخواید نه به طور همیشگی بلکه هروقت خواستید اون VPN دوم رو فعال کنید و وصل بشید باز با مشکل مواجه‌اید.

درحالیکه با این روشی که گفتیم وقتی ما شبکه رو به طور TUN شده از روتر یا لپتاپ دریافت می‌کنیم بدون هیچ مشکلی می‌تونیم از ابزارهای جهانی به طور استاندارد و ساده روی سیستم‌های دیگه خودمون هم استفاده کنیم  مثلا روی اندروید اپی که داریم(مثلا Proton VPN) رو باز کنیم و به راحتی به اون متصل بشیم چون مثل کاربری هستیم که به طور پیشفرض اینترنت بین‌الملل داره.

آپدیت:
۱- یک روش دیگری هم هست. شما به کانفیگ v2ray خودتون تو سیستم با TUN متصل می‌شید. حالا با افزونه‌های استاندارد فایرفاکس می‌تونید برای دسترسی به آیپی‌های خاص سرویس‌های پریمیومی که تهیه کردید استفاده کنید. مثلا Proton VPN و Nord و Tor guard و خیلی از کمپانی‌های دیگه این افزونه‌های اختصاصی رو برای مرورگر دارند و اونجا به اکانتتون لاگین می‌کنید.
از تو ردیت هم می‌تونید اگر نیاز خاصی برای آیپی تجاری دارید ببینید کدوم شرکت آیپی بهتری رو ارائه می‌ده و سرویس‌های حساس اون رو flag نمی‌کنند.
البته باز هم روش قبلی ارجح هست چون معمولا این‌ها در پلن‌های با نیاز خاص کانفیگ وایرگارد می‌دن که با افزونه قابل دسترسی نیست.

۲- شما می‌تونید داخل خود اپ v2ray یا سیستم openwrt، کانفیگ Wireguard و vmess و ... رو به هم chain کنید(با رفتن به گزینه add proxy chains). البته تو V2rayN این قابلیت هست تو Throne فعلا این قابلیت نیست.خوبیش اینه که اکثر سایت‌های معروف فروش VPN کانفیگ وایرگارد رو هم به شما می‌دن باید بگردید تو قسمت مخصوص پیدا کنید. مثلا اون شرکت‌هایی که بالا گفتم همه این رو دارند.
18
تو بعضی از توزیع‌ها که Fresh Install انجام می‌دیم
مشکلی که وجود داره اینه که فونت فارسی پیش‌فرضی که استفاده میشه Deajavu با ظاهر قدیمی و نازیبا برای کاراکترهای فارسی هست
تو اوبونتو این مشکل نیست و فونت فارسی پیش‌فرض وزیرمتن هست که فونت زیبایی هست
اما توی لینوکس مینت و فدورا که امتحان کردم این مشکل برقرار بود و حس می‌کردی سیستم با فارسی سازگاری خوبی نداره
و این نازیبایی فونت خیلی در تجربه کاربری تاثیر می‌زاره

پس از انجام این تغییرات تونستم این مشکل رو حل کنم:

از یک فونتی استفاده می‌کنم که پیش‌فرض در اکثر توزیع‌ها نصب است. شما اگه خواستید بعدا به وزیرمتن تغییرش بدید
اول ببینیم که اسم دقیق این فونت همین هست و داریمش یا نه:
fc-list -f '%{family}\n' | sort -u | grep -i 'Noto Sans Arabic'تو خروجی باید این رو ببینید:
Noto Sans Arabic
اما خوب این نسخش زیاد به درد ما نمی‌خوره و باید از نسخه UI اون استفاده کنیم که تجربه خوبی رو داشته باشیم
نصب نسخه UI:
sudo dnf install google-noto-sans-arabic-ui-fontsچک کردن این که نصب شده و اسم فونت رو هم با همون دستور بالا انجام بدید

تو این مرحله می‌ریم که تنظیمات این فونت رو برای اعمال سراسری برای کاراکترهای عربی و فارسی در سیستم بنویسیم
ابتدا این فایل متنی رو تشکیل بدید:
nano ~/.config/fontconfig/conf.d/30-persian-arabic.confو این محتویات رو داخل اون قرار بدید:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>

  <!-- Applications that provide script information -->
  <match target="pattern">
    <test name="script">
      <string>arab</string>
    </test>
    <edit name="family" mode="prepend" binding="strong">
      <string>Noto Sans Arabic UI</string>
    </edit>
  </match>

  <!-- Applications that only provide language -->
  <match target="pattern">
    <test name="lang" compare="contains">
      <string>fa</string>
    </test>
    <edit name="family" mode="prepend" binding="strong">
      <string>Noto Sans Arabic UI</string>
    </edit>
  </match>

  <match target="pattern">
    <test name="lang" compare="contains">
      <string>ar</string>
    </test>
    <edit name="family" mode="prepend" binding="strong">
      <string>Noto Sans Arabic UI</string>
    </edit>
  </match>

</fontconfig>

پس از ذخیره فایل این کامند رو اجرا کنید که فونت‌ها دوباره ساخته بشن:
fc-cache -f
مطمئن بشید که فایل لود شده:
fc-conflist | grep 30-persian-arabic
و اینکه فونت اعمال شده:
fc-match 'sans-serif:lang=fa'
fc-match 'sans-serif:lang=ar'

برای اینکه برای برنامه‌های فلت‌پک هم اعمال بشه این دستور رو اجرا کنید:
flatpak override --user --filesystem=xdg-config/fontconfig:ro
و تمام.
الان برنامه‌ای رو که دارید ببندید و بعد اجرا کنید می‌تونید این تغییر رو در اون مشاهده کنید(در اکثر برنامه‌ها).
19
میزکار KDE / افزونه مدیریت‌پنجره KZones
« آخرین ارسال توسط seyal 26 تیر 1405، 11:48 ق‌ظ »
تو بعضی از ویدیوهای یوتیوب دیده بودم که چقدر پنجره‌ها رو تمیز با شورتکات کنار هم می‌چینند و چقدر تو بهبود تجربه کاربری از میزکار تاثیر داره
البته اون ویدیوی که من دیدم و خوشم اومده بود از مدیریت پنجره‌هایی مثل hyprland استفاده می‌کرد

داشتم دنبالش می‌گردم که چه افزونه‌ای هست که این کار رو انجام می‌ده
پس از جستجو فهمیدم تو KDE باید از قسمت Kwin Scripts استفاده کنم:


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

اسکریپت‌های مختلف دیگه‌ای رو از فروشگاه KDE نصب و امتحان کردم
یکیش plotonium که گفتن سازنده به طور رسمی گفته که پروژه دیگه ادامه داده نمی‌شه

تا در نهایت رسیدم به اسکریپت KZones:
درست همون چیزی بود که می‌خواستم(هرچند جای پیشرفت هم داره)

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


می‌تونید چندین layout هم تعریف کنید
برای دسترسی و سوییچ بین این layout ها، باید ماوس رو در حالیکه اون پنجره رو گرفتید ببرید بالای صفحه
از اونجا خیلی راحت می‌تونید به انواع layout هاتون سوییچ کنید.


تعریف یک لایه جدید هم خیلی آسونه
کافیه که تو قسمت تنظیمات این افزونه به تب Layouts برید و اونجا یک ساختار JSON واضح می‌بینید که با یک نگاه می‌فهمید چطور چیدمان مخصوص به خودتون رو تعریف کنید
مثلا من این چیدمان رو بهش اضافه کردم:
    {
        "name": "Two Columns with Offset (1080p + Top Panel)",
        "zones": [
            {
                "x": 2,
                "y": 5,
                "height": 94,
                "width": 48
            },
            {
                "x": 52,
                "y": 5,
                "height": 94,
                "width": 48
            }
        ]
    }
]

حواستون باید به براکت‌ها و کاما باشه وقتی می‌خواید این رو جای‌گذاری کنید



البته پس از این تغییرات باید این افزونه رو یکبار غیرفعال و فعال کنید تا تغییرات جدید اعمال بشه.
20
معرفی نرم‌افزار / دسترسی به دستگاه اندرویدی با scrcpy
« آخرین ارسال توسط seyal 26 تیر 1405، 07:41 ق‌ظ »
می‌خواستم از اپلیکیشن‌های هوش‌مصنوعی که تو اندرویدم بود و حوصله نصب و تنظیمشون تو لینوکس نداشتم استفاده کنم
اپلیکیشنی نیاز داشتم که بتونه برام دسترسی به:
کلیپ‌بورد مشترک اندروید و لینوکس،
اتصال با usb c
قابلیت فراخوانی سریع
میرور اسکرین اندروید روی سیستم و قابلیت استفاده از عملکردهای اون
و ...
رو فراهم کنه.

پس از جستجو به اپلیکیشن scrcpy رسیدم لینک گیتهاب:
https://github.com/genymobile/scrcpy
روش نصبش رو قبلا تو یه تاپیک دیگه که در مورد استفاده از دوربین اندروید روی سیستم بود گفته بودم:
نقل‌قول
نسخه جدید اون رو از گیتهاب نصب کن من نصب کردم بدون مشکل کار می‌کنه:

برای نصب اول اگه اونو از قبل نصب داری پاک کن:
sudo apt remove scrcpy
sudo rm -rf /opt/scrcpy

بعد این دستورات رو به ترتیب اجرا کن:
wget https://github.com/Genymobile/scrcpy/releases/download/v4.0/scrcpy-linux-x86_64-v4.0.tar.gz
tar -xvf scrcpy-linux-x86_64-v4.0.tar.gz
cd scrcpy-linux-x86_64-v4.0
sudo mkdir -p /opt/scrcpy
sudo cp -a . /opt/scrcpy/
sudo ln -sf /opt/scrcpy/scrcpy /usr/local/bin/scrcpy

برای تست موفقیت‌آمیز بودن نصب:
scrcpy --version
و این رو باید ببینی:
scrcpy 4.0 <https://github.com/Genymobile/scrcpy>

Dependencies (compiled / linked):
 - SDL: 3.4.8 / 3.4.8
 - libavcodec: 62.28.101 / 62.28.101
 - libavformat: 62.12.101 / 62.12.101
 - libavutil: 60.26.101 / 60.26.101
 - libavdevice: 62.3.101 / 62.3.101
 - libusb: - / 1.0.29


در مورد استفاده از صفحه کلید فیزیکی هم وقتی scrcpy رو اجرا کردی
اون رو با این suffix اجرا کن:
--keyboard=uhid و اگر از سامسونگ استفاده می‌کنی برو تو بخش تنظیمات و از صفحه‌کلید پیش‌فرض خود سامسونگ استفاده کن
من هرکار کردم وقتی GBoard فعال بود نتونستم زبان رو عوض کنم اما با صفحه کلید پیش‌فرض بدون مشکل کار می‌کرد.


جدای از این برای راه‌اندازی scrcpy من خودم معمولا از این ترکیب استفاده می‌کنم:
scrcpy --turn-screen-off --stay-awake --keyboard=uhidحتی می‌تونی symlink هم درست کنی و با یک دستور ساده مثل phone کاری کنی این دستور اجرا بشه.

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

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

یک مزیت خیلی عالی اینه که درحالیکه به اندروید دسترسی دارید اما هر دو کاملا از هم ایزوله‌اند چون هریک از سخت‌افزار خودش استفاده می‌کنه
یعنی شاید تو سیستم خودتون وایفای فعال نباشه اما تو اندروید اینترنت و پروکسی رو فعال کرده باشید و به وایفای متصل باشید
در کل استفاده ازش به شدت پیشنهاد میشه.
صفحه: 1 [2] 3 4 ... 10