My folder vip
76 subscribers
202 photos
82 videos
622 files
499 links
آرشیو یادگیری هک/امنیت

اینجا فولدر شخصی من برای یادگیری و ثبت مطالب Linux، Networking و Cyber Security است.

🔐 LPIC | Network+ | CEH | SANS
🐧 Linux & System Administration
🌐 Networking & Troubleshooting
💻 Python & Security Tools
🧪 Labs | CTF | Prac
Download Telegram
۵. مثال کامل ارث‌بری در پایتون
class Server:
def __init__(self, name, ip):
self.name = name
self.ip = ip

def show_info(self):
print(f"Name: {self.name}")
print(f"IP: {self.ip}")


class LinuxServer(Server):
def __init__(self, name, ip, distro):
super().__init__(name, ip)
self.distro = distro

def show_linux_info(self):
self.show_info()
print(f"Distro: {self.distro}")

حالا از کلاس فرزند، یک Instance می‌سازیم:
linux1 = LinuxServer(
"Web-Server",
"192.168.1.10",
"Ubuntu"
)

linux1.show_linux_info()

خروجی:
Name: Web-Server
IP: 192.168.1.10
Distro: Ubuntu

این کد چطور کار می‌کنه؟
۱. class LinuxServer(Server):
با قرار دادن نام کلاس والد داخل پرانتز، مشخص می‌کنیم که LinuxServer از Server ارث‌بری می‌کنه.
۲. super().__init__(name, ip)
با super() به پیاده‌سازی کلاس والد دسترسی پیدا می‌کنیم.
در این مثال، متد __init__() کلاس Server رو اجرا می‌کنیم تا ویژگی‌های name و ip مقداردهی بشن.
۳. self.distro = distro
این ویژگی مخصوص کلاس فرزند است و توزیع لینوکس سرور رو ذخیره می‌کنه.
۴. self.show_info()
چون LinuxServer از Server ارث‌بری کرده، می‌تونه از متد show_info() کلاس والد استفاده کنه.
پس لازم نیست اون متد رو دوباره بنویسیم!

——————

۶. چرا ارث‌بری مهم است؟

فرض کن برای هر نوع سرور، تمام ویژگی‌ها و متدهای مشترک رو دوباره تعریف کنیم.

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

Inheritance کمک می‌کنه:

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

البته هر جا کلاس‌ها رابطه منطقی والد و فرزندی ندارن، استفاده از ارث‌بری لزوماً انتخاب مناسبی نیست.
🐍 فصل پانزدهم — پایتون مقدماتی regex
—————————————-

خب رسیدیم به یکی از مباحث بسیار کاربردی پایتون، مخصوصاً برای امنیت شبکه، پنتست، تحلیل لاگ و پردازش داده‌ها. 🔐
فقط اول یک اصلاح مهم: Regex مربوط به رمزنگاری (Encryption) نیست. ریجکس ابزاری برای جست‌وجو، شناسایی و بررسی الگوهای متنیه.

——————————

۱. Regex چیست؟
Regex مخفف Regular Expression است.
به زبان ساده، Regex به ما اجازه می‌ده داخل متن، دنبال یک الگوی مشخص بگردیم.
مثلاً فرض کن یک فایل لاگ داریم که داخلش هزاران خط اطلاعات وجود داره. می‌خوایم تمام آدرس‌های IP یا ایمیل‌ها رو از داخلش پیدا کنیم.
به‌جای اینکه تک‌تک خطوط رو بررسی کنیم، با Regex می‌تونیم الگوی موردنظر رو مشخص کنیم و پایتون اون رو جست‌وجو کنه.
کاربردهای Regex
جست‌وجو در متن
اعتبارسنجی ایمیل و شماره تلفن
استخراج آدرس‌های IP از لاگ‌ها
بررسی فرمت رمز عبور
پیدا کردن الگوهای مشکوک در لاگ‌های امنیتی
پردازش و پاک‌سازی داده‌های متنی
در پایتون، ماژول داخلی re برای کار با Regex استفاده می‌شه و نیازی به نصب جداگانه نداره.
import re

—————-
۲. جست‌وجو در متن با re.search()
متد re.search() در یک متن، دنبال اولین تطابق با الگوی مشخص‌شده می‌گرده.
مثال جزوه
import re

text = "hi"
pattern = "rain"

match = re.search(pattern, text)

if match:
print("Find")
print(f"From character {match.start()} to {match.end()}")
else:
print("Not found")

خروجی:
Not found

چرا؟
چون کلمه rain داخل متن hi وجود نداره.
مثال دوم
import re

text = "Hello rain world"
pattern = "rain"

match = re.search(pattern, text)

if match:
print("Find")
print(f"From character {match.start()} to {match.end()}")
else:
print("Not found")

خروجی:
Find
From character 6 to 10

——————

۳. آشنایی با نمادهای مهم Regex
حالا بریم سراغ نمادهایی که در جزوه‌ات نوشتی.
\d — پیدا کردن عدد
\d هر رقم عددی رو شناسایی می‌کنه.
مثال:
import re

text = "My age is 25"

result = re.findall(r"\d", text)

print(result)

خروجی:
['2', '5']

اگر بخوایم اعداد چندرقمی رو یکجا پیدا کنیم:
print(re.findall(r"\d+", text))

خروجی:
['25']

—————-


