Dev Perfects
41 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://t.iss.one/dev_perfects/455


ارتباط:
https://t.iss.one/HidenChat_Bot?start=936082426
Download Telegram
Forwarded from Linuxor ?
پروژه‌ای برای شبیه‌سازی فایروال چین (که توی ایران هم هست). می‌تونین روی روتر یا لینوکس‌تون اجرا کنین. و باهاش فیلترینگ دم‌دستی راه‌ بندازین.

gfw.dev

ببینید فایروال چطوری VPN های V2Ray رو با اینکه حتی رمزنگاری هم شده رو تشخیص می‌ده و سرورتون رو فیلتر می‌کنه !


@Linuxor ~ ohmydevops
Forwarded from یک برنامه نویس تنبل (Lazy 🌱)
Media is too big
VIEW IN TELEGRAM
🔶 اگر قصد دارید با ویرایشگر Neovim پروژه لاراول توسعه دهید این ویدئو را ببینید.

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

Neovim Config: https://github.com/adibhanna/nvim
Laravel Plugin: https://github.com/adibhanna/laravel.nvim

#لاراول

@TheRaymondDev
Forwarded from یک برنامه نویس تنبل (Lazy 🌱)
Media is too big
VIEW IN TELEGRAM
🔶 اگر قصد دارید با ویرایشگر Neovim پروژه لاراول توسعه دهید این ویدئو را ببینید.

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

Neovim Config: https://github.com/adibhanna/nvim
Laravel Plugin: https://github.com/adibhanna/laravel.nvim

#لاراول

@TheRaymondDev
Forwarded from یک برنامه نویس تنبل (Lazy 🌱)
Media is too big
VIEW IN TELEGRAM
🔶 اگر قصد دارید با ویرایشگر Neovim پروژه لاراول توسعه دهید این ویدئو را ببینید.

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

Neovim Config: https://github.com/adibhanna/nvim
Laravel Plugin: https://github.com/adibhanna/laravel.nvim

#لاراول

@TheRaymondDev
Forwarded from Linuxor ?
برادرا خواهرا وقتی می‌‌آین پی وی سوالی چیزی بپرسین واقعا لازم نیست احول پرسی اینا کنین هر روز مجبورم کلی احوال پرسی کنم و می‌دونم قصد شما هم از روی خیره ولی من اصلا ناراحت نمی‌شم که بگم وای فلانی احوال پرسی نکرد؛ سوالتون رو مستقیم و رک حتی "بدون سلام" بپرسین در حد خودم راهنمایی می‌کنم منو مثل هوش مصنوعی در نظر بگیرید من هر روز می‌آم یه تعدادی سوال واضح رو جواب می‌دم و دیگه درگیر حاشیه ها نمی‌شم خلاصه اگه دیدین بعضی حرف هاتون رو جواب نمی‌دم ناراحت نشین چون زیاده مجبورم فقط سوالات واضح رو جواب بدم❤️


@Linuxor
Forwarded from Curious Geek ⚡️
در باب فواید Circular Queue 🤝
https://pedar.net/blog
🆔 @Hiradsajde
Forwarded from Gopher Academy
🔵 عنوان مقاله
Eliminating Dead Code in Go Projects

🟢 خلاصه مقاله:

در سال 2023، تیم توسعه‌دهنده زبان برنامه‌نویسی Go ابزاری بنام "deadcode tool" را منتشر کرد که به شناسایی کد‌های غیرقابل دسترس یا مرده در پروژه‌های نرم‌افزاری کمک می‌کند. این ابزار با اسکن کد‌های Go، قسمت‌هایی که هرگز اجرا نمی‌شوند را شناسایی کرده و به توسعه‌دهندگان در حذف آن‌ها کمک می‌کند. استفاده از این ابزار موجب بهبود عملکرد و خوانایی برنامه‌ها شده و بازخورد مثبتی از جامعه توسعه‌دهندگان دریافت کرده است. این ابزار همچنین در بهینه‌سازی سیستم‌های قدیمی و در زمان بازنویسی‌های اساسی بسیار مفید است.

🟣لینک مقاله:
https://golangweekly.com/link/170933/web


