یک اروری کلی از تایم منو گرفت تا درست بشه امشب این بود request_uri$
حالا این یعنی چی؟
ما معمولا روی یک سرور کلی وب سرویس مختلف میاریم بالا
همه رو روی پورت های رندوم لوکال ران میکنیم
و بعد با nginx ست میکنیم که اگه کسی به پورت 443 در خواست داد
ببین به چه دامنهای درخواست داده، و درخواست به اون دامنه رو بفرست به لوکال خودت روی پورتی که مشخص شده برای اون دامنه.
مثلا روی یک سرور من یک next cloud دارم و یه n8n
هر دوی این هم روی پورت 443 باید باشه، ولی همزمان یک برنامه فقط میتونه روی این پورت ها شنود کنه،
اینجاست که nginx میاد جلوی این دو و خود این ها هم روی پورت های دیگه فعال میشن.
بعد وقتی وارد دامنه next.exampel.com بشم، nginx بخاطر دامنه خودش میدونه که به کدوم پورت ریکوئست ارسال کنه.
حالا مشکل من اینجا بود که خب وقتی ریکوئست ارسال میشه به اون پورت، بقیه مسیر ارسال نمیشه، مثلا اگه به example.com/some/path ریکوئست بفرستم، اون مقدار /some/path از سمت nginx ارسال نمیشه، مگه اینکه مشخص کنم،
حالا برای اینکار میایم و از uri$ استفاده میکنیم که هر مسیری کاربر داده بود هم ارسال بشه از طریق nginx
ولی این یه مشکل دیگه داشت، اینکه http parameter رو ارسال نمیکرد، برای اینکار فقط کافی بود بجای uri$ از request_uri$ استفاده کنم.
http parameter میشه مثلا این:
example.com/some/p/?key=value
میتونید درباره nginx proxy pass بیشتر بخونید.
حالا این یعنی چی؟
ما معمولا روی یک سرور کلی وب سرویس مختلف میاریم بالا
همه رو روی پورت های رندوم لوکال ران میکنیم
و بعد با nginx ست میکنیم که اگه کسی به پورت 443 در خواست داد
ببین به چه دامنهای درخواست داده، و درخواست به اون دامنه رو بفرست به لوکال خودت روی پورتی که مشخص شده برای اون دامنه.
مثلا روی یک سرور من یک next cloud دارم و یه n8n
هر دوی این هم روی پورت 443 باید باشه، ولی همزمان یک برنامه فقط میتونه روی این پورت ها شنود کنه،
اینجاست که nginx میاد جلوی این دو و خود این ها هم روی پورت های دیگه فعال میشن.
بعد وقتی وارد دامنه next.exampel.com بشم، nginx بخاطر دامنه خودش میدونه که به کدوم پورت ریکوئست ارسال کنه.
حالا مشکل من اینجا بود که خب وقتی ریکوئست ارسال میشه به اون پورت، بقیه مسیر ارسال نمیشه، مثلا اگه به example.com/some/path ریکوئست بفرستم، اون مقدار /some/path از سمت nginx ارسال نمیشه، مگه اینکه مشخص کنم،
حالا برای اینکار میایم و از uri$ استفاده میکنیم که هر مسیری کاربر داده بود هم ارسال بشه از طریق nginx
ولی این یه مشکل دیگه داشت، اینکه http parameter رو ارسال نمیکرد، برای اینکار فقط کافی بود بجای uri$ از request_uri$ استفاده کنم.
http parameter میشه مثلا این:
example.com/some/p/?key=value
میتونید درباره nginx proxy pass بیشتر بخونید.
https://www.redhat.com/en/topics/containers/what-is-podman
اگه داکر بلدین، این رو هم بخونید، هم جالبه هم کاربردیه.
اگه داکر بلدین، این رو هم بخونید، هم جالبه هم کاربردیه.
Redhat
What is Podman?
Podman is an open source tool for developing, managing, and running containers on your Linux systems.
👍2
Bit Orbit 🪐
https://dev.to/sibyx/migrating-data-between-two-online-minio-instances-53ia
بذارید براتون بگم.
وقتی آموزش برنامه نویسی میدن، همیشه میان فایل های که از سمت کلاینت میاد رو داخل سروری که کد اجرا شده میریزن، ولی توی برنامه های واقعی این راه اصلا درست نیست.
دلایل زیادیم داره. مثلا چند سرویس مختلف که روی سرور های مجزایی هستند نیازه با این فایل ها کار کنند.(شاید بگین خب NAS استفاده میکنیم، درسته ولی راه بهتر هم هست)
توی دنیای واقعی از Object Storage استفاده میشه. مثلا minIO، که API بهت میده توی کدت کال میکنی و اپریشین های مختلف روی فایل ها انجام میدی.
اینجا این پست داره توضیح میده چقدر با minIo فرایند میرور کردن کل دیتا سادهست و براش ابزار هست.
وقتی آموزش برنامه نویسی میدن، همیشه میان فایل های که از سمت کلاینت میاد رو داخل سروری که کد اجرا شده میریزن، ولی توی برنامه های واقعی این راه اصلا درست نیست.
دلایل زیادیم داره. مثلا چند سرویس مختلف که روی سرور های مجزایی هستند نیازه با این فایل ها کار کنند.(شاید بگین خب NAS استفاده میکنیم، درسته ولی راه بهتر هم هست)
توی دنیای واقعی از Object Storage استفاده میشه. مثلا minIO، که API بهت میده توی کدت کال میکنی و اپریشین های مختلف روی فایل ها انجام میدی.
اینجا این پست داره توضیح میده چقدر با minIo فرایند میرور کردن کل دیتا سادهست و براش ابزار هست.
👍3
Xu A. System Design Interview. An Insider_s Guide 2ed 2020.pdf
22 MB
شروع کنیم به خوندن این کتاب، بنظرم که کتاب خوبیه برای یه DevOps
❤4
Bit Orbit 🪐
Xu A. System Design Interview. An Insider_s Guide 2ed 2020.pdf
خب میدونید که میشه از ssh بعوان یه VPN tunnel استفاده کرد.
اما مشکل اینجاست که زیاد استیبل نیست و اگه قطع بشه، یهو سرویسی که داره از این
تانل استفاده میکنه هم قطع میشه، دیروز برای همین مشکل یه سرویس systemd نوشتم که این مشکل رو
حل کنه و در صورت قطع شدن و یا ریبوت شدن سیستم، مجدد وصل بشه.
https://github.com/shabane/ssh-daemon
اما مشکل اینجاست که زیاد استیبل نیست و اگه قطع بشه، یهو سرویسی که داره از این
تانل استفاده میکنه هم قطع میشه، دیروز برای همین مشکل یه سرویس systemd نوشتم که این مشکل رو
حل کنه و در صورت قطع شدن و یا ریبوت شدن سیستم، مجدد وصل بشه.
https://github.com/shabane/ssh-daemon
GitHub
GitHub - shabane/ssh-daemon: simple tool to create a resistance ssh tunnel daemon.
simple tool to create a resistance ssh tunnel daemon. - shabane/ssh-daemon
👏4
while true
do
date >> ./log
ping 1.1.1.1 -c 2 >> ./log
ping 8.8.8.8 -c 2 >> ./log
echo '---------------------------' >> ./log
done
یه سروری داریم که توی تایم های خاصی کانکشنش به اینترنت قطع میشه.
بنظرم این اسکریپت چیز بدی نیست برای چک کردن اینکه توی چه تایمی داره این اتفاق میوفته.
اول اومدم به Ai گفتم بنویسه یه چیزی که اینکار رو بکنه. بعد با پایتون نوشت :/
دیدم کاری نداره همینو با bash نوشتم. دیفالت AI احتمالا اینکه که هرچی بهش بگی رو با پایتون بنویسه مگه اینکه غیر این رو بهش بگی.
👍4
احتمالا سایت snapdrop.net رو میشناسید.
هر تایم من خواستم ازش استفاده کنم کلا داون بوده.
خوشبختانه این سایت کدش اپن سورسه، برای همین من روی سرورم اوردم بالا
بد نیست که شما هم ازش استفاده کنید، آدرسش هست: https://drop.wiregeek.ir
هر تایم من خواستم ازش استفاده کنم کلا داون بوده.
خوشبختانه این سایت کدش اپن سورسه، برای همین من روی سرورم اوردم بالا
بد نیست که شما هم ازش استفاده کنید، آدرسش هست: https://drop.wiregeek.ir
توضیح کلی: شما اگه نیاز داشته باشید که فایل با حجم خیلی بالا رو به صورت لوکال انتقال بدین
خیلی ساده وارد این سایت میشین روی هر دو دیوایس، و بعد دیوایس هایی که توی لوکال نتورک شما باشن شما رو میبینند،
بعد میتونید هر دیتایی رو منتقل کنید بدون مصرف هیچ ترافیک خارجی.
drop.wiregeek.ir
PairDrop
Instantly share images, videos, PDFs, and links with people nearby. Peer2Peer and Open Source. No Setup, No Signup.
❤7👍2
Bit Orbit 🪐
احتمالا سایت snapdrop.net رو میشناسید. هر تایم من خواستم ازش استفاده کنم کلا داون بوده. خوشبختانه این سایت کدش اپن سورسه، برای همین من روی سرورم اوردم بالا بد نیست که شما هم ازش استفاده کنید، آدرسش هست: https://drop.wiregeek.ir توضیح کلی: شما اگه نیاز…
یه چیز جالب بهتون بگم. اگه از VPN استفاده کنید، هر کسی که از همون سرور vpn استفاده کنه و بیاد داخل این سایت، میتونه بقیه رو ببینه.
اینطوری میتونید لوکال هم نباشید.
اینطوری میتونید لوکال هم نباشید.
🔥6
یه مدته دارم سرعت تایپم رو با این سایت چک میکنم، خیلی کندم، ولی شما هم دوست داشتین بذارین ببینیم چقدر من کندم
https://terminaltrove.com/lazydocker/
این
شبیه به Htop ولی برای داکره. اوضاع مصرف منابع کانینر رو نشون میده، از اون بهتر اینکه با یه کلیک وارد شل کانتینر میشه.
نیاز نیست
الان کشف کردم شورتکات هاش هم vim like هست :)
واقعا ابزار خوبیه، بهبه.
این
lazyDocker خیلی چیز جالبیه.شبیه به Htop ولی برای داکره. اوضاع مصرف منابع کانینر رو نشون میده، از اون بهتر اینکه با یه کلیک وارد شل کانتینر میشه.
نیاز نیست
docker --exec -it بزنیم.الان کشف کردم شورتکات هاش هم vim like هست :)
واقعا ابزار خوبیه، بهبه.
Terminaltrove
lazydocker - Terminal Trove
The lazier way to manage everything docker
❤2
This media is not supported in your browser
VIEW IN TELEGRAM
نمونه کاری که میکنه.
Forwarded from Byteforge / بایــت فورج 🛸
NTP چیست؟ (Network Time Protocol)
NTP یک پروتکل شبکه س که برای هماهنگ نگهداشتن ساعت سیستمها در شبکه استفاده میشود. با استفاده از NTP، همه دستگاهها (سرورها، لپتاپها، روتـرها و ...) میتونن ساعت دقیقی داشته باشن.
این اصلا اهمیتی داره؟
NTP چطور کار میکند؟
Stratum در NTP یعنی چه؟
چطور از NTP استفاده کنیم؟
در لینوکس برای فعالسازی
برای دیدن وضعیت پروسه
اگر از chrony استفاده میکنی (که نسبت به ntp سبکتر و امنتره)
در ویندوز :
یا از طریق CMD:
سرورهای NTP رایگان و قابل استفاده :
نکات امنیتی درباره NTP
کاربردهای پیشرفته NTP
NTP یک پروتکل شبکه س که برای هماهنگ نگهداشتن ساعت سیستمها در شبکه استفاده میشود. با استفاده از NTP، همه دستگاهها (سرورها، لپتاپها، روتـرها و ...) میتونن ساعت دقیقی داشته باشن.
این اصلا اهمیتی داره؟
ساعت دقیق در کامپیوترها فقط برای نمایش زمان نیست. خیلی از سیستمها وابسته به زمان درست هستند.
در امنیت و رمزنگاری، اگر ساعت سیستم اشتباه باشه، گواهیها از کار میفته .
در سرورها و شبکهها، هماهنگی بین سیستمها وابسته به زمان دقیقه.
در بانکها و صرافیها، زمان ثبت تراکنشها باید کاملاً دقیق باشه.
در لاگها و مانیتورینگ، برای تحلیل درست مشکلات، زمان مهمه.
NTP چطور کار میکند؟
کامپیوتر شما به یک سرور NTP متصل میشه.
سرور زمان دقیق (بر اساس UTC) را به سیستم شما میفرسته.
سیستم شما مدت زمان رفتوبرگشت پیام (تأخیر شبکه) را در نظر میگیرد.
سپس ساعت خودشو تنظیم میکنه.
این فرآیند مرتب تکرار میشه تا همیشه ساعت سیستم بهروز باشه .
Stratum در NTP یعنی چه؟
NTP از یک سیستم لایهای استفاده میکنه به نام Stratum
Stratum 0: منابع دقیق اولیه زمان مثل ساعت اتمی یا GPS
Stratum 1: سرورهایی که مستقیماً به Stratum 0 متصله
Stratum 2: از سرورهای stratum 1 زمان میگیرن
و همینطور تا Stratum 15
هرچه Stratum کمتر باشه، منبع دقیقتره . معمولاً سیستمهای معمولی به سرورهای Stratum 2 یا 3 متصل میشن .
چطور از NTP استفاده کنیم؟
در لینوکس برای فعالسازی
sudo timedatectl set-ntp true
برای دیدن وضعیت پروسه
timedatectl status
اگر از chrony استفاده میکنی (که نسبت به ntp سبکتر و امنتره)
sudo systemctl enable chronyd
sudo systemctl start chronyd
در ویندوز :
به کنترل پنل برو، بخش Date and Time، و تب Internet Time رو باز کن.
سرور NTP رو مشخص کن مثل: time.windows.com
یا از طریق CMD:
w32tm /resync
سرورهای NTP رایگان و قابل استفاده :
pool.ntp.org: معروفترین سرور توزیعشده NTP
ntp.ubuntu.com: مخصوص کاربران اوبونتو
نکات امنیتی درباره NTP
نسخههای جدیدتر NTP امکان احراز هویت دارند (با کلید هششده)
گاهی از سرورهای NTP برای حملات DDoS استفاده میشود
برای امنیت بیشتر، استفاده از chrony به جای ntpd پیشنهاد میشود
دسترسی سیستم به پورتهای UDP 123 باید باز باشد
کاربردهای پیشرفته NTP
در دیتاسنترها برای هماهنگ نگهداشتن زمان بین هزاران سرور
در برنامههای تحلیلی یا سیستمهای مانیتورینگ
در سیستمهای توزیعشده مثل Kafka، Hadoop یا Kubernetes
در شبکههای مالی و رمزنگاری برای زمان دقیق تراکنشها
در اینترنت اشیا و دستگاههایی که log میگیرند یا عملیات زمانبندیشده دارند
#ntp
#byteforge
@byteforge_chan 🛸
🔥3
Byteforge / بایــت فورج 🛸
NTP چیست؟ (Network Time Protocol) NTP یک پروتکل شبکه س که برای هماهنگ نگهداشتن ساعت سیستمها در شبکه استفاده میشود. با استفاده از NTP، همه دستگاهها (سرورها، لپتاپها، روتـرها و ...) میتونن ساعت دقیقی داشته باشن. این اصلا اهمیتی داره؟ ساعت دقیق در کامپیوترها…
یه نکته هم من اضافه کنم. اینکه chrony پکیج خوبیه و امکانات خوبی میده. ولی اگه نیاز داشتین که ntp ست کنید، خود systemD یه پکیج داره به اسم systemd-timesyncd
که دیفالت خیلی از os ها دارن، همون رو میشه فعال کرد و راحت NTP داشت.
یه چیز دیگه هم اینکه خود پکیج NTP هنوز توی ریپازیتوری های دبیان هست ولی منسوخ شده.
که دیفالت خیلی از os ها دارن، همون رو میشه فعال کرد و راحت NTP داشت.
یه چیز دیگه هم اینکه خود پکیج NTP هنوز توی ریپازیتوری های دبیان هست ولی منسوخ شده.
👍3❤1
متاسفانه اینقدر که از github actions استفاده کردم، اکانتم محدود شده و نمیتونه دیگه اکشنها رو ران کنه :(
گیتهاب خسیسه.
گیتهاب خسیسه.
💔4❤2💩1
من فایل pdf رو که با google chrome باز میکنم قابلیت اینکه بتونم از اکستنشن گوگل ترنسلیت استفاده کنم رو نداره
سر همین این سایت رو پیدا کردم. pdf رو باز میکنه و نیاز به اپلود هم نیست.
سر همین این سایت رو پیدا کردم. pdf رو باز میکنه و نیاز به اپلود هم نیست.
pdfviewer.softgateon.net
PDF Viewer Online
PDF Online Viewer, Reader is a free online tool that allows you to view PDF, DOC, XLS, PPT files directly in your web browser. PDF Viewer Online reads files without uploading the file to any servers. It does not save or share the file you select. It only…
❤4
اوضاع اینترنت داره خراب میشه.
از سگارو پرسدم گفت ریورس تانل خوب میتونه جواب بده.
اگه میتونید، بیایید همکاری کنیم یه چیزی بسازیم باهم.
pv: @m_shabane
از سگارو پرسدم گفت ریورس تانل خوب میتونه جواب بده.
اگه میتونید، بیایید همکاری کنیم یه چیزی بسازیم باهم.
pv: @m_shabane
Bit Orbit 🪐
میتونید،
خیلی کلی: ریورس تانل به سروری که از فردوسی کلاد خریدم کار نکرد. چون از خارج نمیشه بهش وصل شد اصلا :/ واقعا؟!!
ولی تونل مستقیم از ایران به اون کار کرد، اما روی اینترنت ایرانسل کلا به سرور ایران(فردوسی کلاد) نمیشه وصل شد،
چرا رفتم سرغ فردوسی کلاد؟ چون PAYG بود و من از قبل داخلش یه میزان پولی داشتم.
بنظرتون ریورس پراکسی روی سرور های دیگهای ممکنه کار کنه؟
یا مثلا از CDN اروان چی؟
ولی تونل مستقیم از ایران به اون کار کرد، اما روی اینترنت ایرانسل کلا به سرور ایران(فردوسی کلاد) نمیشه وصل شد،
چرا رفتم سرغ فردوسی کلاد؟ چون PAYG بود و من از قبل داخلش یه میزان پولی داشتم.
بنظرتون ریورس پراکسی روی سرور های دیگهای ممکنه کار کنه؟
یا مثلا از CDN اروان چی؟
Bit Orbit 🪐
خیلی کلی: ریورس تانل به سروری که از فردوسی کلاد خریدم کار نکرد. چون از خارج نمیشه بهش وصل شد اصلا :/ واقعا؟!! ولی تونل مستقیم از ایران به اون کار کرد، اما روی اینترنت ایرانسل کلا به سرور ایران(فردوسی کلاد) نمیشه وصل شد، چرا رفتم سرغ فردوسی کلاد؟ چون PAYG…
خب تا اینجا باید بگم که CDN آروان هم اصلا کار نکرد.
ترکیب vless, vmess + CDN + WS
ترکیب vless, vmess + CDN + WS