\w — کاراکترهای کلمه‌ای
\w معمولاً حروف، اعداد و زیرخط (_) رو شناسایی می‌کنه.
مثال:
import re

text = "ali_123!"

result = re.findall(r"\w", text)

print(result)

خروجی:
['a', 'l', 'i', '_', '1', '2', '3']

علامت ! پیدا نمی‌شه؛ چون جزو کاراکترهای \w نیست.
نکته: در پایتون، \w به‌صورت پیش‌فرض کاراکترهای حرفی Unicode، از جمله بسیاری از حروف فارسی، رو هم شامل می‌شه.

—————————

\+ — پیدا کردن علامت + به‌صورت واقعی
علامت + در Regex یک معنی ویژه داره؛ یعنی «یک یا چند بار تکرار».
اگر بخوایم خود علامت + رو جست‌وجو کنیم، باید قبلش بک‌اسلش بذاریم:
import re

text = "5+3"

result = re.search(r"\+", text)

if result:
print("Plus found")

خروجی:
Plus found

. — هر کاراکتر
نقطه (.) در Regex معمولاً به معنی هر کاراکتری به‌جز خط جدید (\n) است.
مثال:
import re

text = "cat"

result = re.findall(r"c.t", text)

print(result)

خروجی:
['cat']

چون نقطه می‌تونه با کاراکتر a تطبیق پیدا کنه.
مثال‌های دیگه:
c.t → cat
c.t → cot
c.t → c7t

اما c.t با ct تطبیق پیدا نمی‌کنه؛ چون نقطه باید با یک کاراکتر تطبیق داشته باشه.

——————


مثال ترکیبی
import re

text = "Ali123"

result = re.findall(r"\w+", text)

print(result)

خروجی:
['Ali123']

چون تمام حروف و اعداد پشت سر هم، با الگوی \w+ تطبیق پیدا می‌کنن.

———————

۵. اعتبارسنجی ایمیل با Regex
حالا بریم سراغ مثال ایمیل که در جزوه‌ات نوشتی.
هدف اینه که بررسی کنیم آیا ایمیل واردشده، با یک الگوی مشخص مطابقت داره یا نه.
نسخه اصلاح‌شده کد
import re

def is_valid_email(email):
pattern = r"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$"

return re.fullmatch(pattern, email) is not None


email = input("Enter email: ")

if is_valid_email(email):
print("Valid email")
else:
print("Invalid email")

مثال ورودی و خروجی
ورودی:
ali123@gmail.com

خروجی:
Valid email

ورودی:
ali123gmail.com

خروجی:
Invalid email

چون در ایمیل دوم علامت @ وجود نداره.


——————-
My folder vip
🐍 فصل پانزدهم — پایتون مقدماتی regex —————————————- خب رسیدیم به یکی از مباحث بسیار کاربردی پایتون، مخصوصاً برای امنیت شبکه، پنتست، تحلیل لاگ و پردازش داده‌ها. 🔐 فقط اول یک اصلاح مهم: Regex مربوط به رمزنگاری (Encryption) نیست. ریجکس ابزاری برای جست‌وجو،…
چرا از \. استفاده کردیم؟
چون نقطه در Regex معنای خاصی داره و تقریباً هر کاراکتری رو تطبیق می‌ده.
اما ما در ایمیل به یک نقطه واقعی نیاز داریم؛ بنابراین می‌نویسیم:
\.

چرا از r قبل از رشته استفاده کردیم؟
مثلاً:
pattern = r"\d+"

حرف r یعنی Raw String.
این کار باعث می‌شه بک‌اسلش‌ها در رشته، به‌صورت خام نگه داشته بشن و برای نوشتن Regex خواناتر باشن.
نکته مهم: این الگو یک بررسی مقدماتی برای فرمت ایمیله، نه اعتبارسنجی کامل استاندارد ایمیل. ممکنه بعضی آدرس‌های معتبر رو رد کنه یا بعضی آدرس‌های نامعتبر رو بپذیره. برای اطمینان از واقعی بودن ایمیل، معمولاً باید تأییدیه ارسال بشه.

—————

مثال findall():
import re

text = "User1 logged in. User2 logged in."

users = re.findall(r"User\d", text)

print(users)

خروجی:
['User1', 'User2']

——————
My folder vip
چرا از \. استفاده کردیم؟ چون نقطه در Regex معنای خاصی داره و تقریباً هر کاراکتری رو تطبیق می‌ده. اما ما در ایمیل به یک نقطه واقعی نیاز داریم؛ بنابراین می‌نویسیم: \. چرا از r قبل از رشته استفاده کردیم؟ مثلاً: pattern = r"\d+" حرف r یعنی Raw String. این کار…
کاربرد Regex در امنیت سایبری 🔐
فرض کن در یک فایل لاگ، آدرس‌های IP زیادی وجود داره و می‌خوایم اون‌ها رو استخراج کنیم.
import re

text = """
Login from 192.168.1.10
Login from 10.0.0.5
"""

ips = re.findall(r"\b\d{1,3}(?:\.\d{1,3}){3}\b", text)

print(ips)

خروجی:
['192.168.1.10', '10.0.0.5']

