نمایش نتایج: از شماره 1 تا 1 , از مجموع 1

موضوع: شبکه در لینوکس

  1. #1
    عضو جدید zesht آواتار ها
    تاریخ عضویت
    Feb 2011
    محل سکونت
    مشهد
    نوشته ها
    65
    تشکر تشکر کرده 
    73
    تشکر تشکر شده 
    61
    تشکر شده در
    46 پست

    57 شبکه در لینوکس

    شبکه در لینوکس

    فرامين شبکه‌اي در لينوکس

    فملا معمار زنجانی

    اشاره: يکي از دغدغه‌هاي اصلي کاربران علاقه‌مند به لينوکس گنگ‌بودن امکانات اين سيستم‌عامل است. سؤالي كه اغلب كاربران لينوكس پس از نصب اين سيستم‌عامل با آن مواجه مي‌شوند اين است كه چگونه مي‌توان شبكه‌اي مطمئن و امن را تنظيم كرد و چگونه مي‌توان از امكانات لينوكس بهره‌مند شد‌. براي انجام تنظيمات سيستمي بايد به کدام بخش مراجعه كرد، تنظيمات شبکه در لينوکس به چه شکل است و... بيشتركاربران لينوكس نسبت به اين موضوع آگاهي دارند كه اغلب کارهايي که در ويندوز مي‌توان انجام داد در لينوکس نيز انجام پذير است. اما در روش پياده‌سازي آن‌ها تفاوت‌هايي وجود دارد که بايد به مرور با اين تفاوت‌ها آشنا شد. در اين مقاله سعي شده که بخشي از همين مبحث مورد بررسي قرار گيرد. چنان‌چه شما به تنظيمات شبكه‌اي علاقه‌مند باشيد، به‌يقين يکي از جذاب‌ترين و کاربردي‌ترين قسمت‌ها، راه‌اندازي شبكه در محيط لينوكس و تنظيمات شبکه است. از آنجا که کاربران شبکه، کاردر محيط خط‌فرمان را به راهنماهاي بصري ترجيح مي‌دهند، به طور مستقيم سراغ فرامين شبکه‌اي در لينوکس مي‌رويم.

    يکي از دغدغه‌هاي اصلي کاربران علاقه‌مند به لينوکس گنگ‌بودن امکانات اين سيستم‌عامل است. سؤالي كه اغلب كاربران لينوكس پس از نصب اين سيستم‌عامل با آن مواجه مي‌شوند اين است كه چگونه مي‌توان شبكه‌اي مطمئن و امن را تنظيم كرد و چگونه مي‌توان از امكانات لينوكس بهره‌مند شد‌. براي انجام تنظيمات سيستمي بايد به کدام بخش مراجعه كرد، تنظيمات شبکه در لينوکس به چه شکل است و...

    بيشتركاربران لينوكس نسبت به اين موضوع آگاهي دارند كه اغلب کارهايي که در ويندوز مي‌توان انجام داد در لينوکس نيز انجام پذير است. اما در روش پياده‌سازي آن‌ها تفاوت‌هايي وجود دارد که بايد به مرور با اين تفاوت‌ها آشنا شد. در اين مقاله سعي شده که بخشي از همين مبحث مورد بررسي قرار گيرد. چنان‌چه شما به تنظيمات شبكه‌اي علاقه‌مند باشيد، به‌يقين يکي از جذاب‌ترين و کاربردي‌ترين قسمت‌ها، راه‌اندازي شبكه در محيط لينوكس و تنظيمات شبکه است. از آنجا که کاربران شبکه، کاردر محيط خط‌فرمان را به راهنماهاي بصري ترجيح مي‌دهند، به طور مستقيم سراغ فرامين شبکه‌اي در لينوکس مي‌رويم.
    پينگ در لينوكس
    پينگ (Ping) يك دستور رايج در تمام سيستم‌عامل‌ها براي بررسي دسترسي به شبكه است. زماني كه شما در ترمينال يك دستور ping و يك IP آدرس را وارد مي‌كنيد، در واقع ماشين تلاش مي‌كند تا يك سري بسته ICMP را به ماشيني با آدرس IP موردنظر شما ارسال كند. کاربرد اصلي اين فرمان مطلع شدن از وضعيت يک هاست در شبکه است، اگر يک هاست در شبکه باشد (و فايروالي جلوي ICMP آن را نبسته باشد) بايد به بسته‌هاي دريافتي پاسخ داده و با نمايش Reply حضور خود را به طرف مقابل اعلام دارد. ضمن آن‌که مدت پاسخ‌گويي به هر بسته ارسالي نيز، نشان از وضعيت سلامت مسير ارتباطي دارد. اما اگر بخواهيم کمي از اين فرمان به‌صورت پيشرفته‌تر استفاده کنيم و با استفاده از آن از وضعيت سيستم‌هايي که در شبکه هستند، مطلع شويم ابتدا بايد به محيط ترمينال لينوکس مراجعه كرده و Vim را با دسترسي Root اجرا كرده و خطوط زير را وارد كنيم.

    کد:
    #  vim /usr/bin/netup.sh
    #/bin/bash
    for  i in 192.168.1.{1..255}; 
    do
    ping  -c2 $i > /dev/null;
    [ $?  -eq 0 ] && echo $i is up.
    trap  “Exit” SIGINT
    done
    پس از ذخيره كردن فايل در آدرس /usr/bin/netup.sh جهت اجرايي كردن آن دستور زير را وارد كنيد.

    chmod a+x /usr/bin/netup.sh

    حال اسکريپت ايجاد شده را اجرا کنيد.
    کد:
    [slynux@gnuxbox  ~]$ netup.sh
    192.168.1.1  is up.
    192.168.1.3  is up.
    192.168.1.4  is up.
    همان‌طور که مشاهده مي‌کنيدآدرس‌هاي آي‌پي‌اي که در شبکه وجود دارد در اين اسکريپت در وضعيت UP قرار مي‌گيرند.

    تنظيم يك شبكه
    براي راه‌اندازي يک سيستم در شبکه ابتدا بايد به آن آدرسIP داده شود، براي انجام اين‌کار هم مي‌توانيد به‌صورت دستي آدرسIP را به سيستم معرفي كرده و هم مي‌توانيد (در صورت وجود DHCP سرور) آن‌را به‌صورت خودکار پياده سازي کنيد.براي تنظيم دريافت خودکار IP دستور dhclient را وارد کنيد تا تقاضاي دريافت نشاني IP را به سرور DHCP منتقل سازيد. با اين عمل سرور DHCP با توجه به IPهاي موجود نشاني را به سيستم تخصيص خواهد داد. توجه داشته باشيد، IP تخصيص داده شده در هر بار وارد‌كردن دستور فوق مي‌تواند متفاوت باشد.

    اطلاع از وضعيت کارت‌هاي شبکه
    اگر مي‌خواهيد از وضعيت کارت‌هاي شبکه روي سيستم آگاه شويد يا آدرسIP آن‌ها را بيابيد، در ترمينال فرمان ifconfig –a را وارد کنيد:


    کد:
    [slynux@gnuxbox  ~]# ifconfig -a
    eth0  Link encap:Ethernet HWaddr 00:1C:23:FB:37:22
    inet6  addr: fe80::21c:23ff:fefb:3722/64 Scope:Link
    UP  BROADCAST MULTICAST MTU:1500 Metric:1
    RX  packets:9724 errors:0 dropped:0 overruns:0 frame:0
    TX  packets:2720 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0  txqueuelen:1000
    RX  bytes:2400589 (2.2 MiB) TX bytes:645396 (630.2 KiB)
    Interrupt:17
    lo  Link encap:Local Loopback
    inet  addr:127.0.0.1 Mask:255.0.0.0
    inet6  addr: ::1/128 Scope:Host
    UP  LOOPBACK RUNNING MTU:16436 Metric:1
    RX  packets:76320 errors:0 dropped:0 overruns:0 frame:0
    TX  packets:76320 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0  txqueuelen:0
    RX  bytes:87151068 (83.1 MiB) TX bytes:87151068 (83.1 MiB)
    wlan0  Link encap:Ethernet HWaddr 00:1C:BF:87:25:D2
    inet  addr:192.168.1.143 Bcast:192.168.1.255 Mask:255.255.255.0
    inet6  addr: fe80::21c:bfff:fe87:25d2/64 Scope:Link
    UP  BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
    RX  packets:45302 errors:0 dropped:0 overruns:0 frame:0
    TX  packets:37510 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0  txqueuelen:1000
    RX  bytes:31091293 (29.6 MiB) TX bytes:9734025 (9.2 MiB)
    در اينجا ما سه کارت شبکه به نام‌هاي eth0 ، lo و wlan0 داريم:
    eth0: كه معادل همان كارت‌هاي شبكه كابلي است و نشاني IPV6 دارد (fe80::21c:23ff:fefb:3722).
    lo: كه معادل حلقه بازگشتي (Loop Back) اشاره به Local Host يا كامپيوتر جاري است (127.0.0.1).
    wlan0: معادل با يك كارت شبكه LAN بي‌سيم است و نشانيIPV4 دارد (192.168.1.143).


    تخصيصIP به‌صورت دستي
    براي تخصيصIP به‌صورت دستي دستور زير را اجرا کنيد:
    ifconfig ><نام کارت شبکه> IP< نشاني
    به عنوان مثال:

    ifconfig eth0 192.168.0.2

    اگر بخواهيم وضعيت کارت شبکه eth0 را ببينيم، دستورifconfig eth0 را وارد خواهيم کرد.

    کد:
    [root@gnubox  slynux]# ifconfig eth0
    eth0  Link encap:Ethernet HWaddr 00:1C:23:FB:37:22
    inet  addr:192.168.0.2 Bcast:192.168.0.255 Mask:255.255.255.0
    inet6  addr: fe80::21c:23ff:fefb:3722/64 Scope:Link
    UP  BROADCAST MULTICAST MTU:1500 Metric:1
    RX  packets:9724 errors:0 dropped:0 overruns:0 frame:0
    TX  packets:2720 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0  txqueuelen:1000
    RX  bytes:2400589 (2.2 MiB) TX bytes:645396 (630.2 KiB)
    Interrupt:17
    براي تغيير Subnet Mask از حالت پيش فرض به حالتي که مدنظرتان است اين دستور را وارد کنيد:

    ifconfig eth0 192.168.0.2 netmask 255.255.255.0

    اگر بخواهيم کارت شبکه‌اي را فعال کنيم، از فرمان ifup و براي غير‌فعال‌کردن آن از ifdown استفاده خواهيم کرد.

    ifup eth0
    ifdown eth0

    شبكه‌هاي بي‌سيم
    براي يافتن نام (ESSID) شبکه‌هاي مجاورتان بايد از دستور iwlist استفاده کنيد.

    کد:
    [root@gnuxbox~]#  iwlist wlan0 scan
    wlan0  Scan completed :
    Cell  01 - Address: 00:08:5C:52:E9:83
    ESSID:”slynux”
    Mode:Master
    Channel:11
    Frequency:2.462  GHz (Channel 11)
    Quality=92/100  Signal level:-39 dBm Noise level=-78 dBm
    Encryption  key:off
    Bit  Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s
    24  Mb/s; 36 Mb/s; 54 Mb/s; 6 Mb/s; 9 Mb/s
    12  Mb/s; 48 Mb/s
    Extra:tsf=00000000fc021187
    دستورات فوق فهرستي از شبكه‌هاي مختلف بي‌سيم را که توسط کارت شبکه‌تان قابل شناسايي هستند، نمايش خواهند داد.پس از يافتن نام شبکه، از دستور ديگري به نام iwconfig براي اتصال به يکي از اين شبکه‌ها استفاده خواهيم کرد. اين دستور شباهت زيادي به ifconfig دارد، با اين تفاوت که پارامترهاي ديگري را که براي اتصال به شبكه‌هاي بي‌سيم نياز داريد نيز در اختيار شما قرار خواهد داد. در اين مثال فرض بر اين است که نام (ESSID) شبکه بي‌سيم ما slynux است و کلمه عبور (Pass Key) آن 8c140b2037 است.

    iwconfig wlan0 essid slynux key 8c140b2037

    پس از اتصال به شبکه موردنظر با اجراي دستور ifconfig يك نشانيIP به كارت شبكه خودتان اختصاص دهيد:

    ifconfig wlan0 192.168.0.5

    چنان‌چه نقطه دسترسي(AP) موردنظر امکان تخصيص IP را به‌صورت خودکار داشته باشد(DHCP)، به‌جاي دستي وارد کردن IP از دستور زير استفاده کنيد:

    dhclient wlan0

    تنظيماتي که شما با دستور ifconfig اعمال مي‌کنيد تنها تا زماني که سيستم را راه‌اندازي دوباره نکنيد، قابل استفاده هستند. به همين دليل، پس از هر بار راه اندازي دوباره، تنظيمات به حالت اوليه باز خواهد گشت. براي اجتناب از اين امر کافي است کدهاي اسکريپتي را که در ادامه خواهيم گفت، در محل مناسب ذخيره‌سازي کنيد. چنان‌چه شما از سيستم‌عامل اوبونتو (و يا هر سيستم‌عامل ديگري که بر پايه دبيان طراحي شده است) استفاده مي‌کنيد، کافي است به اين مسير مراجعه کنيد. /etc/networks/interfaces سپس تغييرات لازم را در آنجا اعمال کنيد.

    کد:
    auto  lo
    iface  lo inet loopback
    
    iface  eth0 inet static
    address  164.164.32.101
    netmask  255.255.255.240
    gateway  164.164.32.97
    1- چنان‌چه مايل هستيد eth0 از DHCP سرور IP دريافت کند، دستورات زير را به اين بخش اضافه کنيد:

    auto eth0
    iface eth0 inet dhcp

    2 –چنان‌چه تمايل داريد تا IP استاتيک خود را تنظيم کنيد، دستورات زير را وارد کنيد.

    کد:
    auto  eth0
    iface  eth0 inet static
    address  <ip_address>
    netmask  <netmask>
    gateway  <gateway_ip>
    3- چنان‌چه از شبکه‌هاي بي سيم استفاده مي‌كنيد دستورات زير را به خطوط فرمان قسمت قبلي اضافه كنيد.

    wireless-essid <network_name>
    wireless-key <key>

    حال براي راه‌اندازي دوباره سرويس شبکه، دستور زير را در شاخه root ترمينال وارد کنيد:

    /etc/init.d/network restart


    جعل کردن آدرس MAC
    همان‌طور که مي‌دانيد آدرسMAC يک شناسه يکتا براي هر ابزار شبکه‌اي به شمار مي‌آيد. اين يکتا بودن در بعضي از موارد محدوديت‌هايي را ايجاد مي‌کند، به‌عنوان مثال، برخي از سرويس‌دهندگان اينترنتي بر‌اساس آدرس MAC مشتريان به آن‌ها سرويس مي‌دهند. از اين‌رو، فرض کنيد قرار باشد يک سيستم جديد وارد شبکه داخلي شما شود (که به يقين آدرس MAC جديد خواهد داشت).

    در اين سناريو شما مجبورهستيد، آدرس MAC جديد را به سرويس‌دهنده اينترنت‌ خود گزارش دهيد. امروزه، استفاده از قابليت فيلتر کردن آدرس MAC يا MAC Filtering در شبكه‌هاي بي‌سيم بسيار رايج است. مک ******** در حقيقت اين امکان را فراهم مي‌سازد که شما به نقطه دسترسي خود دستور دهيد فقط آدرس‌هاي MAC خاصي امکان اتصال به شبکه را داشته باشند. از اين‌رو اگر سيستم جديدي وارد مجموعه شود که در فهرست مک ******** قرار نگرفته باشد، حتي اگر کلمه عبور شبکه (Pass Key) راهم در اختيار داشته باشد، بازهم قادر به اتصال به شبکه نخواهد بود. براي از ميان برداشتن اين مسئله شما مي‌توانيد با چند دستور ساده در لينوکس يک آدرس MAC جديد به دستگاه خود (به‌صورت مجازي) اختصاص دهيد و اين محدوديت‌ها را پشت سر بگذاريد. آدرس MAC سيستم در خط اول خروجي ifconfig قابل رؤيت است.

    eth0 Link encap:Ethernet HWaddr 00:1C:23:FB:37:22

    حال مي‌خواهيم دو رقم آخر اين آدرس را به 23 تبديل كنيم.

    ifconfig eth0 hw ether 00:1C:23:FB:37:23

    براي ملاحظه خروجي کار دوباره ifconfig را وارد کنيد.

    کد:
    [root@gnubox  slynux]# ifconfig eth0
    eth0  Link encap:Ethernet HWaddr 00:1C:23:FB:37:23
    inet  addr:192.168.0.2 Bcast:192.168.0.255 Mask:255.255.255.0
    BROADCAST  MULTICAST MTU:1500 Metric:1
    RX  packets:0 errors:0 dropped:0 overruns:0 frame:0
    TX  packets:0 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0  txqueuelen:1000
    RX  bytes:0 (0.0 b) TX bytes:0 (0.0 b)
    Interrupt:17
    تعيين سرور DNS
    ارتباط در دنياي شبکه از طريق IP و آدرس MAC و... سيستم‌ها صورت مي‌پذيرد. اما به حافظه سپردن اين‌گونه نشاني‌ها براي انسان‌ بسيار مشکل و گاهي امکان ناپذير خواهد بود. به‌عنوان مثال، فرض کنيد مي‌خواهيد ايميل‌هاي خود را در سايت جي‌ميل بررسي كنيد. براي اين کار کافي است در مرورگر اينترنتي خود نشاني جي‌ميل (www.gmail.com) را تايپ کنيد. اما در حقيقت شبکه چيزي به نام نشاني gmail.com را متوجه نخواهد شد و اگر هزاران بار اين اسم را ارسال کنيد، جوابي نخواهيد يافت.

    در حقيقت، زماني که شما اين آدرس را وارد مي‌کنيد سيستم شما اين نشاني را براي سروري که به آن DNS سرور مي‌گويند، ارسال کرده و نشاني IP آن را دريافت مي‌کند. به‌عنوان مثال، نشاني 209,85,229,19 جوابي خواهد بود که DNS سرور به سيستم شما خواهد داد. پس از دريافت اين نشاني سيستم شما آن‌را به نخستين روتر (درگاه ورود به اينترنت شبکه داخلي) ارسال خواهد کرد و سپس صفحه جي‌ميل در مرورگر شما نمايان خواهد شد.

    اگر سيستم شما به‌صورت خودکار (DHCP) نشاني IP دريافت مي‌کند، در اين شرايط نشاني سرور DNS براي سيستم شما به احتمال قوي از قبل تعريف شده است. اما اگر به‌صورت دستي مايل به وارد کردن نشاني IP هستيد، بايد نشاني DNS را با اضافه‌کردن آدرسIP،Subnet Mask و Default Gateway براي سيستم‌تان تعريف کنيد، اين کار به راحتي با وارد کردن خطوط زير در فايل /etc/resolve.conf امکان‌پذير است:

    کد:
    nameserver  208.67.222.222
    nameserver  208.67.220.220
    توجه داشته باشيد لزومي ندارد كه از DNS تعريف‌شده توسط ISPتان استفاده كندي. براي امنيت بيشتر بهتر است از DNSهاي باز ياOpen DNSها استفاده كنيد. دراين‌باره مي‌توانيد به سايت opendns.org مراجعه كنيد.

    ارتباط از راه دور به‌وسيله SSH
    شايد مايل باشيد از راه دور به يکي از سيستم‌هاي موجود در شبکه‌تان متصل شويد. اين کار به‌صورت امن و راحت از طريق SSH امكان‌پذير است. البته به شرطي كه IP و شناسه كاربري و گذرواژه‌ آن سيستم را بدانيد.
    به‌عنوان مثال، در اين سناريو ما به سيستمي با آدرسIP فرضي 192.168.1.3 متصل خواهيم شد. اگر شناسه کاربري مجازي در سيستم داشته باشيد (که در اين مثال نام شناسه ما test خواهد بود) مي‌توانيد با توجه به ميزان دسترسي‌هاي شناسه کاربري خود در آن سيستم کارهاي مختلفي انجام دهيد.

    کد:
    [root@gnubox  ~]# ssh test@192.168.1.3
    The  authenticity of host ‘192.168.1.3 (192.168.1.3)’ can’t be  established.
    RSA  key fingerprint is  9f:61:ae:ac:8f:75:bb:3a:02:4a:f4:6c:7d:b9:0d:07.
    Are  you sure you want to continue connecting (yes/no)? yes
    Warning:  Permanently added ‘192.168.1.3’ (RSA) to the list of known  hosts.
    test@192.168.1.3’s  password: 
    -sh-3.2$  echo I am on 192.168.1.3 Machine
    I am  on 192.168.1.3 Machine
    -sh-3.2$

    پس از اتصال به سيستم موردنظر شما قادر خواهيد بود کارهاي مختلفي (با توجه به سطح دسترسي شناسه کاربريتان) روي آن انجام دهيد. به‌عنوان مثال، سي‌دي رام آن را باز و بسته کنيد، سيستم را دوباره راه‌اندازي يا حتي خاموش کنيد. يکي از ملحقات ssh ، setp است که به‌وسيله آن مي‌توانيد فايل‌ها را از يک سيستم به سيستم ديگري منتقل کنيد. در setp براي دانلود فايل از دستور get و براي آپلود از put استفاده
    خواهيم کرد.

    کد:
    [root@localhost  ~]# sftp test@192.168.1.3
    Connecting  to 192.168.1.3...
    test@192.168.1.3’s  password:
    sftp>  ls
    Desktop  Documents Download Music Pictures Public Templates
    Videos  a.out test.bin file.cpp t.c
    sftp>  get t.c
    Fetching  /home/test/t.c to t.c
    /home/test/t.c  100% 239 0.2KB/s 00:00
    sftp>
    در اين مثال پس از ورود به سيستم از طريق sftp ما فايلي به نام t.c را دانلود کرديم. يکي ديگر از ملحقات ssh، sshfs نام دارد که به‌وسيله آن مي‌توان دايرکتوري در سيستم ريموت شده را در سيستم ديگر Mount کنيد. در مثال زير ما يک دايرکتوري را از سيستم 3,1,168,192 به سيستم خودمان Mount کرديم.
    کد:
    root@localhost  ~]# sshfs test@192.168.1.3:/home/test /mnt/test
    test@192.168.1.3’s  password:
    تنظيمات پراکسي
    بسياري از شبکه‌هاي اداري، قبل از ورود سيستم‌ها به دنياي اينترنت آن‌ها را از فايروال خود عبور مي‌دهند. اينگونه اتصال‌ها اغلب توسط پراکسي انجام مي‌شود. به اين ترتيب که به عنوان مثال، مرورگر به طور مستقيم درخواست‌هاي خود را به اينترنت متصل نمي‌کند، بلکه ابتدا به پراکسي سرور (که مي‌تواند همان فايروال شبکه هم باشد) ارسال کرده و پس از مجاز شناخته شدن، درخواست سيستم به اينترنت هدايت خواهد شد.
    براي تعريف پراکسي براي پروتکل‌هاي HTTP و FTP دو دستور زير را وارد کنيد.
    کد:
    export  http_*****=”http://192.168.0.1:3128” ; // HTTP *****
    export  ftp_*****=”192.168.0.1:3128” ; //FTP *****
    اگر مايل بوديد هر بار که به سيستم وارد مي‌شويد اين دستورها به‌طور خودکار اعمال شوند، آن‌ها را در فايل ~/.bash_profile وارد كنيد.

    منبع : اخبار پارسيك


  2. تعداد تشکر ها ازzesht به دلیل پست مفید


  3. # ADS




     

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •