سیاره لینوکس فارسی

تنظیم نور مانیتور در wayland

لپتاپ هایی هستن که در اثر یک سری تنظیماتی که به ناچار باید در خط کرنل لینوکس در گراب انجام بشه، دکمه های تنظیم نور صفحه مانیتور دیگه کار نمیکنند. لپ‌تاپ های ASUS این جوری اند. بنابراین باید با ابزارهای کمکی برای تنظیم نور مانیتور با استفاده از کیبورد، یه فکری میکردیم. در xorg این کار به خوبی با چیزی مثل xbacklight انجام میشه. اما در wayland اوضاع فرق میکنه و ابزارهای x دیگه کار نمیکنند.

اما میتونیم با استفاده از brightnessctl که در مخازن AUR آرچ وجود داره این مشکل رو برطرف کنیم. برای این کار اول باید اون رو نصب کنیم:
yaourt -S brightnessctl
و بعد باید عبارت زیر رو در فایلی در مسیر زیر ذخیره کنیم:
/etc/udev/rules.d/90-brightnessctl.rules
-----------------------------------------------------

ACTION=="add", SUBSYSTEM=="backlight", RUN+="/bin/chgrp video /sys/class/backlight/%k/brightness"
ACTION=="add", SUBSYSTEM=="backlight", RUN+="/bin/chmod g+w /sys/class/backlight/%k/brightness"
ACTION=="add", SUBSYSTEM=="leds", RUN+="/bin/chgrp input /sys/class/leds/%k/brightness"
ACTION=="add", SUBSYSTEM=="leds", RUN+="/bin/chmod g+w /sys/class/leds/%k/brightness"
و بعد از نصب با دستوری مشابه دستور زیر میتونیم نور رو کم کنیم:
brightnessctl s 50-
یا نور رو زیاد کنیم:
brightnessctl s +50
اینها رو میتونید به عنوان یک شورتکات کیبورد در نظر بگیرید.

معرفی و نصب نرم افزار کلاینت Slack

slack

یکی از شبکه ها و سرویس هایی که برای چت یا همان گفتگوی آنلاین وجود دارد،سرویس Salck می باشد که امروزه اکثر گروه ها بر روی این شبکه دارای تیم و کانال می باشند.برای اتصال به این تیم ها و کانال ها کاربر نیاز است تا از یک نرم افزار slack client استفاده کند که نمونه ی تحت وب آن موجود است و نمونه های دسکتاپی مختلفی نیز برای آن وجود دارد که قبلا نرم افزار کلاینت اسلک ScudCloud معرفی شد.

در این مطلب قصد دارم که کلاینت رسمی خود slack را به شما معرفی کنم که در حال حاضر نسخه ی beta می باشد.برخی از قابلیت های این کلاینت slack به شرح زیر می باشند :

 

  • قابلیت ورود به چندین تیم و کانال
  • قابلیت نصب بر روی سیستم عامل های مختلف
  • قابلیت ماندن در system try
  • نمایش Notifiction
  • دارای رابط کاربری گرافیکی ساده و زیبا
  • نصب آسان نرم افزار

 

نصب کلاینت Slack بر روی فدورا :

 

برای نصب نرم افزار کلاینت اسلک بر روی فدورا کافیست تا به آدرس زیر مراجعه نمایید :

 

https://slack.com/release-notes/linux

 

سپس مانند تصویر پایین بسته ی مورد نظر را دانلود کنید :

 

 

slack-client

 

پس از اینکار فایلی با نام slack-2.8.1-0.1.fc21.x86_64.rpm را خواهید داشت که ممکن است شماره ی نسخه ی آن متفاوت باشد.اکنون برای نصب آن می توانید بر روی آن دو بار کلیک کنید و یا از این دستور استفاده کنید :

 

#dnf install slack-2.8.1-0.1.fc21.x86_64.rpm

 

پس از نصب می توانید کلاینت اسلک را اجرا کنید و از آن استفاده کنید :

 

 

slack-client

 

slack-client

 

