مدرس: میرعلی شهیدی | متخصص ارشد امنیت سایبری و شبکه
تنظیمات عملی CLI به زبان انگلیسی | توضیحات کامل به زبان فارسی
CCNA (Cisco Certified Network Associate) مدرک پایهای سیسکو در حوزه شبکه است. این دوره شامل مباحث زیر است:
برای شروع کار با روتر یا سوییچ سیسکو، باید از طریق کنسول یا شبکه به آن متصل شوید.
Console Connection (via PuTTY or Tera Term)# اتصال از طریق کابل کنسول (RJ45 to Serial) # تنظیمات PuTTY: Serial, COMx, 9600 baud, 8-N-1
در این مرحله برای پیکربندی اولیه دستگاهی که هنوز تنظیمات شبکه ندارد، از کابل کنسول استفاده میکنیم. تنظیمات Baud Rate روی ۹۶۰۰ پارامتر استاندارد ارتباط سریال سیسکو است.
Initial CLI OutputRouter> Router>enable Password: Router#
دستور enable برای تغییر سطح دسترسی از حالت کاربر معمولی (User EXEC) به حالت ممتاز (Privileged EXEC) استفاده میشود که در آن تمام دستورات نمایشی و مدیریتی در دسترس هستند.
Router#configure terminal Router(config)#hostname R1 R1(config)#
با ورود به محیط Global Configuration، نام دستگاه را تغییر میدهیم. این کار در شبکههای بزرگ برای شناسایی سریع دستگاه در هنگام مدیریت از راه دور حیاتی است.
Set Enable Password (Encrypted)R1(config)#enable secret cisco123
استفاده از کلمه secret به جای password باعث میشود که رمز عبور با استفاده از الگوریتمهای هشینگ (مانند MD5 یا SHA) رمزنگاری شود و در فایل تنظیمات به صورت متنی ساده دیده نشود.
Set Console & VTY PasswordR1(config)#line console 0 R1(config-line)#password cisco R1(config-line)#login R1(config-line)#exit R1(config)#line vty 0 4 R1(config-line)#password cisco R1(config-line)#login R1(config-line)#exit
این دستورات امنیت فیزیکی (Console) و امنیت دسترسی از راه دور (VTY) را تامین میکنند. دستور login به روتر دستور میدهد که در هنگام اتصال حتماً رمز عبور را مطالبه کند.
Login BannerR1(config)#banner motd # ************************************* * WARNING: Unauthorized Access * * Prohibited! - R1 Router * ************************************* #
پیام MOTD یا Message of the Day اولین متنی است که کاربر هنگام اتصال مشاهده میکند. از نظر حقوقی، درج هشدارهای امنیتی در این بخش برای پیگیری نفوذهای غیرمجاز اهمیت دارد.
R1(config)#interface GigabitEthernet0/0 R1(config-if)#ip address 192.168.1.1 255.255.255.0 R1(config-if)#description === LAN Segment === R1(config-if)#no shutdown R1(config-if)#exit
در این بخش، یک آدرس IP به پورت فیزیکی اختصاص میدهیم. دستور no shutdown پورت را از حالت غیرفعال اداری (Administratively Down) خارج کرده و آن را روشن میکند.
Verify Interface StatusR1#show ip interface brief
این دستور یک جدول خلاصه شامل نام اینترفیس، آدرس IP و وضعیت لایه ۱ (Status) و لایه ۲ (Protocol) را نمایش میدهد که برای عیبیابی اولیه سریعترین راه است.
R1(config)#ip route 10.0.0.0 255.255.255.0 192.168.1.2 R1(config)#ip route 172.16.0.0 255.255.0.0 GigabitEthernet0/1
مسیریابی استاتیک به صورت دستی تعریف میشود. در اینجا شبکه مقصد، ماسک مربوطه و آدرس روتر بعدی (Next Hop) یا پورت خروجی را مشخص کردهایم.
Default RouteR1(config)#ip route 0.0.0.0 0.0.0.0 203.0.113.1
روت پیشفرض یا "مسیر آخرین چاره" زمانی استفاده میشود که مقصد بسته در جدول مسیریابی نباشد. این روت معمولاً به سمت اینترنت تنظیم میشود.
Show Routing TableR1#show ip route
مشاهده جدول مسیریابی که قلب تصمیمگیری روتر است. حروف اختصاری مثل S برای مسیرهای استاتیک و C برای شبکههای متصل مستقیم در اینجا قابل مشاهده هستند.
R1(config)#router ospf 1 R1(config-router)#router-id 1.1.1.1 R1(config-router)#network 192.168.1.0 0.0.0.255 area 0 R1(config-router)#network 10.0.0.0 0.0.0.255 area 0 R1(config-router)#exit
پروتکل OSPF یک پروتکل Link-State است. در اینجا با استفاده از Wildcard Mask، پورتهایی که عضو شبکه مشخص شده هستند را در ناحیه صفر (Backbone Area) فعال میکنیم.
Verify OSPF NeighborsR1#show ip ospf neighbor
برای اطمینان از عملکرد صحیح OSPF، باید لیست همسایهها را چک کرد. وضعیت FULL نشاندهنده تبادل موفق دیتابیس مسیرها بین دو روتر است.
S1#configure terminal S1(config)#vlan 10 S1(config-vlan)#name SALES S1(config-vlan)#exit S1(config)#vlan 20 S1(config-vlan)#name IT S1(config-vlan)#exit
ایجاد VLAN باعث جداسازی دامنههای انتشار (Broadcast Domains) میشود. این کار امنیت و کارایی شبکه را با جدا کردن ترافیک بخشهای مختلف افزایش میدهد.
Assign Ports to VLANS1(config)#interface FastEthernet0/1 S1(config-if)#switchport mode access S1(config-if)#switchport access vlan 10 S1(config-if)#exit
در حالت Access، هر پورت سوییچ فقط میتواند عضو یک VLAN باشد. در اینجا پورت فیزیکی به بخش فروش (VLAN 10) اختصاص داده شده است.
Configure Trunk PortS1(config)#interface GigabitEthernet0/1 S1(config-if)#switchport mode trunk S1(config-if)#switchport trunk allowed vlan 10,20 S1(config-if)#exit
پورت Trunk برای اتصال سوییچ به روتر یا سوییچ دیگر استفاده میشود تا ترافیک چندین VLAN را همزمان و با استفاده از تگهای 802.1Q جابجا کند.
R1(config)#interface GigabitEthernet0/0.10 R1(config-subif)#encapsulation dot1Q 10 R1(config-subif)#ip address 192.168.10.1 255.255.255.0 R1(config-subif)#exit R1(config)#interface GigabitEthernet0/0.20 R1(config-subif)#encapsulation dot1Q 20 R1(config-subif)#ip address 192.168.20.1 255.255.255.0 R1(config-subif)#exit
چون VLANها از هم جدا هستند، برای ارتباط بین آنها نیاز به روتر داریم. با ساخت اینترفیسهای مجازی روی یک پورت فیزیکی، روتر میتواند نقش گیتوی را برای چندین شبکه ایفا کند.
R1(config)#ip dhcp pool LAN_POOL R1(dhcp-config)#network 192.168.10.0 255.255.255.0 R1(dhcp-config)#default-router 192.168.10.1 R1(dhcp-config)#dns-server 8.8.8.8 R1(dhcp-config)#domain-name example.com R1(dhcp-config)#exit R1(config)#ip dhcp excluded-address 192.168.10.1 192.168.10.10
روتر میتواند به صورت خودکار به کلاینتها آیپی بدهد. دستور excluded برای جلوگیری از تخصیص آیپیهای ثابت (مثل سرورها یا گیتوی) به کلاینتهای معمولی استفاده میشود.
Verify DHCP BindingsR1#show ip dhcp binding
این دستور لیستی از تمام آدرسهای IP که توسط روتر به دستگاههای مختلف اجاره (Lease) داده شده است را به همراه آدرس فیزیکی آنها نشان میدهد.
R1(config)#access-list 1 permit 192.168.10.0 0.0.0.255 R1(config)#access-list 1 permit 192.168.20.0 0.0.0.255
برای NAT کردن، ابتدا باید مشخص کنیم چه شبکههایی اجازه دارند به اینترنت دسترسی پیدا کنند. در اینجا شبکههای VLAN 10 و 20 انتخاب شدهاند.
Configure PAT (Overload)R1(config)#interface GigabitEthernet0/1 R1(config-if)#ip nat outside R1(config-if)#exit R1(config)#interface GigabitEthernet0/0 R1(config-if)#ip nat inside R1(config-if)#exit R1(config)#ip nat inside source list 1 interface GigabitEthernet0/1 overload
تکنولوژی PAT یا Overload به صدها کاربر داخلی اجازه میدهد تنها با استفاده از یک آدرس IP عمومی به اینترنت وصل شوند. تفاوت کاربران بر اساس شماره پورتهای تصادفی مدیریت میشود.
R1(config)#access-list 10 deny host 192.168.10.50 R1(config)#access-list 10 permit any R1(config)#interface GigabitEthernet0/0 R1(config-if)#ip access-group 10 in R1(config-if)#exit
ACL استاندارد فقط بر اساس آدرس مبدأ فیلتر میکند. در اینجا دسترسی یک هاست خاص مسدود شده و بقیه ترافیکها مجاز اعلام شدهاند.
Extended ACL (Block HTTP from VLAN 10)R1(config)#access-list 100 deny tcp 192.168.10.0 0.0.0.255 any eq 80 R1(config)#access-list 100 permit ip any any R1(config)#interface GigabitEthernet0/0.10 R1(config-subif)#ip access-group 100 out
ACL گسترده (Extended) میتواند بر اساس پروتکل (TCP/UDP) و شماره پورت (مثل پورت ۸۰ برای وب) نیز فیلتر کند. این ابزار قدرتمندی برای تامین امنیت در لایههای ۳ و ۴ است.
R1(config)#hostname R1 R1(config)#ip domain-name example.com R1(config)#crypto key generate rsa # Choose size: 2048 R1(config)#ip ssh version 2 R1(config)#line vty 0 4 R1(config-line)#transport input ssh R1(config-line)#login local R1(config-line)#exit R1(config)#username admin privilege 15 secret cisco123
SSH ترافیک مدیریتی را رمزنگاری میکند. با تولید کلید RSA و غیرفعال کردن Telnet (از طریق transport input ssh)، امنیت دسترسی راه دور تضمین میشود.
R1#write memory R1#copy running-config startup-config
تنظیماتی که انجام میدهیم در RAM ذخیره میشود. برای اینکه با ریبوت شدن دستگاه تنظیمات از بین نرود، باید آنها را در NVRAM ذخیره کرد.
Backup to TFTP ServerR1#copy running-config tftp Address or name of remote host []? 192.168.1.100 Destination filename [R1-confg]? R1-backup.cfg
یک مدیر شبکه همیشه باید نسخهای از تنظیمات را خارج از دستگاه داشته باشد. پروتکل TFTP یک روش ساده برای انتقال فایل تنظیمات به سرور بکاپ است.
R1#show running-config R1#show ip interface brief R1#show cdp neighbors R1#ping 8.8.8.8 R1#traceroute 8.8.8.8 R1#debug ip packet
این دستورات ابزارهای روزمره یک مهندس شبکه هستند. Ping برای تست اتصال، Traceroute برای پیدا کردن محل قطعی در مسیر و Debug برای مشاهده رفتار زنده روتر استفاده میشوند.
R1(config)#ipv6 unicast-routing R1(config)#interface GigabitEthernet0/0 R1(config-if)#ipv6 address 2001:db8:1::1/64 R1(config-if)#no shutdown
برای استفاده از نسل جدید آدرسها، باید ابتدا قابلیت مسیریابی IPv6 را فعال کرد. آدرسدهی در IPv6 بسیار سادهتر است و نیاز به NAT را از بین میبرد.
STP از حلقه (Loop) در لایه ۲ جلوگیری میکند. در شبکههای دارای لینکهای پشتیبان، این پروتکل حیاتی است.
Set Root Bridge & ModeS1(config)#spanning-tree mode rapid-pvst S1(config)#spanning-tree vlan 10 root primary
با انتخاب حالت Rapid-PVST، سرعت همگرایی شبکه بسیار بالا میرود. همچنین سوییچ اصلی شبکه (Root Bridge) را به صورت دستی انتخاب میکنیم تا مدیریت ترافیک بهینه شود.
PortFast & BPDU GuardS1(config-if)#spanning-tree portfast S1(config-if)#spanning-tree bpduguard enable
PortFast باعث میشود پورتهایی که به کامپیوتر وصل هستند سریعاً فعال شوند. BPDU Guard امنیت را با خاموش کردن پورت در صورت دریافت سیگنال سوییچ غیرمجاز تامین میکند.
S1(config)#interface range Fa0/1 - 2 S1(config-if-range)#channel-group 1 mode active S1(config-if-range)#exit S1(config)#interface port-channel 1 S1(config-if)#switchport mode trunk
با ترکیب چندین کابل فیزیکی، یک لینک مجازی با پهنای باند مجموع ایجاد میکنیم. LACP استاندارد باز (IEEE) برای این کار است که باعث پایداری بیشتر لینکهای بین سوییچی میشود.
R1(config)#router igrp 100 R1(config-router)#network 192.168.1.0
یک پروتکل قدیمی و اختصاصی سیسکو که امروزه جای خود را به EIGRP داده است. این پروتکل از معیار ترکیبی (پهنای باند، تاخیر، بار و اعتماد) استفاده میکرد.
R1(config)#router egp 0
اولین پروتکل مسیریابی خارجی که برای اتصال شبکههای بزرگ استفاده میشد. امروزه BGP تنها پروتکل استاندارد برای این منظور است.
R1(config)#router bgp 100 R1(config-router)#neighbor 203.0.113.2 remote-as 200 R1(config-router)#network 192.168.1.0 mask 255.255.255.0
BGP زبان اینترنت است. در اینجا روتر شماره ۱ در سیستم خودمختار ۱۰۰ با روتر همسایه در سیستم ۲۰۰ ارتباط برقرار کرده و شبکه داخلی خود را به جهان معرفی میکند.
BGP SecurityR1(config-router)#neighbor 203.0.113.2 password cisco_bgp
برای جلوگیری از دریافت مسیرهای جعلی از افراد ناشناس، در BGP حتماً باید از احراز هویت با رمز عبور بین همسایهها استفاده کرد.
R1(config)#mpls ip R1(config)#interface Gi0/1 R1(config-if)#mpls ip
MPLS با استفاده از Labelها به جای بررسی جدول مسیریابی حجیم، سرعت جابجایی بستهها را در زیرساختهای بزرگ مثل ISPها چندین برابر میکند.
R1(config)#class-map match-all VOIP-TRAFFIC R1(config-cmap)#match dscp ef R1(config)#policy-map QOS-POLICY R1(config-pmap)#class VOIP-TRAFFIC R1(config-pmap-c)#priority percent 30
در شبکههای مدرن، ترافیک ویدئو و صدا نباید با ترافیک دانلود فایل رقابت کند. QoS با اولویتبندی، پهنای باند تضمین شدهای را برای سرویسهای حساس رزرو میکند.
R1(config-router)#variance 2
این دستور در پروتکل EIGRP اجازه میدهد ترافیک بر روی لینکهایی که سرعت برابر ندارند نیز تقسیم شود تا از تمام ظرفیت شبکه استفاده بهینه صورت گیرد.
R1(config-if)#standby 1 ip 192.168.1.1 R1(config-if)#standby 1 priority 110 R1(config-if)#standby 1 preempt
HSRP باعث میشود اگر روتر اصلی شبکه سوخت یا از کار افتاد، روتر دوم در کمتر از چند ثانیه جای آن را بگیرد بدون اینکه کاربران متوجه قطعی اینترنت شوند.
S1(config)#vtp mode server S1(config)#vtp domain MY_NET
VTP کمک میکند تا با تعریف یک VLAN در سوییچ سرور، آن VLAN به طور خودکار در تمام ۱۰ یا ۱۰۰ سوییچ دیگر شبکه ایجاد شود و خطای انسانی کاهش یابد.
S1(config-if)#switchport mode access S1(config-if)#switchport nonegotiate
غیرفعال کردن پروتکل DTP یک الزام امنیتی است. با این کار از تلاش هکرها برای تبدیل پورت معمولی به Trunk و نفوذ به سایر VLANها جلوگیری میشود.
R1(config)#logging host 192.168.1.100 R1(config)#snmp-server community MyReadOnly RO
مانیتورینگ یعنی چشم مدیر شبکه. Syslog تمام وقایع دستگاه را به سرور گزارش میدهد و SNMP اجازه میدهد وضعیت سختافزاری (CPU/RAM) را به صورت گرافیکی مشاهده کنیم.
AP(config-if-ssid)#ssid GUEST_WIFI AP(config-if-ssid)#wpa-psk ascii mysecretkey
در بخش وایرلس، تنظیم SSID و انتخاب روش رمزنگاری (مثل WPA2/WPA3) اولین قدم برای ایجاد یک شبکه بیسیم امن در محیطهای سازمانی است.