این Regex ظاهری شبیه IPv4 رو پیدا می‌کنه، اما به‌تنهایی معتبر بودن IP رو تضمین نمی‌کنه؛ برای اعتبارسنجی دقیق IPv4 بهتره از ماژول ipaddress استفاده کنیم.
در تحلیل لاگ‌ها، Regex می‌تونه به استخراج IP، شناسایی الگوهای درخواست مشکوک و فیلتر کردن داده‌ها کمک کنه.
پایتون مقدماتی هم با موفقیت تموم شد!

تا اینجا مسیر:

| دوره           | وضعیت       |
| --------------| ----------- |
| ✅ Network+ | تکمیل شد
| ✅ Python Basic | تکمیل شد
| ✅ LPIC-1 | تکمیل شد
| 🚀 MCSA | در حال شروع
| 🔜 CEH | باقی‌مانده
| 🔜 SANS 504 | باقی‌مانده



به امید موفقیتت توی ادامه مسیر؛ بریم برای MCSA! 🚀
🖥 فصل اول دوره MCSA — قسمت اول
Windows Server vs Azure

━━━━━━━━━━━━━━━━━━

1) Windows Server چیست؟
Windows Server یک سیستم‌عامل سروری از شرکت مایکروسافت است که برای راه‌اندازی و مدیریت سرویس‌های شبکه استفاده می‌شود.
برخلاف Windows 10/11 که بیشتر برای کاربر نهایی طراحی شده، Windows Server برای محیط‌های سازمانی ساخته شده است.
در این دوره هدف ما یادگیری سرویس‌هایی است که روی Windows Server اجرا می‌شوند.
مثلاً:
Active Directory → مدیریت کاربران و کامپیوترهای سازمان
DNS → مدیریت نام‌ها و تبدیل Name به IP
DHCP → اختصاص خودکار IP
File Server → اشتراک‌گذاری فایل‌ها
Group Policy → اعمال قوانین و تنظیمات روی کاربران
WSUS → مدیریت آپدیت‌های ویندوز
Hyper-V → مجازی‌سازی
یعنی ما یک Windows Server نصب می‌کنیم و بعد سرویس‌های مورد نیاز سازمان را روی آن فعال می‌کنیم.

————————

2) Azure چیست؟
Microsoft Azure پلتفرم Cloud شرکت مایکروسافت است.

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

اما با Cloud این مدل تغییر کرد.
شرکت‌هایی مثل مایکروسافت دیتاسنترهای بسیار بزرگی در نقاط مختلف دنیا ایجاد کردند و آن‌ها را به هم متصل کردند.

حالا یک شرکت می‌تواند از هر جای دنیا:
یک سرور مجازی بسازد
فضای ذخیره‌سازی دریافت کند
سرویس شبکه استفاده کند
بدون خرید سخت‌افزار، منابع را اجاره کند

———————

3) مفهوم On-Premises (On-Prem)
On-Premises یعنی زیرساخت داخل محل خود سازمان باشد.
مثال:
یک شرکت ۲۰۰ کارمند دارد.
خود شرکت:
سرور خریداری می‌کند
Windows Server نصب می‌کند
Active Directory راه‌اندازی می‌کند
شبکه و امنیت را خودش مدیریت می‌کند
این مدل می‌شود:
Company Office
|
|
Physical Server
|
Windows Server
|
Network Services

مزایا:
کنترل کامل روی تجهیزات
اطلاعات داخل سازمان باقی می‌ماند
شخصی‌سازی بیشتر
معایب:
هزینه خرید تجهیزات
هزینه نگهداری
نیاز به نیروی متخصص
مسئولیت خرابی سخت‌افزار با خود سازمان است

————————-

4) Cloud چیست؟
در مقابل On-Prem، مفهوم Cloud قرار دارد.
در Cloud شما مالک سخت‌افزار نیستید، بلکه منابع را از یک شرکت ارائه‌دهنده اجاره می‌کنید.
مثلاً:
مایکروسافت Azure:
Microsoft Datacenter

Server
Storage
Network
Security

↓

Customer

شما فقط به اندازه نیازتان منابع دریافت می‌کنید.
مثلاً:
4 Core CPU
16GB RAM
200GB Storage
و هزینه همان مقدار را پرداخت می‌کنید.

———————————

5) SLA چیست؟
SLA = Service Level Agreement
یعنی توافق‌نامه سطح خدمات.
این قراردادی است که شرکت ارائه‌دهنده سرویس (مثل Azure) درباره کیفیت سرویس خود ارائه می‌دهد.

مثلاً:
"ما تضمین می‌کنیم سرویس شما 99.9% در دسترس باشد."
یعنی شرکت متعهد می‌شود سرورها تا درصد مشخصی فعال باشند.

مثال:
99.9% Uptime یعنی حدود:
حداکثر چند ساعت قطعی در سال.
هرچه SLA بالاتر باشد، معمولاً هزینه سرویس بیشتر می‌شود.

————————

6) مدل‌های Cloud Computing

سه مدل اصلی داریم:

1) IaaS
Infrastructure as a Service

یعنی زیرساخت به‌عنوان سرویس.

در این مدل شما سخت‌افزار مجازی دریافت می‌کنید.

مثال:

Azure VM

مایکروسافت به شما می‌دهد:

CPU
RAM
Storage
Network

ولی مدیریت سیستم‌عامل با شماست.

مثال واقعی:

یک Windows Server روی Azure می‌سازید و خودتان:

AD نصب می‌کنید
DNS نصب می‌کنید
تنظیمات امنیتی انجام می‌دهید