امید است تا از این مطلب استفاده لازم را برده باشید.همانطور که گفته شد کلاینت های مختلفی برای اتصال به شبکه ی Slack وجود دارد.شما از چه کلاینتی برای اتصال به Slack استفاده می کنید؟دیدگاه خود را با ما به اشتراک بگذارید.

 

 

 

حمله Syn Flood

حمله Syn Flood از دسته حمله هایی است که خیلی بی سر و صدا سرورتون را از دسترس خارج می کنه در نگاه اول هیچ نشانه ای نداره ، جز اینکه سرویستون دیگه جواب کاربران را نمی ده. برای اینکه بدونین چه شکلی کار می کنه اول باید بدنید three way handshaking در tcp چه شکلی کار می کنه. gif زیر که از wikipedia گرفتم را نگاه کنید

در شروع هر ارتباط tcp کلاینت برای شروع ارتباط یک بسته syn ارسال می کنه. سرور درجوابش یک syn/ack ارسال می کنه و کلاینت یک بسته ack بر می گردونه. زمانی که این سه بسته ردو بدل شد ارتباط به حالت establish می‌ره و کلاینت و سرور شروع به تبادل داده می کنند.

حالا اگه کلاینت جواب syn/ack نده، یک ارتباط باز رها شده به وجود می‌یاد که سرور زمانی را صبر می کنه تا این ارتباط timeout بشه. حالا فرض کنید، سرور با حجم بالایی از این ارتباط های نصفه نیمه مواجه بشه. چی می شه؟

بدون اینکه در ظاهر منابعی مثل رم و cpu مصرف بشه، تمام کانکشن های سرویس شما اشغال می شه و دیگه کسی نمی‌تونه به سرویس متصل بشه.

انواع حمله

دو نوع حمله Syn Flood وجود داره

۱- حمله مستقیم یا Direct Attack:  در این مدل که اتفاقا خیلی بیشتر هم من باهاش روبرو شدم، حمله کننده دارای یک ارتش هست و معمولا حمله را به صورت DDoS انجام می ده

۲- حمله با استفاده از IP Spoofing: در این حالت ماشین‌های حمله کننده از آدرس‌ها جعل شده درخواستهای SYN را ارسال می‌کنند. این باعث می‌شه که سرور ما بسته‌های SYN-ACK را به آدرسهایی که ارسال می‌کند که جواب ACK را نخواهند فرستاد، چرا که SYN را آنها نفرستاده اند و اطلاعی از این درخواست ندارند.

نحوه تشخیص

۱- اگه سرور Service Monitoring دارید متوجه می شید که نمودارتون به صورت تکه تکه است و در زمان‌هایی (که قابل توجه هم هستند) داده در نمودار قرار نگرفته

۲- تعداد کانکشن‌هایی که در وضعیت SYN_RECV هستند بالا میره، که با دستور زیر می تونید بررسی کنید

netstat -tuna | grep :80 | grep SYN_RECV

۳- کاربرانتون شکایت خواهند داشت که دایم خطای ارتباط با سرور دریافت می‌کنند و یا در لحظاتی نمی‌تونند به سرویس وب متصل بشند با اینکه ping و سرویس‌های دیگه خیلی خوب داره جواب می ده

راه حل

۱- اولین قدم برای جلوگیری از اثر حملات Syn Flood فعال کردن Syn Cookies هست. برای این کار کافیه دستور زیر را بزنید

sysctl -w net.ipv4.tcp_syncookies=1

و برای اینکه در هر زمان راه اندازی مجدد سیستم این مقدار دهی انجام شود مقدار زیر را در فایل etc/sysctl.conf/ قرار بدید

net.ipv4.tcp_syncookies = 1

۲- یکی دیگه از چیزهایی که به دفاع در برابر Syn Flood کمک می کنه، اضافه کردم اندازه صف در Syn Backlog هست

net.ipv4.tcp_max_syn_backlog = 4096

۳- کاهش synack_retries، این کار باعث می شه که هسته سیستم عامل زودتر کانکشن هایی را که در وضعیت SYN_RECV هستند را ببنده

net.ipv4.tcp_synack_retries = 3

