Windows Server 2012

Windows Server 2012: آموزش مدیریت Core Mode | بخش دوم

5.6kviews

در بخش اول آموزش نصب Windows Server 2012 Core Edition ، را به شما آموزش دادیم، در این بخش نحوه مدیریت کردن این سیستم (آموزش مدیریت Core Mode) را از طریق روش‌های مختلف به شما آموزش می‌دهیم، تا به صورت کامل با مبحث Windows Server 2012، آشنا شوید.

آموزش مدیریت سرور – Core Mode – بخش دوم | Windows Server 2012

با توجه به اینکه در این نسخه شما فقط با یک Command Prompt سر و کار دارید بهترین منبع آموزشی شما تایپ دستور help و زدن enter است. در این آموزش با استفاده از دستور sconfig.cmd آموزش را به پیش می‌بریم.
نکته مهم: در انتهای این آموزش برای کنترل و مدیریت این سرور به یک سیستم کلاینت ویندوز ۸ با یک سرور ۲۰۱۲ با GUI برای تنظیمات پیشرفته نیاز داریم.

با زدن دستور sconfig.cmd به محیطی وارد می‌شویم که در زیر آن را مشاهده می‌نمائید.

آموزش مدیریت Core Modeدر اولین مرحله بهتر است با انتخاب گزینه ۲ نام کامپیوتر را به نام دلخواه خود تغییر دهیم، در این مرحله سیستم تقاضای reboot می‌کند.

Manage-Windows-Server-2012-Core-02پس از reboot شدن مجددا دستور sconfig.cmd را بزنید، با انتخاب گزینه ۱ می‌توانید سرور خود را به دامنه (خرید دامنه) متصل نمائید، در این آموزش ما سرور را به دامین متصل نمی‌کنیم، اما لازم است برای سیستم با انتخاب گزینه ۸ یک IP تعریف کنیم.

آموزش مدیریت Core Modeحرف S را به معنای Static انتخاب کنید و IP و DNS مورد نظر خود را وارد نمائید و با زدن دکمه ۴ به منوی اصلی برگردید.
Manage-Windows-Server-2012-Core-04
با در نظر داشتن اینکه Remote Management (نه Remote Desktop) فعال است باید بر روی سیستم کلاینت ویندوز ۸ خود برنامه Powershell را با دسترسی Administartor باز کنیم.
Manage-Windows-Server-2012-Core-05
حالا دستور زیر را وارد نمائید، <YourtargetServernameHere> را با نام سرور خود (Netbios و FQDN) پر نمائید.
Set-Item WSMan:\localhost\Client\TrustedHosts -Value <YourtargetServernameHere> –Force
Manage-Windows-Server-2012-Core-06
حتما قبل از زدن دستور فوق یک بار تلاش کنید با استفاده از نام سرور، سرور خود را ping نمائید تا از درست بودن نام‌ها مطمئن شوید.
در این مرحله لازم است ابزار Remote Server Administration Tool برای ویندوز ۸ را دانلود کنید. پس از نصب RSAT با زدن دکمه Start برنامه‌های نصب شده جدید را پیدا کنید و بر روی Server Manager کلیک کنید.
Manage-Windows-Server-2012-Core-07
پس از اجرا بر روی Add other servers to manage کلیک کنید.
Manage-Windows-Server-2012-Core-08
درصورتی‌که سیستم‌ها در دامین باشند به صورت خودکار لیست سرورها بروز می‌شود. با توجه به اینکه در این آموزش ما در دامین قرار نداریم باید به صورت دستی آن را وارد نمائیم.
بر روی تب DNS کلیک کنید، نام سرور موردنظر خود را وارد نمائید، پس از نمایش آدرس IP مطابق تصویر پیش روید.
Manage-Windows-Server-2012-Core-09
بر روی All Servers در قسمت چپ کلیک کنید، با خطای Kerberos مواجه می‌شوید. این موضوع به دلیل این است که شما اطلاعات دسترسی به سرور را وارد نکرده‌اید. بر روی سرور دکمه راست موس را بزنید و گزینه Manage As را انتخاب نمائید.
Manage-Windows-Server-2012-Core-10
اطلاعات کاربری و رمز عبور را وارد نمائید.
Manage-Windows-Server-2012-Core-11
در بازگشت با پیغام In Progress مواجه می‌شوید.
Manage-Windows-Server-2012-Core-12
پس از اتمام باید خروجی شبیه عکس زیر باشد.
Manage-Windows-Server-2012-Core-13
حالا بر روی سرور دکمه راست را بزنید تا لیست امکانات سرور را مشاهده نمائید.
Manage-Windows-Server-2012-Core-14
حالا می‌توانید Role و Feature های موردنظر خود را نصب نمائید. در این آموزش شما موفق به مدیریت سیستم Windows Server 2012 گردیدید.
زاگریو
دستورات Powershell برای استفاده بیشتر از ویندوز( 6 دستور اساسی)

دستورات Powershell برای استفاده بیشتر از ویندوز( 6 دستور اساسی)

6.9kviews

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

 