👑 @gopher_academy
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
بررسی سلامت باتری لپتاپ در لینوکس

۱. دستورupower
upower -i /org/freedesktop/UPower/devices/battery_BAT0 | grep -E "capacity|state|percentage"


خروجی مهم:
- percentage: درصد شارژ فعلی
- capacity: سلامت باتری (%)
- state: وضعیت (شارژ/دشارژ)

۲. دستور
acpi (ساده و سریع)
acpi -i


مثال خروجی:
Battery 0: Full, 100%  
Battery 0: design capacity 5000 mAh, last full capacity 4500 mAh = 90%


۳. روش فایل‌های سیستمی (بدون نیاز به نصب ابزار)
echo " healthy: $(cat /sys/class/power_supply/BAT0/capacity)%"  

💡 نکته: اگر دستورها کار نکردند، بسته‌های acpi یا upower را نصب کنید:

sudo apt install acpi upower  # برای دبیان/اوبونتو
Forwarded from Linuxor ?
مایکروسافت گفته 400 میلیون کاربر ویندوز رو از دست داده؛ خطاب به این 400 میلیون بگم لینوکس اولش سخته ولی یکم باهاش کار کنی دیگه با هیچی عوضش نمی‌کنی


@Linuxor
Forwarded from Gopher Academy
🔴قابلیت json/v2 ویژگی های جدید گولنگ نسخه 1.25

در Go 1.25، بستهٔ `json/v2` (همراه با jsontext) معرفی شده است
یک نسخهٔ اساسی و پیشرفته‌تر نسبت به encoding/json قبلی که با فعال‌سازی آزمایشی از طریق متغیر محیطی GOEXPERIMENT=jsonv2 کار می‌کند

🔑 مزایای کلیدی json/v2

1. انعطاف‌پذیری در Marshal/Unmarshal

* دیگر محدود به یک رفتار یکنواخت نیستید؛ با MarshalToFunc و UnmarshalFromFunc می‌توانید رفتار سفارشی خود را برای هر نوع داده بنویسید

2. افزایش قابل‌توجه در سرعت

* به‌ویژه در عملیات خواندن (unmarshal)، تا ۱۰ برابر سریع‌تر از نسخهٔ فعلی گزارش شده است .

3. این API جدید برای تولید و مصرف جریان‌های داده

* امکان مستقیم خواندن از io.Reader و نوشتن به io.Writer فراهم شده (MarshalWrite, UnmarshalRead) بدون نیاز به شیء Encoder/Decoder جداگانه.

4. ویژگی‌های جدید همچون برچسب‌های سفارشی و رفتار پیش‌فرض بهبود یافته

* امکانات گسترده‌ای برای تنظیم سفارشی JSON وجود دارد (برچسب‌ها، inlining، skip کردن فیلدها و غیره) .

یک مثال مفهومی

فرض کنید می‌خواهید برای بولین‌ها (bool) به‌جای true/false از کاراکترهای ویژه مثل و استفاده کنید.

import (
"fmt"
"encoding/json/v2"
"encoding/json/v2/jsontext"
)

// Marshal custom برای bool:
boolMarshaler := json.MarshalToFunc(
func(enc *jsontext.Encoder, val bool) error {
if val {
return enc.WriteToken(jsontext.String("✓"))
}
return enc.WriteToken(jsontext.String("✗"))
},
)

// Marshal برای stringهای شبیه bool:
strMarshaler := json.MarshalToFunc(
func(enc *jsontext.Encoder, val string) error {
if val == "on" || val == "true" {
return enc.WriteToken(jsontext.String("✓"))
}
if val == "off" || val == "false" {
return enc.WriteToken(jsontext.String("✗"))
}
return json.SkipFunc
},
)

marshalers := json.JoinMarshalers(boolMarshaler, strMarshaler)

vals := []any{true, "off", "hello"}
data, err := json.Marshal(vals, json.WithMarshalers(marshalers))
fmt.Println(string(data), err)
// خروجی: ["✓","✗","hello"]


در این مثال:

* true به
* "off" به
* و رشتهٔ "hello" به حالت پیش‌فرض تبدیل می‌شود