————-

2) PaaS
Platform as a Service

یعنی پلتفرم آماده.

اینجا شما دیگر درگیر مدیریت سیستم‌عامل نیستید.

مثال:

یک برنامه‌نویس می‌خواهد یک سایت اجرا کند.

به جای اینکه:

سرور بخرد
ویندوز نصب کند
وب‌سرور نصب کند

فقط برنامه خود را روی سرویس آماده قرار می‌دهد.


————————-


3) SaaS
Software as a Service

نرم‌افزار آماده به‌صورت سرویس.

کاربر فقط استفاده می‌کند.

مثال:

Gmail
Microsoft 365
سرویس‌های آنلاین مدیریت سازمان

شما فقط وارد می‌شوید و استفاده می‌کنید.


——————

🧠 مثال سازمانی

فرض کنیم یک شرکت فروشگاهی داریم:

حالت اول: On-Prem

شرکت خودش:

سرور می‌خرد
Windows Server نصب می‌کند
AD و Database راه‌اندازی می‌کند
حالت دوم: Azure

شرکت:

یک VM از Azure می‌گیرد
سرویس‌ها را روی آن اجرا می‌کند
بابت منابع مصرفی هزینه می‌دهد
———————————————-
نکات مهم مصاحبه‌ای ⭐️

✅ تفاوت اصلی On-Prem و Cloud چیست؟
→ در On-Prem تجهیزات متعلق به سازمان است، در Cloud منابع از Provider اجاره می‌شود.

✅ SLA چیست؟
→ تعهد ارائه‌دهنده سرویس برای میزان دسترسی و کیفیت سرویس.

✅ تفاوت IaaS و SaaS؟
→ در IaaS زیرساخت می‌گیریم و مدیریت بیشتری داریم؛ در SaaS نرم‌افزار آماده دریافت می‌کنیم.
🖥 فصل اول دوره MCSA — قسمت دوم
Microsoft Roadmap
━━━━━━━━━━━━━━━━━━

MCSA چیست؟
MCSA = Microsoft Certified Solutions Associate
یک سطح از مدارک قدیمی مایکروسافت بود که بیشتر روی مهارت‌های زیرساختی و محصولات Microsoft مثل Windows Server تمرکز داشت.

—————————

MCSE چیست؟
MCSE = Microsoft Certified Solutions Expert
سطح بالاتر از MCSA بود و برای نشان دادن مهارت تخصصی‌تر در محصولات و زیرساخت‌های مایکروسافت استفاده می‌شد.
مسیر قدیمی:
MCSA
↓
MCSE

در مسیر جدید، مایکروسافت ساختار مدارک قدیمی MCSA/MCSE را کنار گذاشت و مسیر Certification را به سمت نقش‌های شغلی و Azure برد.


———————————-

🚀 ساختار جدید Microsoft Certifications

مایکروسافت مسیر مدارک را به چهار سطح اصلی تقسیم کرده:

1️⃣ Fundamentals — پایه
برای شروع و آشنایی با مفاهیم پایه.
مثال:
AZ-900 → Azure Fundamentals
AI-900 → AI Fundamentals
DP-900 → Data Fundamentals

2️⃣ Associate — پیکربندی و کار عملی
سطح متوسط برای یادگیری و پیاده‌سازی سرویس‌ها.
یعنی از حالت «فقط شناخت مفاهیم» وارد مرحله کار و Configuration می‌شویم.


3️⃣ Expert — متخصص حرفه‌ای
سطح پیشرفته برای افراد متخصص.
مثال‌هایی که در کلاس گفته شد:
AZ-305
AZ-400


4️⃣ Specialty — تخصص‌های خاص

دوره‌ها و مدارک تخصصی برای یک حوزه یا سرویس خاص.
🖥 فصل اول دوره MCSA — قسمت سوم
Windows Server Editions & Installation
━━━━━━━━━━━━━━━━━━

1️⃣ ادیشن‌های Windows Server
در این مبحث با ۳ ادیشن اصلی مواجه می‌شویم:

🔹 Standard
برای سازمان‌ها و سرورهای معمولی.

🔹 Datacenter
برای محیط‌های بزرگ‌تر و دیتاسنتری، مخصوصاً زمانی که قابلیت‌های پیشرفته مجازی‌سازی و دیتاسنتر مورد نیاز باشد.

🔹 Datacenter: Azure Edition
نسخه‌ای از Windows Server که برای محیط‌های Azure و Hybrid Cloud طراحی شده و قابلیت‌های مخصوص Azure را ارائه می‌کند.

————————

2️⃣ حداقل سخت‌افزار Windows Server
برای نصب Windows Server باید منابع سخت‌افزاری مناسبی در اختیار سیستم قرار دهیم.
مهم‌ترین منابع:
CPU
RAM
Storage
Network
اما یک نکته مهم:
مقدار RAM و CPU موردنیاز واقعی، به نسخه Windows Server، سرویس‌هایی که قرار است اجرا شوند و تعداد کاربران بستگی دارد.

مثلاً سروری که فقط برای یک Lab و یادگیری استفاده می‌کنیم با سروری که قرار است Domain Controller + DNS + DHCP + File Server باشد، منابع یکسانی نیاز ندارد.

—————————-