۴- پایین آوردن SYN_RECV timeout: با این کار هسته سیستم عامل سریعتر این کانکشن‌ها را حذف می کند.

net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_recv=45

منبع: سایت Linoxide

بستون ۳۵ – امکان ادیت خرج ها و درآمدهای قدیمی

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

متاسفانه تیکه ای که روی کلاینت کار می کردم درست ضبط نشد. یعنی اینقدر طولانی شد که قطع کردم و بعد دیگه ادامه ندادم. اگر کسی هست که تخصص خوبی در آیونیک داره و علاقمنده کلاینت رو پیش ببره، بهم خبر بده لطفا ((:

دستور Switch در زبان C و C++

به نام اهورامزدای پاک حمایت میکنم 🙂 دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی...

ادامه مطلب . . .

نوشته دستور Switch در زبان C و C++ اولین بار در گشتاسب مظفریان - GMozafarian. پدیدار شد.

امنیت – آیا با آنتی‌ویروس امنیت ما تأمین می‌شه؟

چند روزی هست خبر اینکه آنتی‌ویروس کسپراسکای برای دولت روسیه جاسوسی می‌کرده منتشر شده، که باعث می‌شه به این فکر کنیم که آیا واقعا ما با آنتی‌ویروس امنیت داریم؟

لوگوی کسپراسکای تولیدکننده نرم‌افزار امنیت

قبل از این مسائل من همیشه به شخصه برام این سوال وجود داشته، که چطور میشه که ما (من که نه) میایم به یه نرم‌افزار انحصاری، دسترسی در این حد میدیم تو سیستممون، که کل سیستم رو زیر نظر بگیره و اختیارات نامحدود هم داشته باشه؟ که از ما در برابر ویروس‌ها(یی که اکثرا خودشون تولید می‌کنن تا شما مجبور باشید آپدیت کنید و ورژنای جدید رو بگیرید تا در برابر ویروسا ایمن باشید) محافظت کنن؟ چی می‌شه اگه خود این نرم‌افزار جاسوس باشه؟

بگذریم از این که تازه اگه جاسوس نباشه هم شما احتمالا یا کرک کردیش! یا کرک شده خریدی و بهت گفتن اصلیه (آنتی‌ویروس ۲۰ هزار تومن؟ 🙂 ) که اون کرک رو یه هکر محترم یا نامحترم نوشته البته :))

 

وقتی با افرادی که به نرم‌افزارهای شرکت‌های انحصاری وابسته هستن صحبت می‌کنی درباره امنیت، همیشه یه جواب بهت می‌دن، اینکه:

یعنی این شرکت به این معروفی، به این عظمت، میاد اعتبار خودش رو ببره زیر سوال و اطلاعات من رو بدزده؟

که خب با توجه به قضایای اخیر فکر نمی‌کنم نیاز به توضیح باشه که، بله، برای پول، شرکت‌های انحصاری هر کاری می‌کنن.

 

اما ما برای امنیت چه کار کنیم؟

جواب اینه که از نرم‌افزارایی استفاده کنیم که مطمئن هستن، همگان می‌تونن ببینن توشون چه خبره، و این یعنی از نرم‌افزارهای آزاد یا از نرم‌افزارهای متن‌باز استفاده کنیم.

برای سیستم‌عامل از چیزی استفاده کنیم که اصولی نوشته شده تا حتی نیاز به آنتی‌ویروس نداشته باشه، مثل لینوکس! چون اونقدر تعداد ویروس‌ها کمه، و اونقدر جامعه کاربری فعاله، که مشکلات امنیتی در چند ساعت رفع می‌شن، و در واقع فرصتی برای آدمای خبیث باقی نمی‌مونه تا از مشکلات امنیتی استفاده کنن.

 

اما اگه هم نیاز داریم روی سیستم آنتی‌ویروس داشته باشیم، من پیشنهادم آنتی‌ویروس‌های متن‌بازی مثل ClamAV هستن.

نوشته امنیت – آیا با آنتی‌ویروس امنیت ما تأمین می‌شه؟ اولین بار در علی مولایی پدیدار شد.

چالشهای مباحثه