📌 وضعیت کنونی و توصیه‌ها

*این Experimental: این ویژگی آزمایشی است و باید با GOEXPERIMENT=jsonv2 فعال شود
* نسخه فعلی encoding/json وقتی flag فعال باشد از json/v2 استفاده می‌کند و عملکرد قدیمی حفظ شده تا سازگاری کامل برقرار شود ([github.com][5]).
* توصیه شده: پروژه‌هایی که وابسته به عملکرد JSON هستند، با فعال‌سازی این flag تست شوند تا مشکلات ناسازگاری احتمالی شناسایی شود .

---
جمع‌بندی

*این json/v2 در Go 1.25 یک نسخه‌ی کاملاً بازطراحی‌شده است: سریع‌تر، انعطاف‌پذیرتر و پیشرفته‌تر.
* با قابلیت‌هایی مانند سفارشی‌سازی عمیق Marshal/Unmarshal و I/O مستقیم همراه است.
* هنوز آزمایشی‌ست؛ اگر پروژه‌ای دارید که نیاز به performance یا JSON پیچیده‌تری دارد، توصیه می‌شود با GOEXPERIMENT=jsonv2 امتحانش کنید.


👑 @gopher_academy
اینم برای دوستانی که مک دارن و میخوان با راست کلیک برنامه های مختلف رو باز کنن
۳ تا نمونه گذاشتم بقیه رو هم میتونید الگو برداری کنید و بزنید

https://github.com/mohammadhasananisi/mac-os-quick-action

@DevTwitter | <Mohammad Hasan/>
Forwarded from Linuxor ?
یه نفر یه API میکروسرویس کاملاً نیتیو برای فضای ابری ساخته : Auth با Laravel، مدیریت لیست شغل‌ها با Flask، و اپلای کردن با FastAPI. امنیتش با JWT هندل می‌شه و Redis برای نگهداری JTI استفاده شده تا توکن‌ها قابل ابطال باشن. برای هندل کردن ترافیک، Traefik رو آورده وسط با امکاناتی مثل rate limiting، circuit breaker و کلی middleware جذاب.

دیپلوی کامل روی AWS EKS انجام شده، CI با Jenkins و CD با ArgoCD به صورت اتومات پیاده‌سازی شده. یه معماری تمیز و حرفه‌ای برای اپ‌های مقیاس‌پذیر توی فضای میکروسرویس.

کدش اینجاست دوست داشتین برین یه چکی کنید :

github.com/EmmyAnieDev/Job-Microservice


@Linuxor
🛡💻 چک‌لیست کامل و حرفه‌ای ایمن‌سازی سرورهای HPE Gen9
اگر از سرورهای HPE ProLiant Gen9 استفاده می‌کنید (یکی از پرکاربردترین نسل‌ها)، بدون ایمن‌سازی صحیح، می‌تونن تبدیل به نقطه ضعف بزرگی در شبکه شما بشن. این چک‌لیست کامل، شما رو از لایه سخت‌افزار تا نرم‌افزار و شبکه پوشش می‌ده.

۱. امنیت فیزیکی
🔒 اولین خط دفاعی همیشه فیزیکی هست!
سرورها در دیتاسنتر یا اتاق سرور با دسترسی محدود و دوربین مداربسته.
قفل فیزیکی رک‌ها.
ثبت ورود و خروج‌ها (لاگ فیزیکی یا کارت‌خوان).

۲. ایمن‌سازی iLO (Integrated Lights-Out)
🎛 کنترل از راه دور اگر درست مدیریت نشه، تبدیل به خطر جدی میشه.
آپدیت iLO به آخرین نسخه موجود (برای Gen9 معمولا iLO 4).
محدود کردن دسترسی به iLO به شبکه مدیریت اختصاصی یا محدوده IP مشخص.
غیرفعال کردن پروتکل‌ها و سرویس‌های غیرضروری:
غیرفعال کردن SSL/TLS قدیمی (مثل TLS 1.0 و 1.1).
غیرفعال کردن SNMP اگر نیاز ندارید یا استفاده از SNMPv3.
غیرفعال کردن Virtual Media در صورت عدم نیاز.
استفاده از پسوردهای قوی و پیچیده (حداقل ۱۵ کاراکتر، ترکیبی).
غیرفعال کردن حساب‌های پیش‌فرض و ایجاد حساب‌های نقش‌محور.
فعال کردن لاگ و آلارم‌ها، و بررسی مداوم رخدادها.
تنظیم Timeout برای سشن‌ها.
اگر امکان‌پذیر، اتصال iLO به سیستم‌های مانیتورینگ مرکزی (SIEM).