3️⃣ نصب Windows Server روی VMware Workstation
برای دوره MCSA بهتر است Windows Server را به‌صورت Virtual Machine نصب کنیم.
ساختار Lab:
VMware Workstation
│
└── Windows Server VM
│
├── Active Directory
├── DNS
├── DHCP
└── سایر سرویس‌ها

مراحل کلی:
1. VMware Workstation را باز می‌کنیم.
2. یک Virtual Machine جدید می‌سازیم.
3. فایل ISO مربوط به Windows Server را انتخاب می‌کنیم.
4. منابع VM را مشخص می‌کنیم:
CPU
RAM
Hard Disk
Network Adapter


5.
VM را Boot می‌کنیم.

6. در Windows Setup نسخه موردنظر را انتخاب می‌کنیم.
مثلاً:
Windows Server Standard
Windows Server Datacenter

7. نوع نصب را انتخاب می‌کنیم.
8. دیسک مقصد را انتخاب و نصب را شروع می‌کنیم.

——————————-
❤2
فصل اول دوره MCSA — قسمت جهارم
Windows Server Core
━━━━━━━━━━━━━━━━━━

1️⃣ Windows Server Core چیست؟
Windows Server Core نسخه‌ای از Windows Server است که محیط گرافیکی کامل (GUI) را ندارد.
یعنی بعد از نصب، با محیطی شبیه این مواجه می‌شویم:
C:\>

و بیشتر مدیریت سرور از طریق Command Line انجام می‌شود.
در نتیجه:
Windows Server GUI
→ محیط گرافیکی کامل

Windows Server Core
→ بدون GUI کامل، مدیریت با Command Line


——————

2️⃣ چرا از Server Core استفاده می‌کنیم؟

چون بخش زیادی از اجزای گرافیکی Windows حذف شده است، معمولاً:

منابع کمتری مصرف می‌کند.
RAM کمتری نیاز دارد.
فضای دیسک کمتری مصرف می‌کند.
سطح حمله کمتری دارد.
برای اجرای سرویس‌های سروری مناسب است.

مثلاً اگر یک سرور فقط قرار است یک سرویس مشخص را اجرا کند، همیشه لازم نیست محیط گرافیکی کامل Windows را داشته باشد.

————————

3️⃣ نصب Server Core روی VMware Workstation
در Lab خودمان می‌توانیم Server Core را داخل VMware نصب کنیم.
ساختار:
VMware Workstation
↓
Create New VM
↓
Windows Server ISO
↓
انتخاب Server Core
↓
Installation
↓
Command Line

در هنگام نصب Windows Server، نسخه Server Core را انتخاب می‌کنیم.
بعد از نصب، برخلاف نسخه Desktop Experience، محیط گرافیکی کامل Windows را نخواهیم داشت.
فصل اول دوره MCSA — قسمت پنجم
Windows Server Upgrade
━━━━━━━━━━━━━━━━━━

1️⃣ Upgrade چیست؟
Upgrade یعنی سیستم‌عامل فعلی را به نسخه جدیدتر منتقل کنیم، بدون اینکه از ابتدا سیستم‌عامل را کاملاً پاک و نصب کنیم.
مثلاً:
Windows Server 2012
↓
Windows Server 2016

یا:
2016 → 2019
2019 → 2022
2022 → 2025

در Upgrade معمولاً تنظیمات، برنامه‌ها و اطلاعات موجود تا حد امکان حفظ می‌شوند.


———————
2️⃣ Clean Installation چیست؟
Clean Installation یعنی سیستم‌عامل را از ابتدا نصب کنیم.
در این روش معمولاً سیستم‌عامل قبلی را کنار گذاشته و یک Windows Server جدید نصب می‌کنیم.
مثلاً:
Server 2012
↓
پاک/جایگزین
↓
Server 2025

——————-

3️⃣ مسیر Upgrade
در مثالی که در کلاس مطرح شد، نسخه‌های Windows Server به‌صورت زنجیره‌ای مطرح می‌شوند:
2012
↓
2016
↓
2019
↓
2022
↓
2025

⚠️ نکته: امکان Upgrade واقعی به Edition، نسخه و سناریوی نصب بستگی دارد؛ بنابراین این زنجیره را نباید به‌معنای مجاز بودن هر ترکیب Upgrade در همه شرایط در نظر گرفت.


————————

4️⃣ مشاهده نسخه Windows Server
یکی از ساده‌ترین دستورات:
winver

با اجرای آن، اطلاعات نسخه Windows نمایش داده می‌شود.
مثلاً می‌توانیم متوجه شویم:
Version
Build
Windows Edition
چیست.
همچنین اطلاعات سیستم‌عامل را می‌توان از بخش‌های مدیریتی Windows نیز مشاهده کرد.


—————————

5️⃣ روش کلی Upgrade
فرض کنیم الان روی سرور:
Windows Server 2019

داریم و می‌خواهیم آن را Upgrade کنیم.
مراحل کلی:
Windows Server جدید
↓
ISO / DVD
↓
Mount در سرور
↓
باز کردن DVD Drive
↓
Setup.exe
↓
Upgrade
↓
انتخاب گزینه حفظ اطلاعات
↓
Installation

در محیط VMware هم می‌توانیم ISO نسخه جدید را به CD/DVD Drive ماشین مجازی متصل کنیم.
مثلاً:
VMware
↓
VM Settings
↓
CD/DVD
↓
Use ISO Image File
↓
Windows Server 2025 ISO