قبل از این متن لطفا مطلب «اصل صحبت با انسان بالغ» را بخونید.

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

حالا مشکل من خود این موضوع نیست. من با دونستن همین موضوع دفعات زیادی مرتکب این موضوع شدم و بحث به جای خوبی نرفت. دایم از خودم می پرسیدم با اینکه این موضوع را می دونم و می خوام اجرا کنم، نمی دونم چرا افسار کار از دستم خارج می شه .

متوجه چند تا موضوع اولیه شدم که من را از بحث منحرف کرد و کاری را کردم که نمی خواستم. ۱- طرف مقابلت خواسته یا ناخواسته اصلا قصد بحث نداره و نمی خواد چیزی را بشنوه و دایم خواسته اش را فریاد می زنه.
راه حل: خوب با چنین کسی اصلا جای مباحثه ای نیست. چون یه مباحثه دو طرف داره و طرف دوم شما اصلا قصد نداره مباحه کنه. باید دقت داشته باشید که ممکنه طرف مقابل این صحبت را بکنه که قصد صحبت داره ، ولی شما باید با قدرت موضوع را بپیچونی. 😉
۲- استفاده از موضوعات احساسی، توهمی به عنوان دلیل. این هم یکی از اون موضوعات که تو مباحثه نمی‌گنجه.  مثل «من دلم می‌گه این درسته» !!!!!!
به این موضوعات آگاه باشید و اولین مورد که دیدید دوری کنید، سر کار می رید… بد D:

پیدا کردن تاریخ ساخت فایل

شاید به این مشکل بر خورده باشید که زمانی که جستجو می کنید و دنبال دستوری برای پیدا کردن زمان تغییر و یا ساخت یک فایل می گردید، به دستور stat  می رسید. ولی این دستور یه مشکل داره.

$ stat linuxmotto.txt $ stat linuxmotto.txt
File: linuxmotto.txt
Size: 0         Blocks: 0          IO Block: 4096   regular empty file
Device: 15h/21d Inode: 492194      Links: 1
Access: (0644/-rw-r–r–)  Uid: ( 1000/  behrad)   Gid: ( 1000/  behrad)
Access: 2017-10-14 22:25:13.673825333 +0330
Modify: 2017-10-14 22:25:13.673825333 +0330
Change: 2017-10-14 22:25:13.673825333 +0330
Birth: –

همانطور که می‌بینید، این دستور سالهاست که زمان ساخت (Birth) را نشان نمی‌ده. این به دلیل این نیست که این زمان در فایل سیستم ذخیره نمی‌شه. بلکه دقیقا مشکل دستور stat است.
البته همه فایل سیستم ها از Creation time پشتیبانی نمی‌کنند. مانند XFS و در ضمن هر فایل سیستم ممکنه این مقدار را با اسامی مختلفی نگهداری کند

zfs → crtime
ext4 → crtime
btrfs → otime

برای اینکه بتونید زمان ساخت یک فایل را پیدا کنید، می تونید از دستور دیگری به نام debugfs استفاده کنید. debugfs دستور بسیار قدرتمندی برای بررسی یک فایل سیستم است. این دستور مربوط به فایل سیستم ext4 هست، و من نتونستم دستور معادلی برای btrfs پیدا کنم. اگه سراغ دارید ممنون می شم در کامنت معرفی کنید.

debugfs -R “stat /tmp/linuxmotto.txt” /dev/sda2 | grep crtime

انواع شرط‌ها در زبان C و C++

به نام اهورامزدای پاک حمایت میکنم 🙂 دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی...

ادامه مطلب . . .

نوشته انواع شرط‌ها در زبان C و C++ اولین بار در گشتاسب مظفریان - GMozafarian. پدیدار شد.

عملگرها و محاسبات ریاضی در زبان C و C++

به نام اهورامزدای پاک حمایت میکنم 🙂 دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی دوره آموزشی...

ادامه مطلب . . .

نوشته عملگرها و محاسبات ریاضی در زبان C و C++ اولین بار در گشتاسب مظفریان - GMozafarian. پدیدار شد.