۳. سیستم BIOS و ROM
⚙️ کنترل مستقیم سخت‌افزار از طریق BIOS خطرناک‌ترین نقطه حمله.
آپدیت BIOS و System ROM به آخرین نسخه (برای جلوگیری از آسیب‌پذیری‌های فریم‌ور).
فعال‌سازی Secure Boot برای جلوگیری از بوت شدن سیستم با کدهای مخرب.
فعال کردن TPM برای پشتیبانی از رمزنگاری سطح پایین و تشخیص تغییرات غیرمجاز.
تنظیم پسورد قوی برای BIOS/ROM.
غیرفعال کردن سخت‌افزارها و پورت‌های غیرضروری (مثل Serial Port، USB جلو در صورت عدم نیاز).

۴. ایمن‌سازی سیستم‌عامل
🖥 چه ویندوز چه لینوکس، سیستم‌عامل بدون پچ = خطر جدی.
بروزرسانی مداوم سیستم‌عامل و نصب وصله‌های امنیتی.
غیرفعال کردن سرویس‌ها و پکیج‌های غیرضروری (اصل مینیمالیسم).
محدود کردن حساب‌های ادمین و استفاده از Principle of Least Privilege (کمترین سطح دسترسی).
فعال‌سازی فایروال و تعریف دقیق رول‌ها.
استفاده از آنتی‌ویروس/EDR معتبر و آپدیت‌شده.
غیرفعال کردن پروتکل‌های قدیمی مثل SMBv1، Telnet، FTP.
فعال‌سازی لاگ‌گیری کامل (auditd در لینوکس یا Windows Event Logs).
پیاده‌سازی رمزنگاری دیسک کامل (BitLocker، LUKS، یا معادل).

۵. سخت‌گیری در سطح Hypervisor (اگر استفاده می‌کنید)
☁️ برای مجازی‌سازی، ایمن‌سازی Hypervisor حیاتی‌ست.
آپدیت مرتب به آخرین نسخه ESXi، Hyper-V، یا KVM.
جدا کردن شبکه مدیریت Hypervisor از شبکه عمومی (Management VLAN).
محدود کردن دسترسی مدیریتی با استفاده از ACL یا VPN.
استفاده از RBAC (Role-Based Access Control) برای کنترل دسترسی‌ها.
غیر فعال کردن سرویس‌های اضافی مانند SSH (یا محدود به IP مشخص).
ایمن‌سازی vMotion، Storage vMotion و کنسول VM با VLAN مجزا.
فعال کردن لاگ‌های دقیق و مانیتورینگ تغییرات.

۶. ایمن‌سازی ذخیره‌سازی و کنترلر RAID
💽 داده = ارزشمندترین دارایی.
آپدیت فریم‌ور کنترلر RAID و هاردها به آخرین نسخه.
استفاده از ویژگی Secure Erase هنگام جایگزینی یا ری‌تایر هارد.
استفاده از دیسک‌های Self-Encrypting (SED) یا رمزنگاری نرم‌افزاری.
ایزوله کردن شبکه SAN یا NAS و محدود کردن دسترسی با zoning.

۷. ایمن‌سازی شبکه
🌐 ورود به شبکه = ورود به قلب سیستم.
استفاده از VLAN برای جداسازی: Management، Production، Backup، Storage.
تعریف ACL دقیق برای محدود کردن دسترسی بین VLANها.
غیرفعال کردن پورت‌های غیرضروری روی سوئیچ‌ها و سرورها.
استفاده از Port Security یا 802.1X روی سوئیچ‌ها.
مانیتور کردن ترافیک با IDS/IPS یا سیستم‌های NDR.

