کرم های کامپیوتر





قالب وبلاگ در حال ویرایش شدن!

ممکن است اشکالاتی در قالب پیش بیاید
بنابراین پیشاپیش متاسفیم!

کرم های کامپیوتر

من و دوستم دو تا کرمیم که داریم تو سیستم ها وُل می خوریم و بعضی وقت ها براتون چیزایی که تو این وُل خوردن ها یاد گرفتیم رو می نویسیم!!!!!

ربات تلگرامی ما
آخرین نظرات
  • ۲۹ شهریور ۹۷، ۱۴:۱۸ - فرهاد حسن پور
    جالب بود
  • ۱۰ تیر ۹۷، ۲۰:۵۴ - پسر ساده
    داس

۱۷ مطلب با کلمه‌ی کلیدی «آموزش لینوکس» ثبت شده است

اگر بخواهید مکان فیزیکی یک IP را پیدا کنید، ابزار های آنلاینی برای اینکار وجود دارند اما شاید مثل من پیرو راه بزرگ یونیکس باشید و  خط‌فرمان سریغ‌تر و کم‌هزینه‌تر هم هست.
اینجا دو روش را معرفی میکنم که از طریق خط‌فرمان بتوانید مکان جغرافیایی یک IP را پیدا کنید. روش اول از یک برنامه استفاده میکند که بر اساس یک پایگاه داده و بصورت آفلاین کار میکند و برای شبه یونیکس‌ها شامل گنو/لینوکس،بی‌اس‌دی ها و ... در دسترس هست. روش دوم که از curl و یک API استفاده میکند، نیازمند دسترسی به اینترنت هست و روی اکثر سیستم‌عامل ها قابل استفاده در دسترس هست.
  • فاروق کریمی زاده
look [-bdf] [-t termchar] string [file]
look [-f] string [file]

این برنامه که ریشه‌اش BSD هست، تمام خطوط پرونده‌ی file را که با رشته‌ی string شروع میشوند،به خروجی میفرستد.

  • فاروق کریمی زاده

اگر بخوایم کوتاه و ساده در مورد سیگنال‌ها صحبت کنیم،علامت هایی هستند که به پروسه‌ها فرستاده میشوند و پروسه مقصد واکنشی نشان میدهد.بعضی از سیگنال‌ها میتوانند توسط پروسه‌ها نادیده گرفته شوند و بعضی نه. طریقه‌ی handle کردن سیگنال‌ها نیز با توجه به زبانی که استفاده میکنید میتواند متفاوت باشد. در پایتون اینکار از طریق ماژول signal انجام میشود و در سی از طریق پرونده‌ی سرآمد signal.h و تابع signal.جدول زیر فهرستی از سیگنال‌های متداول را نشان میدهد، برای دیدن فهرستی کامل از آنها باید kill -l را ببینید.

  • فاروق کریمی زاده

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

دستور history

این دستور ساده تاریخچه‌ی بش شما را به نمایش میگزارد:

history

خروجی چیزی مانند شکل زیر خواهد بود:

  • فاروق کریمی زاده

چند وقتی بود که این مخزن رو توی گیت‌هاب به لیست علاقه‌مندی ها اضافه کرده بودم، این دستورات برای راه اندازی یک وب سرور ساده‌ی HTTP برای محتویات ایستا هستند(یعنی CGI و PHP و اینا پر!). این سرور ها همه به پورت ۸۰۰۰ گوش میدهند.

  • پایتون ۳
python3 -m http.server 8000
  • پایتون ۲
python -m SimpleHTTPServer 8000
  • روبی
ruby -rwebrick -e'WEBrick::HTTPServer.new(:Port => 8000, :DocumentRoot => Dir.pwd).start'
  • روبی ۱.۹.۲ و بالاتر
ruby -run -ehttpd . -p8000
  • پی اچ پی
php -S 127.0.0.1:8000
  • بیزی‌باکس
busybox httpd -p 8000
  • پاورشل
$Hso=New-Object Net.HttpListener;$Hso.Prefixes.Add("http://+:8000/");$Hso.Start();While ($Hso.IsListening){$HC=$Hso.GetContext();$HRes=$HC.Response;$HRes.Headers.Add("Content-Type","text/plain");$Buf=[Text.Encoding]::UTF8.GetBytes((GC (Join-Path $Pwd ($HC.Request).RawUrl)));$HRes.ContentLength64=$Buf.Length;$HRes.OutputStream.Write($Buf,0,$Buf.Length);$HRes.Close()};$Hso.Stop()

یا اگر خواستید با Command Prompt اجراش بکنید:

PowerShell.exe -nop -enc JABIAHMAbwA9AE4AZQB3AC0ATwBiAGoAZQBjAHQAIABOAGUAdAAuAEgAdAB0AHAATABpAHMAdABlAG4AZQByADsAJABIAHMAbwAuAFAAcgBlAGYAaQB4AGUAcwAuAEEAZABkACgAIgBoAHQAdABwADoALwAvACsAOgA4ADAAMAAwAC8AIgApADsAJABIAHMAbwAuAFMAdABhAHIAdAAoACkAOwBXAGgAaQBsAGUAIAAoACQASABzAG8ALgBJAHMATABpAHMAdABlAG4AaQBuAGcAKQB7ACQASABDAD0AJABIAHMAbwAuAEcAZQB0AEMAbwBuAHQAZQB4AHQAKAApADsAJABIAFIAZQBzAD0AJABIAEMALgBSAGUAcwBwAG8AbgBzAGUAOwAkAEgAUgBlAHMALgBIAGUAYQBkAGUAcgBzAC4AQQBkAGQAKAAiAEMAbwBuAHQAZQBuAHQALQBUAHkAcABlACIALAAiAHQAZQB4AHQALwBwAGwAYQBpAG4AIgApADsAJABCAHUAZgA9AFsAVABlAHgAdAAuAEUAbgBjAG8AZABpAG4AZwBdADoAOgBVAFQARgA4AC4ARwBlAHQAQgB5AHQAZQBzACgAKABHAEMAIAAoAEoAbwBpAG4ALQBQAGEAdABoACAAJABQAHcAZAAgACgAJABIAEMALgBSAGUAcQB1AGUAcwB0ACkALgBSAGEAdwBVAHIAbAApACkAKQA7ACQASABSAGUAcwAuAEMAbwBuAHQAZQBuAHQATABlAG4AZwB0AGgANgA0AD0AJABCAHUAZgAuAEwAZQBuAGcAdABoADsAJABIAFIAZQBzAC4ATwB1AHQAcAB1AHQAUwB0AHIAZQBhAG0ALgBXAHIAaQB0AGUAKAAkAEIAdQBmACwAMAAsACQAQgB1AGYALgBMAGUAbgBnAHQAaAApADsAJABIAFIAZQBzAC4AQwBsAG8AcwBlACgAKQB9ADsAJABIAHMAbwAuAFMAdABvAHAAKAApAA==
  • شل
while true ; do nc -l 8000 < test.html ; done

نسخه پاورشل را خودم امتحان نکرده ام.

منبع و همچنین دستورات بیشتر برای اجرای وب سرور در گیت‌هاب گیست

  • فاروق کریمی زاده

با sshfs میتونید یک دایرکتوری در سرور رو روی یک دایرکتوری در رایانه محلی تون سوار بکنید(mount) و از این طریق به فایل های روی سرور دسترسی داشته باشید.

sshfs [user@]host:[dir] mountpoint [options]

از همون نام کاربری و رمز عبوری که برای ssh استفاده میکنید، برای sshfs نیز استفاده بکنید.بعد از سوار شدن میتوانید به فایل ها همانند فایل های محلی روی رایانه محلی، دسترسی داشته باشید.برای unmount کردن هم:

fusermount -u mountpoint
  • فاروق کریمی زاده

همین الآن اینجا این کتاب رو دیدم، ترجمه فارسی LFS هست و از پایه یک سیستم عامل آزاد با کرنل لینوکس و ابزار های گنو درست میکنید.

کار ترجمه رو آقای دانیال بهزادی انجام دادم. البته به نظر میاد که این ترجمه، یک ترجمه کامل از کتاب LFS نیست با اینحال مفید هست.


حجم: 324 کیلوبایت


پیوند پروژه در لانچ پد

  • فاروق کریمی زاده

این کتاب که زبانش انگلیسی هست و توسط گروهی از نویسنده ها نوشته شده یکسری دستورات خط فرمان لینوکس رو به همراه ویم و نانو آموزش میده! کتاب خیلی خیلی مفیدی هست و من به شدت توصیش میکنم!

توجه کنید که این کتاب یک آموزش برای مدیر سیستم(sysadmin) شدن نیست بلکه فقط برای استفاده از لینوکسه!


حجم: 1.73 مگابایت

  • فاروق کریمی زاده

بیت کوین شل یک ارائه دهنده شل اکانت رایگان لینوکس است که بیت کوین را به عنوان هدیه(donate) می‌پذیرد.

  • بعد از اینکه داخل یه بازی پانگ ساده برنده شدید میتوانید برای خودتان حساب ایجاد کنید.
  • اجازه اجرای برنامه های IRC را دارید.
  • میتوانید برنامه‌هایتان را در پس‌زمینه اجرا کنید.
  • پهنای باند محدود شده است. به صورت میانگین ۶ کیلوبایت در ثانیه
  • شما 128 مگابایت فضا و حداکثر 6000 پرونده دارید.
  • سرور ماهیانه یا زودتر ریبوت میشود.
  • حداکثر 100 پروسه
  • پورت 25 بلاک شده
  • اکانت ها تا زمانی که به فضا نیاز داشته باشند حذف نمیشوند و آن زمان نیز اگر چند ماه وارد حساب خود نشده‌اید، احتمال حذف حساب شما وجود دارد.
  • 95 درصد آپ تایم
  • فاروق کریمی زاده

همین الآن اینو داخل خط فرمان بزنید:

cat /dev/urandom | tr -cd 'A-Za-z0-9!-+' | fold -w 10 | head -n 4

چهار تا پسورد به طول 10 کاراکتر براتون ساخته شد :)

چطور کار میکنه؟

دستور cat محتویات فایل یو رندم رو به نمایش میزاره. فایل یو رندم بایت های تصادفی تولید میکنه.اطلاعات بیشتر در مورد یو رندوم رو اینجا بخونید.

دستور tr باعث میشه فقط کاراکتر هایی که ما میخوایم بمونن و بقیه حذف بشن.

دستور fold متن رو به خط هایی به طول 10 کاراکتر میشکنه و دستور head هم 4 خط اول رو نشون میده.

اون علامت لوله(|) بین دستورات هم خروجی دستور اول رو به ورودی دستور دوم منتقل میکنه.

  • فاروق کریمی زاده