دستورات Powershell برای استفاده بیشتر از ویندوز( 6 دستور اساسی)

Get-Help

مایکروسافت از منحنی آموزش دستورات Powershell آگاه است. به همین دلیل است که دستوری با نام Get-help ارائه کرده است که همه اطلاعاتی که در مورد دستورات موجود نیاز دارید را برای شما فراهم می‌کند. هنگامی که در موردی شما به مشکلی برخورد می‌کنید یا سردرگم می‌شوید می‌توانید از این دستور استفاده کنید.

دستورات Powershell

تایپ دستور Get-Help در Powershell شرح مختصری از چیزی که انجام می‌دهد و نحوه استفاده از آن را بیان می‌کند.
در اینجا چند مثال را برای شما آورده‌ایم:
Get-Help <command>
این دستور شرح مختصر و مفیدی از یک دستور خاص را می‌دهد که شامل توصیفات، دستورات مربوطه و قواعد نحوی استفاده از آن دستور است. عناصری که برای قواعد نحوی در براکت [] قرار می‌گیرند اختیاری است.
Get-Help <command> -Full
این دستور جزئیات مختصر و مفیدی را در مورد یک دستور خاص می‌دهد.
Get-Help <command> -Example
این دستور چند نمونه از چگونگی استفاده از command و نوعی از خروجی را که شما انتظار دارید را برای شما نمایش می‌دهد.
Get-Help *
این دستور لیست تمام موضوعات کمکی ممکن را که برای شما موجود است را نمایش می‌دهد. می‌توانید از این دستور به عنوان یک مرجع استفاده نمائید.
Get-Command
Get-Command لیستی از تمام دستوراتی که در حال حاضر برای شما در دسترس است را نمایش می‌دهد. به عبارت دیگر این لیستی از تمام دستورات تک داخل Powershell نیست. با این حال این لیست می‌تواند خیلی طولانی باشد، بهتر است که این لیست را بر اساس دستوراتی که به دنبال آن‌ها هستید فیلتر نمائید.
Get-Command -Name <name>
این command دستورات را با نام داده شده نشان می‌دهد. اگر شما نام دقیق را نمی‌دانید، می‌توانید از کلمات مرتبط با (*) استفاده کنید مانند:
Get-Command -Name *register*، این دستور تمامی دستوراتی که کلمه register در نام آن‌ها وجود دارد را برای شما نشان می‌دهد.
Get-Command -CommandType <type> <name>
این command دستوراتی را با نام‌های خاص نشان می‌دهد مانند Alias, Cmdlet, Function, or Script.
Get-Item

این دستور آیتم‌های خاص با پارامترهایی که شما داده‌اید را برمی‌گرداند. این آیتم می‌تواند یک فایل، فولدر یا هر چیز دیگری باشد. توجه داشته باشید که این دستور محتوای آن آیتم را برنمی‌گرداند. بنابراین اگر Get-Item را برای یک فایل .TXT استفاده کنید محتوای واقعی داخل متن را به شما نشان نمی‌دهد.

استفاده از Get-Item برای یک دایرکتوری در واقع خود دایرکتوری را برای شما برمی‌گرداند بدون محتوای درون آن.
متضاد دستور Get-Item دستور Remove-Item است که آیتم‌های مشخص را حذف می‌کند.
Get-Content
این دستور مانند دستور Get-Item بالاست با این تفاوت که محتوای آیتم‌های مشخص شده را نمایش می‌دهد. اگر شما دستور Get-Item را برای یک فایل .TXT استفاده کنید تمام متن داخل آن را نمایش می‌دهد. اگر این دستور را برای یک فایل PNG استفاده کنید یک دسته فایل باینری ناخوانا را برمی‌گرداند.
این دستور به خودی خود خیلی مفید نیست، شما می‌توانید آن را با دستورات پیشرفته‌تر ترکیب کنید.
با استفاده از دستور Get-Conent می‌توانید یک فایل .TXT حاوی تعداد زیادی آدرس سایت را به دستور Foreach-Object فراخوانی کنید و یک دستور را به صورت پارامتر بر روی هر یک از آدرس سایت‌ها اعمال نمائید.
Get-Service
همان‌طور که از نام این دستور مشخص است، این دستور اطلاعاتی در مورد سرویس‌هایی که روی کامپیوتر شما نصب است را بازیابی می‌کند. اجرای این دستور بدون هیچ پارامتری یک لیست از تمام سرویس‌ها به همراه وضعیت‌شان نشان داده می‌شود. (به عنوان مثال سرویس‌های در حال اجرا یا سرویس‌های متوقف شده)
اگر شما می‌دانید که دقیقا به دنبال چه چیزی هستید با استفاده از Get-Item می‌توانید خیلی سریعتر  از طریق کنترل پنل ویندوز و خدمات GUI از سرویس مورد نظر مطلع شوید.
از دیگر دستورات مفید مبتنی بر خدمات می‌توان به Start-Service ,Stop-Service ,Suspend-Service ,Resume-Service ,Restart-Service اشاره کرد.
Get-Process
دستور Get-Process شبیه به دستور Get-Service است با این تفاوت که اطلاعات مربوط به فرآیندها را برمی‌گرداند. این دستور لیست تمام فرآیندهایی که در حال حاضر بر روی کامپیوتر شما در حال اجراست را نشان می‌دهد. فرآیندها را می‌توان بر اساس نام و شناسه در میان دیگر فرآنیدها فیلتر کرد.
از دیگر دستورات مفید می‌توان به Start-Process ,Stop-Process ,Wait-Process اشاره کرد.

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