۸. مانیتورینگ، هشدار و نگهداری
📡 امنیت بدون مانیتورینگ = بی‌معنی.
یکپارچه‌سازی لاگ‌ها با SIEM (مثل Splunk، ELK، QRadar).
فعال‌سازی SNMPv3 و محدود کردن سرور مانیتورینگ به IP مشخص.
تعریف آلارم برای رخدادهای بحرانی (مثل دسترسی غیرمجاز یا تلاش‌های ناموفق).
مرور دوره‌ای بولتن‌های امنیتی HPE و سیستم‌عامل.

۹. بکاپ و بازیابی
🌀 همیشه فرض کنید روزی حمله رخ می‌دهد.
داشتن بکاپ منظم و تست شده (Full, Incremental, Snapshot).
رمزنگاری بکاپ‌ها (در transit و at rest).
نگهداری نسخه‌های آفلاین یا immutable (ضد باج‌افزار).
تعریف و تست مرتب سناریو Disaster Recovery.

۱۰. مستندسازی و مدیریت تغییرات
🗂 نداشتن مستند یعنی نداشتن امنیت واقعی.
ثبت دقیق تمام تنظیمات و تغییرات.
داشتن فرآیند Change Management با تایید مدیر امنیت یا CTO.+
مستندسازی سیاست‌های دسترسی، رمز عبور، و به‌روزرسانی‌ها.
آموزش تیم فنی درباره رویه‌های امنیتی.


@code2_ir
قفل دو مرحله‌ای و سخت افزاری برای ورود SSH ها و سیستم‌ها رو هم فراموش نکنید. البته این ها صرفا یک جمع آوری داده و لیست پیشنهادی است و از طرف من صرفا جهت آشنایی معرفی می‌شه و نه به عنوان منبع یا دستورالعمل.

کانال کد۲
@code2_ir
This media is not supported in your browser
VIEW IN TELEGRAM
نحوه دسترسی به اپ‌استور iOS از طریق اتصال وای‌فای ...

▫️ 1.1.1.1 / 1.0.0.1
▫️ 8.8.8.8 / 8.8.4.4

© mester_software

🔍 ircf.space
@ircfspace
این تابستون یکی از پروژه هایی که حتما میخوام به یه حد خوبی برسونمش یه Redis Sever با cpp هست که با boost/asio کار‌ می‌کنه.
فعلا یکم کدش زشته ولیکن به سرعت قراره بهتر بشه.
https://github.com/ramzxy/Cedis

@DevTwitter | <rmsy/>
Forwarded from Linuxor ?
بعضیا از لحاظ فنی خیلی قوینا ولی سمت چیزایی که دانش فنی کمی لازم دارن مثل وردپرس، ورکفلو های آماده، کنوا یا مارکتینگ های ساده مثلا تولید محتوا یا مقاله آموزشی نمی‌رن.

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

اگه هر دو مسیر رو باهم جلو بری واست خیلی بهتر می‌شه نسبت به اینکه فقط بری سراغ چیزای خیلی فنی چون دیگه اون ناامیدی ناخودآگاه دیر نتیجه گرفتن رو کمتر داری برعکس سرعت پیشرفتت بیشترم می‌شه!


@Linuxor
Forwarded from Linuxor ?
این شرکتایی که دارن هی بیانیه و شعار می‌دن واسه گرفتن اینترنت اختصاصی یا همون طبقاتی؛ درسته خودتون رو از زندان دارید آزاد می‌کنید ولی یه روزی به خودتون میاین می‌بینید این آزادی وقتی که مردمی وجود نداشته باشی اصلا آزادی نیست و خودتون توی زندانید در اصل



@Linuxor
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
یک دستور ساده و پر کاربرد لینوکسی

پیدا کردن اطلاعات مربوط به بایوس (BIOS) یا UEFI

از دستور زیر استفاده کن:
1. پیدا کردن نسخه بایوس/UEFI
sudo dmidecode -t bios

خروجی شامل مواردی مثل:
نسخه بایوس (Version)، سازنده (Vendor) و تاریخ انتشار (Release Date)