سپس وارد DVD مربوط به Windows Server می‌شویم و فرآیند Setup را اجرا می‌کنیم.
فصل اول دوره MCSA — قسمت ششم
Windows Server Environment
━━━━━━━━━━━━━━━━━━

1️⃣ Server Manager چیست؟
Server Manager ابزار مدیریتی اصلی Windows Server است که برای مدیریت Role، Feature و وضعیت سرور استفاده می‌شود.
بعد از ورود به Windows Server معمولاً Server Manager را می‌بینیم.

از اینجا می‌توانیم:

Role اضافه کنیم.
Feature اضافه کنیم.
وضعیت Server را بررسی کنیم.
سرویس‌ها و وضعیت‌های مختلف را مدیریت کنیم.
سرورهای دیگر را نیز در بعضی سناریوها مدیریت کنیم.

————————
2️⃣ Add Roles and Features چیست؟
در Server Manager گزینه:
Add Roles and Features
برای اضافه کردن قابلیت‌ها و سرویس‌های مختلف Windows Server استفاده می‌شود.
Role چیست؟
Role یعنی یک وظیفه یا سرویس اصلی که سرور انجام می‌دهد.

مثلاً:
DNS Server
DHCP Server
File Server
Active Directory Domain Services (AD DS)

مثلاً اگر بخواهیم سرورمان DHCP Server شود:
Server Manager
↓
Add Roles and Features
↓
DHCP Server
↓
Install

————————

3️⃣ Add Feature چیست؟
Feature قابلیت‌هایی هستند که می‌توانیم به Windows Server اضافه کنیم، اما الزاماً یک Role اصلی محسوب نمی‌شوند.
پس:
Role
→ وظیفه اصلی سرور

Feature
→ قابلیت تکمیلی


————————

4️⃣ Add Other Server چیست؟
در Server Manager می‌توانیم سرورهای دیگر را نیز به محیط مدیریتی اضافه کنیم تا وضعیت و بعضی تنظیمات آن‌ها را از یک محل مشاهده و مدیریت کنیم.
مثلاً:
Server Manager
│
├── Server01
├── Server02
└── Server03

این قابلیت در محیط‌های سازمانی که چندین Windows Server داریم بسیار کاربردی است.

—————-

5️⃣ اتصال به Cloud
Windows Server می‌تواند در محیط‌های Cloud و Hybrid نیز مورد استفاده قرار گیرد.
در محیط‌های مایکروسافت، ارتباط Windows Server با سرویس‌های Cloud مانند Azure می‌تواند امکان مدیریت و استفاده از قابلیت‌های Cloud را فراهم کند.
یعنی سرور الزاماً فقط روی سخت‌افزار فیزیکی سازمان نیست و می‌تواند در محیط‌های Cloud نیز اجرا یا مدیریت شود.

———————-
6️⃣ بخش Local Server
در Server Manager بخشی به نام:
Local Server
داریم.
در این قسمت اطلاعات و وضعیت سرور فعلی را می‌بینیم.

مثلاً مواردی مانند:
Computer Name
Domain / Workgroup
Windows Update
Remote Management
Firewall
Network
Remote Desktop

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

——————————

7️⃣ بخش Services
در محیط مدیریت Windows Server، وضعیت سرویس‌ها را می‌توان بررسی کرد.
مثلاً:
DHCP
DNS
Windows Update
File services

اگر یک سرویس دچار مشکل شده باشد یا اجرا نشده باشد، می‌توانیم وضعیت آن را بررسی کنیم.
مثلاً:
Service
↓
Running ✅
Stopped ❌

اگر سرویس موردنظر اجرا نشده باشد، باید علت خطا را بررسی و در صورت نیاز سرویس را Start کنیم.
🧪 مثال واقعی
فرض کن روی Server01، DHCP Server نصب کرده‌ایم.
اما DHCP کار نمی‌کند.
اول وضعیت سرویس را بررسی می‌کنیم:
Server Manager
↓
Local Server
↓
Services
↓
DHCP Server

اگر سرویس Stopped باشد، مشکل می‌تواند از همین قسمت مشخص شود.
My folder vip pinned «دوتا دوره تمام شده به ترتیب 👇👇👇👇 1️⃣: دوره نتورک پلاس از اول ——————————————————— ——————————————————— 2️⃣: دوره الپیک1 از اول ——————————————————— ——————————————————— 3️⃣: دوره پایتون مقدماتی ——————————————————— ——————————————————— 4️⃣: دوره MCSA»
خب خب فصل یک تموم شد
میریم سراغ فصل دوم
دوره MCSA
فصل دوم دوره MCSA — قسمت هفتم
Remote Mgmt - RSAT
━━━━━━━━━━━━━━━━━━

1️⃣ Remote Management چیست؟
یعنی بتوانیم یک Windows Server را از یک سیستم یا سرور دیگر مدیریت کنیم، بدون اینکه مستقیماً پشت همان سرور باشیم.
مثلاً:
Server 01
192.168.1.2
↕️
Remote Management
↕️
Server 02
192.168.1.3


————-

2️⃣ بررسی IP سیستم‌ها
برای مشاهده تنظیمات کارت شبکه می‌توانیم در Run بزنیم:
ncpa.cpl

در Lab مثلاً:
Server 01 → 192.168.1.2
Server 02 → 192.168.1.3