جمع‌بندی نهایی

ممکن است برخی از این دستورات خیلی مفید به نظر نرسند. به این دلیل ارزش آن‌ها مشخص نیست زیرا تا وقتی که آن‌‎ها را با عناصر دیگر ترکیب نکنیم قدرت Powershell مشخص نمی‎‌شود.
دستورات Powershell
$(Get-Item C:\SampleDirectory).lastaccesstime
دستور بالا زمان آخرین دسترسی شخصی به یک دایرکتوری خاص را برمی‌گرداند. این نوع از اسکریپت‌ها زمانی که خود شما در حال نوشتن فرمان‌ها یا اسکرپیت‌ها هستید به کار می‌آید که این تنها راهی است که می‌توانید از قابلیت‌ها و مزایای Power shell استفاده کنید.
NANO SERVER

10 ویژگی سیستم عامل Microsoft Nano Server

4.4kviews
در این مطلب، قصد داریم موضوع جذاب Microsoft Nano Server را بررسی کرده و 10 ویژگی سیستم عامل Microsoft Nano Server، را به طور کامل برای شما توضیح دهیم. پس برای آموزشی دیگر، با زاگریو همراه باشید.

10 ویژگی سیستم عامل Microsoft Nano Server

در ادامه به بررسی ویژگی‌های متفاوت سیستم عامل Microsoft Nano Server، از جمله Nano Server چیست؟ ، آیا نانو سرور جایگزین Windows Server خواهد شد ‌‌و اینکه چه موقع Nano Server منتشر خواهد شد؟ ‌‌خواهیم پرداخت.

۱.  Nano Server چیست؟

نانو سرور یک نسخه مقایسه‌ای headless از WindowsServer است که  مایکروسافت در حال توسعه آن تحت نام کد Tuva است. این نسخه برای اجرای خدمات و مدیریت کاملا  از راه دور طراحی شده است. مایکروسافت نانو سرور را تحت عنوان «یک سیستم عامل که با هدف اجرای نرم‌افزارها  و محتوا در Cloud طراحی شده است.» توصیف می‌کند.

NANO SERVER

۲. تفاوت Nano Server با Windows Server چیست؟

اول اینکه نانو سرور یک نسخه کاملا Headless (بی‌سر) بدون GUI است و اینکه نانو یک ردپای خیلی کوچکتر از WindowsServer است critical bulletins کمتر و ۸۰% Reboot کمتر نیاز دارد.
یک سیستم عامل کوچکتر منجر به داشتن سیستمی خواهد شد که نرم‌افزارهای سیستمی کمتری دارد و نتیجتا نیاز به نگهداری کمتری در مقابل مشکلات امنیتی خواهد داشت به نصب سیستم عامل‌های فعلی ویندوز. این مورد همچنین پایداری سیستم را نیز افزایش خواهد داد. این فیلم از مایکروسافت نشان می‌دهد که نانو سرور با ۱TB حافظه رم و بیش از ۱۰۰۰ ماشین مجازی نانو سرور در حال فعالیت است.

۳. Nano Server هیچ رابط گرافیکی کاربر (GUI) یا مدیریت محلی دارد؟

Nano Server رابط گرافیکی کاربر (GUI) ندارد و برخلاف Windows Server Core بدون خط فرمان (command prompt) و کنسول PowerShell است. نانو سرور حتی local login هم ندارد. به طور کلی Nano Server برای حمایت و پشتیبانی از خدمات طراحی شده است.

۴. آیا Nano Server می‌تواند برنامه‌های کاربردی ویندوز را به طور منظم اجرا کند؟

خیر، شما نمی‌توانید برنامه‌های کاربردی رابط گرافیکی کاربر ویندوز را بر روی نانو سرور اجرا کنید. Nano Server برای ارائه خدمات زیرساخت طراحی شده است.

خرید سرور

۵. اگر Nano Server برنامه‌های کاربردی ویندوز را اجرا نمی‌کند پس چه چیزی اجرا می‌کند؟

مایکروسافت دو سناریوی اصلی در مورد نانو سرور ارائه می‌دهد.