هر دو سیستم باید بتوانند با یکدیگر ارتباط شبکه‌ای داشته باشند.
—————-
3️⃣ Firewall
در سناریوی Lab کلاس، برای تست ارتباط می‌توانیم Firewall را موقتاً غیرفعال کنیم.
در محیط واقعی بهتر است Firewall را خاموش نکنیم و به‌جای آن فقط Ruleهای موردنیاز Remote Management را مجاز کنیم.



——————-

4️⃣ اضافه کردن Server به Server Manager
برای اضافه کردن سرور دیگر، چند روش داریم:
🔹 Active Directory
اگر سیستم‌ها عضو Domain باشند، می‌توانیم از Active Directory برای پیدا کردن و مدیریت سرورها استفاده کنیم.

———————-

🔹 DNS
می‌توانیم نام Computer را جست‌وجو کنیم.
مثلاً:
Server01

اگر DNS درست تنظیم شده باشد، نام سیستم به IP مربوطه Resolve می‌شود.

——————-
🔹 Import
می‌توانیم یک لیست از سرورها تهیه کنیم و اطلاعات آن‌ها را وارد کنیم.
مثلاً:
Server01    192.168.1.2
Server02 192.168.1.3
Server03 192.168.1.4

سپس این لیست برای اضافه کردن سرورها استفاده می‌شود.

———————

5️⃣ اگر Remote Management کار نکرد چه کنیم؟
یکی از مواردی که باید بررسی کنیم WinRM است.
در Group Policy مسیر زیر را بررسی می‌کنیم:
Computer Configuration
↓
Administrative Templates
↓
Windows Components
↓
Windows Remote Management
↓
WinRM Client
↓
Trusted Hosts

در این قسمت می‌توانیم Trusted Hosts را فعال کنیم و سیستم مورد اعتماد را مشخص کنیم.

———————
6️⃣ GPUpdate
بعد از تغییر Group Policy لازم نیست همیشه سیستم را Restart کنیم.
می‌توانیم در CMD بزنیم:
gpupdate /force

این دستور باعث می‌شود Group Policyها دوباره اعمال شوند.

————————

7️⃣ Cmdkey
برای ذخیره Credential مربوط به یک سیستم می‌توان از cmdkey استفاده کرد.
مثلاً:
cmdkey /add:ComputerName /user:Username /pass:Password

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

———————

8️⃣ نصب RSAT
RSAT = Remote Server Administration Tools
با RSAT می‌توانیم بسیاری از ابزارهای مدیریتی Windows Server را روی یک Windows Client نصب کنیم و سرورها را از راه دور مدیریت کنیم.
در نسخه‌های جدید Windows می‌توان RSAT را از طریق:
Settings
↓
Optional Features
↓
Add an optional feature
↓
RSAT

اضافه کرد.
همچنین بسته‌های RSAT بسته به نسخه Windows می‌توانند به‌صورت جداگانه ارائه شوند.

——————-
فصل دوم دوره MCSA — قسمت هشتم
WAC
━━━━━━━━━━━━━━━━━━

1️⃣ WAC چیست؟
WAC = Windows Admin Center
یک ابزار مدیریتی مایکروسافت برای مدیریت Windows Server از راه دور است.
مخصوصاً در محیط‌هایی که تعداد سرورها زیاد است، مثل Datacenter، بسیار کاربردی است.
به‌جای اینکه برای مدیریت هر سرور مستقیماً وارد خود سرور شویم، می‌توانیم از طریق WAC به آن متصل شویم.

——————-

2️⃣ نصب WAC
ابتدا برنامه Windows Admin Center را نصب می‌کنیم.
در مراحل نصب چند تنظیم مهم داریم:
🔹 Port
در ابتدا پورتی که WAC روی آن کار می‌کند را مشخص می‌کنیم.
🔹 Trusted Sites
گزینه مربوط به Trusted Sites را فعال می‌کنیم.
🔹 Desktop Shortcut
در صورت نیاز گزینه:
Create Desktop Shortcut
را فعال می‌کنیم تا Shortcut روی Desktop ساخته شود.
🔹 HTTPS
WAC را روی حالت:
HTTPS
قرار می‌دهیم.

——————-

3️⃣ اضافه کردن Server
بعد از نصب و اجرای WAC:
WAC
↓
Add
↓
Server

حالا نام یا IP سروری که می‌خواهیم مدیریت کنیم را وارد می‌کنیم.
مثلاً:
192.168.1.2

یا:
Server01


——————
4️⃣ اگر بخواهیم با Name سرور را پیدا کنیم
اگر به‌جای IP بخواهیم نام سرور را وارد کنیم، سیستم مدیریتی باید بتواند Name Resolution انجام دهد.
یعنی مثلاً:
Server01
↓
DNS
↓
192.168.1.2

دو راه اصلی:
راه اول: استفاده از DNS Server
اگر DNS درست تنظیم شده باشد، نام Server به IP تبدیل می‌شود.
راه دوم: استفاده از Hosts File
مسیر:
C:\Windows\System32\drivers\etc\hosts

فایل hosts را باز می‌کنیم و می‌توانیم IP و نام سرور را در آن مشخص کنیم.
مثلاً:
192.168.1.2    Server01

در این حالت سیستم می‌تواند نام Server01 را به IP مربوطه Resolve کند.

———————

5️⃣ وارد کردن Username و Password
بعد از اضافه کردن Server، WAC برای اتصال به سرور به Credential نیاز دارد.
یعنی:
Username
Password

را وارد می‌کنیم.
بعد از اتصال موفق، WAC اطلاعات و امکانات مدیریتی سرور را در اختیارمان قرار می‌دهد.

———————-

🖥 6️⃣ مدیریت سرور با WAC
بعد از اتصال، می‌توانیم وضعیت کلی Server را مشاهده و مدیریت کنیم.
یعنی تقریباً یک نمای مدیریتی از سرور داریم و می‌توانیم موارد مختلف آن را بررسی کنیم.
مثلاً:
وضعیت سیستم
منابع
شبکه
Storage
سرویس‌ها
Eventها
تنظیمات مختلف Server
بنابراین WAC یک پنل مدیریتی مرکزی و تحت وب برای Windows Server محسوب می‌شود.
فصل دوم دوره MCSA — قسمت نهم
NIC Teaming
━━━━━━━━━━━━━━━━━━

1️⃣ NIC Teaming چیست؟
NIC Teaming یعنی چند کارت شبکه را با هم Team کنیم تا به‌صورت یک تیم شبکه‌ای کار کنند.
مهم‌ترین کاربرد:
اگر یکی از کارت‌های شبکه خراب شود، کارت دیگر می‌تواند ارتباط را حفظ کند.
NIC 1 ──┐
├── Team 1 ── Network
NIC 2 ──┘

بنابراین باعث افزایش:
Availability
Fault Tolerance
و در بعضی حالت‌ها Load Balancing
می‌شود.

——————-

2️⃣ دو تنظیم مهم

هنگام ساخت Team دو مورد مهم داریم:

1. Teaming Mode

مشخص می‌کند کارت‌های شبکه چگونه با Switch ارتباط داشته باشند.

2. Load Balancing Mode

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

—————-

3️⃣ Teaming Mode
سه حالت مهم داریم:
🔹 Switch Independent
هر کارت شبکه به یک Switch مستقل متصل می‌شود.
NIC 1 ── Switch 1
NIC 2 ── Switch 2

مزیت مهم:
اگر یکی از Switchها خراب شود، ارتباط از طریق Switch دیگر ادامه پیدا می‌کند.

🔹 Static Teaming
در این حالت تنظیمات Team باید روی Switch نیز انجام شود.
یعنی Switch باید بداند این چند پورت متعلق به یک Team هستند.

🔹 LACP
LACP = Link Aggregation Control Protocol
در این حالت نیز باید قابلیت/پروتکل LACP روی Switch پشتیبانی و فعال باشد.

————————

4️⃣ Load Balancing Mode
در این قسمت روش تقسیم ترافیک مشخص می‌شود.
حالت‌هایی که در این مبحث داریم:

🔹 Address Hash
بر اساس Hash مربوط به آدرس‌ها، ترافیک بین NICها توزیع می‌شود.

🔹 Dynamic
به‌صورت Dynamic ترافیک را بین کارت‌های شبکه توزیع می‌کند.

🔹 Hyper-V Port
در محیط Hyper-V می‌تواند ترافیک را بر اساس Virtual Machine Port بین کارت‌های شبکه تقسیم کند.

————————

5️⃣ Standby Adapter
می‌توانیم یکی از کارت‌های شبکه را به‌صورت Standby قرار دهیم.
یعنی کارت فعلاً وارد مدار اصلی نباشد و اگر NIC اصلی دچار مشکل شد، کارت Standby وارد مدار شود.
مثلاً:
NIC 1 → Active ✅
NIC 2 → Active ✅
NIC 3 → Standby ⏸️

اگر یکی از NICهای فعال خراب شود، NIC Standby می‌تواند وارد مدار شود.


——————

🧪 6️⃣ ساخت Lab در VMware
برای تمرین NIC Teaming می‌توانیم در VMware چند کارت شبکه به VM اضافه کنیم.
مرحله اول
در تنظیمات VM:
VM Settings
↓
Add
↓
Network Adapter

مثلاً 4 کارت شبکه اضافه می‌کنیم.

——————
مرحله دوم — ساخت LAN Segment
برای هر کارت یک LAN Segment در نظر می‌گیریم:
LAN 1
LAN 2
LAN 3
LAN 4

و کارت‌ها را به ترتیب به Segmentهای مربوطه متصل می‌کنیم.
NIC 1 → LAN 1
NIC 2 → LAN 2
NIC 3 → LAN 3
NIC 4 → LAN 4

بعد از بالا آمدن Windows Server، در Network Connections باید چهار کارت شبکه را مشاهده کنیم.

———————
7️⃣ ساخت Team در Server Manager
در:
Server Manager
↓
Local Server
↓
NIC Teaming

ابتدا NIC Teaming را از حالت Disabled خارج می‌کنیم.
بعد کارت‌های شبکه را مشاهده می‌کنیم.
سپس:
Tasks
↓
New Team

یک نام برای Team انتخاب می‌کنیم:
Team 1

سپس کارت‌های شبکه موردنظر را انتخاب می‌کنیم.
بعد:
Teaming Mode
+
Load Balancing Mode

را مشخص می‌کنیم.
در صورت نیاز می‌توانیم یک NIC را نیز به‌عنوان:
Standby Adapter
انتخاب کنیم.