خدمات زیرساخت سرور Cloud از قبیل (Hyper-v، Hyper-V cluster، Scale-Out File Servers (SOFSs و نرم‌افزارهای born-in-the-cloud که در حال اجرا بر روی ماشین‌های مجازی (virtual machines) ، containers و یا پلت‌فرم‌های توسعه‌یافته هستند که به UI بر روی سرور نیاز ندارند. نانو سرور از runtime های مختلف مانند C# ، Java ، Node.js و Python پشتیبانی می‌کند. Nano Server یک API سازگار با ویندوز سرور خواهد بود، با زیرمجموعه‌ای از اجزایی که نانو فراهم می‌کند.

۶. علاوه بر GUI و command shell مایکروسافت چه چیزی را از WindowsServer برای ساخت نانو سرور حذف کرده است؟

علاوه بر حذف GUI و command shell، مایکروسافت پشتیبانی از ۳۲ بیت (WOW64)، از نصب MSI و بسیاری از Server Core components ها را حذف کرده است.

مدیریت سرور

۷.  شما چگونه می‌توانید Nano Server را بدون GUI و command prompt مدیریت کنید؟

تمام مدیریت Nano از راه دور با استفاده از WMI و PowerShell  انجام می‌شود. مایکروسافت همچنین اعلام کرده است که نانو نقش‌های ویندوز سرور و ویژگی‌های پشتیبانی را با استفاده از ویژگی‌های on Demand and DISM (Deployment Image Servicing and Management) خواهد داشت.

نانو سرور همچنین انتقال فایل از راه دور، نوشتن اسکریپت از راه دور و اشکال‌زدایی از راه دور از Visual Studio را پشتیبانی می‌کند. مایکروسافت همچنین اعلام کرد که ابزار مدیریت مبتنی بر وب را برای Nano Server فراهم می‌کند.

command prompt

۸.  آیا نانو سرور جایگزین Windows Server خواهد شد؟

خیر، Nano Server برای زیرساخت‌های تخصصی سرور طراحی شده است. نانو سرور می‌تواند به عنوان یک گزینه نصب از تنظیمات برنامه WindowsServer نصب شود مانند ServerCore. مایکروسافت نسخه‌های جدیدی از Windows Server را به عنوان یک هدف کلی سیستم عامل سرور برای آینده قابل پیش بینی منتشر خواهد کرد.

Windows Server

۹.  چه موقع Nano Server منتشر خواهد شد؟

مایکروسافت اعلام نکرده است که چه زمانی نانو سرور در دسترس خواهد بود. با این حال چون یک گزینه از Windows Server است انتظار می‌رود که با نسخه جدید Windows Server in 2016 منتشر شود.

۱۰.  کجا می‌توانیم اطلاعات بیشتری در مورد Nano Server بدست بیارویم؟

شما می‌توانید از Windows Server Blog در مورد آینده نانو سرور اطلاعات بدست آورید. همچنین مایکروسافت در مورد نانو سرور اطلاعات بیشتری را در BUILD  و Ignite منتشتر خواهد کرد.
میزبانی وب زاگریو
فایل‌ های core. چیست و چطور از ایجاد آن‌ها جلوگیری کنیم؟

فایل‌ های core. چیست و چطور از ایجاد آن‌ها جلوگیری کنیم؟

2.6kviews

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

فایل‌ های core

فایل‌های Core dump (فایل‌ های core) در اصل یک کپی از حافظه Memory و یا دیسک است. که در یک لحظه خاص که یک برنامه به صورت ناگهانی بسته می‌شود ایجاد می‌گردد. این بسته شدن ناگهانی ممکن است به دلایل متعددی به وجود آید. با این حال اکثر سیستم عامل‌ها بصورت پیش‌فرض به صورتی تنظیم شده‌اند که در زمان‌های خطا این فایل‌ها را ایجاد کنند.

فایل‌ های core

فایل‌های core به مدیران سرور کمک می‌کنند تا ایرادات نرم‌افزاری را در هنگام تولید و گسترش آن‌ها با همکاری برنامه‌نویسان برطرف کنند، اما در محیط‌های اشتراکی این موارد به ندرت استفاده می‌شوند و وجود آنها تنها باعث مصرف فضای دیسک و منابع مدیریت سرور شود، که برای هم استفاده کننده و هم برای مدیران سرورها مشکلاتی را ایجاد می‌کنند.

پیشنهاد می‌شود در چنین محیط‌هایی این امکان را غیرفعال کنید و در تنها در صورت نیاز آن‌ها را فعال نمائید.

در سیستم عامل‌های لینوکس می‌توانید با تعریف تنظیمات در فایل limits.conf که ماژول pam_limit را مدیریت می‌کند. با استفاده از دستور زیر آن را غیرفعال کنید:

echo '* soft core 0' >> /etc/security/limits.conf

یا می‌توانید در یک برنامه ویرایشگر متن مانند vi فایل را باز کنید:

vi /etc/security/limits.conf

و سپس خط زیر را در این فایل اضافه کنید:

* soft core 0

با این کار اطمینان حاصل می‌کنید که فایل‌های core dump (رونوشت حافظه) در سیستم ایجاد نمی‌شوند.

همچنین با دستور زیر می‌توانید فایل‌ های core را در سرور خود پیدا و حذف کنید:

find /home/*/public_html -name core.[0-9]*

میزبانی وب زاگریو

SSL Perfect Forward Secrecy

SSL Perfect Forward Secrecy تنظیم TLS 1.2 برای IIS

2.8kviews

در این مطلب به نقد و بررسی موضوع SSL Perfect Forward Secrecy و تنظیم TLS 1.2 برای IIS، خواهیم پرداخت،‌پس تا آخر این مقاله، همراه زاگریو باشید.

SSL Perfect Forward Secrecy تنظیم TLS 1.2 برای IIS

با استفاده از اسکریپت زیر می توانید بر روی IIS نسخه های ۷٫۵/۸٫۰/۸٫۵/۱۰ و سیستم عامل های ویندوز ۲۰۰۸R2/2012/2012R2/2016 تنظیمات لازم جهت پشتیبانی از TLS1.1 و TLS1.2 را با استفاده از پروتکل SSL Perfect Forward Secrecy اعمال نمائید.

همچنین استفاده از این اسکریپت به شما این امکان را می دهد تا امنیت ارتباطات SSL خود را یا غیر فعاال کردن SSL2 و SSL3 افزایش دهید و تمامی الگوریتم های رمزنگاری (Cipher Suites) ضعیف را غیر فعال کنید. این اسکریپت بر مبنای قوانین بهترین روش‌های متداول امنیتی پیاده سازی شده است.

توجه داشته باشید که Perfect Forward Secrecy که بطور خلاصه از آن بعنوان PFS یاد می‌شود، تنها روش جلوگیری از کدگشایی اطلاعات شما توسط هکر ها و سازمان اطلاعاتی بعد از Traffic Shaping است. همیشه در ذهن داشته باشید که کدگشایی گواهینامه‌های امنیتی حال حاضر تا چند سال آتی و با گسترش سرعت سیستم های کامپیوتری ممکن خواهد بود.

به عنوان مصرف کننده سیستم های IIS سیستم شما از نظر مشکل Heartbleed که در OpenSSL بوجود آمده بود در امان است اما همه ما امیدواریم که schannel.dll مایکروسافت دارای باگ نباشد. با استفاده از PFS حتی اگر Private Key شما در اختیار یک سازمان اطلاعاتی قرار بگیرد و یا حتی لو برود، امکان کدگشایی ترافیک SSL Perfect Forward Secrecy شما وجود ندارد!

سرقت کلید خصوصی توسط باگ Heartbleed بسیار راحت است، حتی هم اکنون وب سرورهای Apache زیادی در دنیای اینترنت وجود دارد که دارای این مشکل هستند. تنها آپاچی نسخه ۲٫۴ به همراه OpenSSL نسخه ۱٫۰٫۱x بصورت کامل از PFS پشتیبانی می کند. تا به امروز تقریبا تمامی نسخ پایدار توزیع های لینوکس بصورت پیشفرض دارای نسخه ۲٫۲ آپاچی می باشند و به روزرسانی به نسخه ۲٫۴ بسیار دشوار است اما غیر ممکن نیست.

در تاریخ ۲۵ May 2014، دبیان الگوریتیم های رمزنگاری ECDH را با انتشار apache2_2.2.22-13+deb7u4_changelog برای نسخه ۲٫۲ آپاچی امکان پذیر کرد و هم اکنون امکان استفاده از PFS را برای آن فراهم کرده است. اگر به دنبال اعمال تنظیمات امن SSL Perfect Forward Secrecy برای Apache خود هستند لطفا به Mozilla SSL Configuration Generator مراجعه کنید. فعال کردن سایتهای SSL بدون فعال کردن PFS یک ریسک امنیتی حیاتی به حساب می‌آید.

 

پس از اجرای اسکریپ زیر و اعمال تغییرات در رجیستری، با استفاده از ابزار بی نظیر https://www.ssllabs.com/ssltest به یک خلاصه مانند تصویر زیر خواهید رسید:

SSL Perfect Forward Secrecy

 

توجه داشته باشید که ویندوز XP با IE6 از PFS پشتیبانی نمی کند و در صورتی که تمایل دارید این دسته از کاربران با IE8 بتوانند سایت شما را بازدید کنند می بایست ۳DES را فعال نگه دارید، این اسکریپت RC4 را غیر فعال خواهد کرد.

SSL Perfect Forward Secrecy

 

اسکریپت پاورشل جهت فعال کردن SSL Perfect Forward Secrecy و TLS 1.2 بر روی سرورهای IIS:

روشن و خاموش کردن فایروال ویندوز با استفاده از دستورات

روشن و خاموش کردن فایروال ویندوز با استفاده از دستورات

4.3kviews

این مقاله توضیح می‌دهد که چگونه به سرعت می‌توانید فایروال ویندوز را خاموش و یا روشن کنید. این دستورات را برای ویندوز ویستا، ویندوز ۷ و ویندوز سرور ۲۰۰۸ قابل استفاده است.

روشن و خاموش کردن فایروال ویندوز با استفاده از دستورات

فایروال بر روی کامپیوترهایی که ویندوز ویستا، ویندوز ۷ و ویندوز سرور ۲۰۰۸ دارند به صورت پیش‌فرض فعال است. ممکن است شما به دلایل مختلف نیاز داشته باشید که فایروال را خاموش کنید. با استفاده از این دستورات می‌توانید فایروال را خیلی سریع روشن و یا خاموش کنید.

روشن و خاموش کردن فایروال

برای خاموش کردن فایروال از دستور زیر استفاده کنید:
NetSh Advfirewall set allprofiles state off
برای روشن کردن فایروال از دستور زیر استفاده کنید:
NetSh Advfirewall set allrprofiles state on
برای بررسی وضعیت فایروال از دستور زیر استفاده کنید:

Netsh Advfirewall show allprofiles

تنظیم گواهینامه امنیتی SSL برای Remote Desktop

تنظیم گواهینامه امنیتی SSL برای Remote Desktop

2.7kviews

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

تنظیم گواهینامه امنیتی SSL برای Remote Desktop

ابتدا لازم است متناسب با نامه FQDN سرور و یا کلاینت خود یک گواهینامه امنیتی دریافت کنید. روش دریافت این گواهینامه در این مقاله درج نشده است اما در هر زمان می‌توانید با تماس با ما نسبت به دریافت راهنمایی اقدام نمائید و یا از راه ساده‌تری به نام Google استفاده کنید!

پس از تهیه و خرید گواهینامه SSL و نصب آن در مخزن کامپیوتر:

Remote Desktop

با استفاده از دستور پاورشل زیر یا مطابق تصویر Thumbprint را آن را به دست آورید:

Get-ChildItem Cert:\LocalMachine\My

Remote Desktop

سپس با استفاده از دستور زیر نسبت به تغییر آن اقدام نمائید:

wmic /namespace:\\root\cimv2\TerminalServices PATH Win32_TSGeneralSetting Set SSLCertificateSHA1Hash="THUMBPRINT"

به جای THUMBPRINT مقدار دریافت شده را قرار دهید:

wmic /namespace:\\root\cimv2\TerminalServices PATH Win32_TSGeneralSetting Set SSLCertificateSHA1Hash="817CFA9F16AC22CB85B61B6AEE25153B3EC5DCC6"

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

این دستور مقدار زیر را در Registry تغییر می‌دهد:

Registry path: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
Value name: SSLCertificateSHA1Hash
Value type: REG_BINARY
Value data: certificate thumbprint

ایمن سازی رمز عبور در اسکریپت و فایل PowerShell

ایمن سازی رمز عبور در اسکریپت و فایل PowerShell

432views

مثل تمامی مدیران سیستم، من هم بعضا لازم شده اسکریپت هایی را برای اتوماسیون برخی وظایف پیاده سازی کنم. خودکار سازی وظایف توسط فایل PowerShell بسیار ساده و کارآمد است تا زمانی که بخواهید رمزهای عبور را در آن قرار دهید.

ایمن سازی رمز عبور در اسکریپت و فایل PowerShell

تعداد زیادی اسکریپت و فایل را دیده ام که برخی مدیران سیستم برای راحتی کار، رمز عبور را بصورت کاملا واضح درون فایل‌ها قرار داده‌اند، بعضا تصور می‌کنند چون این فایل‌ها در پوشه‌های تو در تو و بعضا در مسیرهای Group Policy ها قرار دارد، کاملا امن و دور از دسترس هستند، در صورتی که اصلا این چنین نیست و یک کلاه سیاه اولین جایی را که برای یافتن اطلاعات حساس زیر و رو می کند، همین بخش ها می باشد. انجام این عمل به عنوان یک گناه کبیره در صنعت IT و امنیت حساب می شود!

فایل PowerShell

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

1- استفاده از Get-Credential و Read-Host

شما می توانید یک آبجکت PSCredential را با دستور Get-Credential ایجاد و آن را در یک متغیر ذخیره کنید و سپس آن را در دستوری که از PSCredential پشتیبانی می کند استفاده کنید.

هنگامی که شما متغیر $MyCredential را فراخواهنی می‌کنید، شما می‌توانید نام کاربری را مشاهده کنید اما رمز عبور را به شکل “System.Security.SecureString” نشان می‌دهد، این به این دلیل است که هم اکنون رمز ها به صورت یک “رشته امن” ذخیره شده است.

شما هم اکنون می توانید این متغیر را در هر دستوری (cmdlets) که از مقدار PSCredential پشتیبانی می کند، فراخوانی کنید. حتی اگر دستور از این مقدار پشتیبانی نمی کند و فقط می خواهید نام کاربری و یا فقط رمز عبور را به یک دستور ارسال کنید، می توانید به صورت $MyCredential.UserName و یا $MyCredential.Password از آن استفاده کنید.

همچنین شما می توانید از دستور Read-Host برای ورود اطلاعات در همان لحظه به داخل یک متغیر استفاده کنید. با افزودن گزینه AsSecureString می توانید مقادیر وارد شده را بصورت امن ذخیره کنید:

خروجی این روش همانند قبلی یکسان هست. نام کاربری و رمز عبور به سهولت در دسترس و رمز عبور بصورت یک رشته امن ذخیره شده است.

این دو مورد روش های خوبی برای اجرای یکبار و یا دستی اسکریپت ها هست که رمز عبور را درون فایلها قرار ندهیم اما برای اتوماسیون وظایف اصلا مناسب نیست. ما به دنبال راهکاری هستیم که بدون نیاز به ورود دائم رمزها توسط دستورات فوق و یا رها کردن رمزهای عبوری که برای همه قابل مشاهده باشد؛ بتوانیم وظایف و اسکریپت ها را بصورت خودکار اجرا کنیم.

 

2- رمزنگاری کلمه های عبور و رشته های دیگر توسط ConvertTo-SecureString

با استفاده از ConvertTo-SecureString می توانید یک متن یا رشته ساده را به بصورت یک رشته رمزنگاری شده SecureString تبدیل کنید. این مقدار می‌تواند برای تمامی دستوراتی که نوع PSCredential را قبول می کنند استفاده شود.

نحوه استفاده:

برای مثال جهت تبدیل کلمه عبور P@ssword1 به یک رشته امن از دستور زیر استفاده می کنیم:

خروجی این نوع یک رشته امن خواهد بود. متاسفانه این امکان وجود ندارد که SecureString را درون یک فایل برای استفاده های آتی قرار دهیم، به همین منظور باید SecureString را به یک رشته رمزنگاری شده تغییر دهیم. برای این کار از دستور ConvertFrom-SecureString استفاده می کنیم.

3- ذخیره کردن یک رشته رمزنگاری شده – ConvertFrom-SecureString

با استفاده از این دستور می‌توانیم یک رشته امن را به یک رشته ساده رمزنگاری شده تغییر داده و آن را بصورت مستقیم و یا بصورت Pipe درون دستورات خود استفاده کنیم.

نحوه استفاده:

دقیقا مطابق مثالی که در بالا زدیم، ما خروجی دستور فوق را با استفاده از دستور ذکر شده به یک رشته رمزنگاری شده تغییر میدهیم:

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

جمع بندی

یادگرفتیم که چطور یک رشته امن را به یک رشته رمزنگاری شده تغییر دهیم، یک رشته ساده را به یک رشته امن تغییر می‌دهیم و سپس آن را رمزنگاری کرده و امکان ذخیره آن را در فایل‌ها داریم.

خروجی گرفتن یک رشته امن از یک متن ساده و ذخیره آن در یک فایل با دستور Out-File

خروجی گرفتن یک رشته امن توسط Get-Credential

خروجی گرفتن یک رشته امن توسط Read-Host

هر یک از دستورات فوق به ما یک فایل با نام Password.txt می دهد که دارای یک رشته رمزنگاری شده است.

هنگامی که نیاز دارید از این رمز استفاده کنید، در اصل باید این مراحل را بصورت برعکس استفاده کنید. اگر شما به SecureString فقط نیاز دارید می توانید تا همین مرحله فقط استفاده کنید.

ایجاد SecureString توسط Get-Content و ConvertTo-SecureString

ایجاد یک نوع PSCredential

نکته آخر:

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

فایل PowerShell

همانطور که در بالا گفته شد، ما از یک کلید و یا یک کلید امن برای تهیه این رشته امن استفاده نمی‌کنیم. این روش فقط برای همان کاربر و بر روی همان سیستم که تهیه شده قابل استفاده است و اگر شما از کلید/کلید امن استفاده نکنید، نمی‌توانید آن را بازگشایی کنید. هر پردازشی که در همان سیستم و توسط همان کاربر اجرا شود می‌تواند رشته رمزنگاری شده را باز کند.

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

میزبانی وب زاگریو

نحوه حذف و مشاهده لیست برنامه های نصب شده در ویندوز نسخه Core

نحوه حذف و مشاهده لیست برنامه های نصب شده در ویندوز نسخه Core

355views

 

اگر از ویندوز نسخه Core استفاده می کنید، برای مشاهده و حذف برنامه های نصب شده می توانید از روش های زیر استفاده کنید:

 

1- در پاورشل از دستورات زیر میتوانید استفاده کنید:

2- در cmd دستور زیر را بزنید:

3- می توانید کلیدهای رجیستری زیر را مشاهده کنید، البته این لیست به دلایل نامشخصی در مقایسه با مواردی که در کنترل پنل مشاهده می شود کامل نیست.

البته راه کارهای مشابه و زیادی برای مشاهده و حذف این برنامه ها وجود دارد، بهترین روش استفاده از گزینه setup همان برنامه ای است که آن را نصب کرده اید، میتوانید با سوئیچ های Uninstall برنامه های نصبی، آنها را حذف کنید.

Replication

آموزش ایجاد Master-to-Master replication در MariaDB

749views

در این آموزش قصد داریم به بحث sql master-to-master replication بپردازیم، اگر نمی‌دانید که replication به شیوه master-to-master چیست در ادامه در این آموزش با ما همراه باشید، تا هم نحوه ایجاد و هم با این نوع replication آشنا شوید.

در این شیوه اجازه داده می‌شود که اطلاعات و داده ها توسط گروهی از سرورها ذخیره شوند و در هر زمان با آپدیت شدن این اطلاعات در هر کدام از این سرورها اطلاعات و داده‌های ما بروزرسانی و آپدیت شود. در مثال زیر ما از دو سرور استفاده می‌کنیم و همزمان در پیکربندی این سرورها آنها را Master و slave یکدیگر قرار می‌دهیم.

replication چیست

قبل از هرچیزی، به صورت مختصر به بررسی معنی کلمه Replication می‌رسیم، کلمه Replication، به معنی تشکیل کپی‌ها یا Replica‌ها از یک استوریج (storage)، روی استوریج (مخزن اطلاعات) دیگری است، تا در صورت بروز خرابی و حادثه، کپی از اطلاعات موجود باشد و داده‌ها به صورت دائمی پاک نشوند. مکان این دستگاه‌ها ممکن است از شهر یا کشور متفاوتی باشد.

استفاده از Replication، خصوصا برای شرکت‌هایی که اطلاعات مهم – mission critical data دارند بسیار مهم است. در پیاده سازی ریپلیکیشن باید تست‌های لازم انجام شود و بررسی شود که آیا پهنای باند لازم برای این کار فراهم است یا خیر.

موارد مورد نیاز ایجاد master-to-master replication

برای آموزش پیش رو ما فرض می‌کنیم که شما موارد زیر را در اختیار دارید و می‌توانید آن‌ها پیکربندی نمایید.

replication

  • دو سرور با دیتابیس MariaDB که از پیش نصب شده باشد.
  • یک دیتابیس نمونه
  • دسترسی روت به سرور
  • کلاینت SSH

در ادامه روند آموزش ما نام دیتابیس نمونه را replicate.db در نظر گرفته‌ایم. این دیتابیس در شروع آموزش اطلاعاتی در خود ندارد. اگر تمامی موارد بالا را در اختیار دارید می‌توانیم به سراغ ایجاد master-to-master replication برویم.

مدیریت سرور

پیکربندی سرور A

این سرور قرار است اولین Master server ما باشد و باید آن را برای پروسه replication و فعال کردن آن آماده نماییم. برای این منظور دستور زیر را اجرا نمایید.

در بخش [mysqld] باید بخش‌های زیر را اضافه نمایید.

سپس sql سرور خود را دوباره راه اندازی نمایید.

به MariaDB خود با دسترسی روت لاگین نمایید. و یک یوزر master با دسترسی‌های مورد نیاز ایجاد نمایید.

کامند ‘SHOW MASTER STATUS’  لاگ باینری فعلی موقعیتی که master باید از آن replication را شروع نماید را نشان می‌دهد. مانند زیر:

در نظر داشته باشید که موقعیت و فایل مورد نظر ر ا به خاطر بسپارید و ذخیره نمایید چون بعدا به آن نیاز خواهید داشت.

پیکربندی سرور B

قبل از شروع پروسه replication توجه داشته باشید که دیتابیس ساخته شده در سرور A را کپی نموده و به اینجا منتقل نمایید. این سرور دومین master سرور ما می‌باشد و برای عملیات replication باید آن را پیکربندی نماییم. برای شروع مثل قبل دوباره از دستور:

در بخش [mysqld] باید بخش‌های زیر را اضافه نمایید.

سپس sql سرور خود را دوباره راه اندازی نمایید.

مانند قبل به صورت روت به دیتابیس خود متصل شوید و یک یوزر master با دسترسی‌های مورد نیاز ایجاد نمایید.

قدم بعدی شامل بعضی از اطلاعات سرور A می‌شود که باید در سرور B نیز وارد شوند برای وارد نمودن این اطلاعات باید مانند زیر عمل نمایید.

قدم آخری که در سرور B باید برای تکمیل مراحل replication انجام دهیم تا اطلاعات را دریافت نماید بر مستر لاگ ذخیره کند و به سرور A ارسال نماید.

دستور ‘SHOW MASTER STATUS‘ لاگ باینری فعلی موقعیتی که master باید از آن replication را شروع نماید را نشان می‌دهد. مانند زیر:

در نظر داشته باشید که موقعیت و فایل مورد نظر ر ا به خاطر بسپارید و ذخیره نمایید چون بعدا به آن نیاز خواهید داشت.

کامل کردن replication بر روی سرور A

برای اتمام پروسه replication نیاز است که به سرور A وارد شوید و در MariaDB لاگین نمایید تا اطلاعتی که از سرور B دریافت کردیم را در این سرور وارد نماییم برای این منظور مانند زیر عمل نمایید:

بررسی عملکرد درست master-to-master

حالا که تمام پیکربندی‌ها کامل شد نیاز است که بررسی کنیم که آیا سیستم به درستی کار می‌کند یا نه؟ برای این منظور به سرو A لاگین می‌نماییم و وارد دیتابیس MariaDB می‌شویم، حالا یک جدول در دیتابیس replicate.db می‌سازیم.

حالا وارد سرور B شوید در این سرور نیز باید جدول ساخته شده را مشاهده نمایید.

که به صورت زیر نمایش داده می‌شود:

برای اینکه مطمئن شوید بر روی سرور B نیز این امر امکان پذیر است می‌توانید مانند عملیات بالا را برای سرور B نیز انجام دهید.

زاگریو