۱۳۸۶ شهریور ۸, پنجشنبه

آموزش تصویری تنظیم DHCP Relay Agent درِ debian

DHCP Relay Agent (dhcrelay) درخواست هایی که از سابنت بدون DHCP سرور میآید را به DHCP سرور های سابنتهای دیگر که ما مشخص کرده ایم بازپخش میکند.
دلیل استفاده از DHCP Relay Agent اینست که روتر Broadcast را از خود عبور نمیدهد و DHCP clientها برای گرفتن IP از Broadcast استفاده میکنند پس برای حل این مشکل ما از یک DHCP Relay Agent استفاده میکنیم که بدین ترتیب عمل میکند :
DHCP Relay Agent پیغام هایی که به صورت Broadcast ارسال میشود و تقاضای IP میکنند را جمع آوری میکند و سپس خود بصورت Unicast با DHCP سرور درخواست مورد نظر را مطرح میکند و جواب گرفته شده را برای client ارسال میکند.در واقع DHCP Relay Agent نقش میانجی را ایفا میکند.
dhcprelay

آموزش در دبین :

لینک های پشتیبان


برای مشاهده آموزش کلیک کنید

برای دانلود آموزش کلیک کنید

برای نصب DHCP Relay agent در دبین به ترتیب عمل مبکنیم :

apt-get install dhcp3-relay


برای ویرایش تنظیمات مربوط از قبیل DHCP سرور و اینکه از چه کارت شبکه هایی درخواست ها جمع آوری میبایست فایل etc/default/dhcp3-relay/ را ویرایش کنیم.

nano /etc/default/dhcp3-relay

# Defaults for dhcp3-relay initscript
# sourced by /etc/init.d/dhcp3-relay
# installed at /etc/default/dhcp3-relay by the maintainer scripts
#
# This is a POSIX shell fragment
#
# What servers should the DHCP relay forward requests to?
SERVERS="192.168.1.100"
# On what interfaces should the DHCP relay (dhrelay) serve DHCP requests?
INTERFACES="eth1"
# Additional options that are passed to the DHCP relay daemon?
OPTIONS=""
برای شروع مجدد سرویس :

etc/init.d/dhcp3-relay restart/

آموزش تصویری تنظیم DHCP Relay Agent درِ Redhat & Fedora

DHCP Relay Agent (dhcrelay) درخواست هایی که از سابنت بدون DHCP سرور میآید را به DHCP سرور های سابنتهای دیگر که ما مشخص کرده ایم بازپخش میکند.
دلیل استفاده از DHCP Relay Agent اینست که روتر Broadcast را از خود عبور نمیدهد و DHCP clientها برای گرفتن IP از Broadcast استفاده میکنند پس برای حل این مشکل ما از یک DHCP Relay Agent استفاده میکنیم که بدین ترتیب عمل میکند :
DHCP Relay Agent پیغام هایی که به صورت Broadcast ارسال میشود و تقاضای IP میکنند را جمع آوری میکند و سپس خود بصورت Unicast با DHCP سرور درخواست مورد نظر را مطرح میکند و جواب گرفته شده را برای client ارسال میکند.در واقع DHCP Relay Agent نقش میانجی را ایفا میکند.
dhcprelay


آموزش در ردهت :

لینک های پشتیبان


برای مشاهده آموزش کلیک کنید

برای دانلود آموزش کلیک کنید


برای نصب DHCP Relay agent در ردهت به ترتیب عمل مبکنیم :
yum install dhcp
برای ویرایش تنظیمات مربوط از قبیل DHCP سرور و اینکه از چه کارت شبکه هایی درخواست ها جمع آوری میبایست فایل etc/sysconfig/dhcrelay/ را ویرایش کنیم.
nano /etc/sysconfig/dhcrelay

INTERFACES="eth1"
DHCPSERVERS="192.168.1.100"
برای شروع مجدد سرویس :

etc/init.d/dhcrelay restart/

عکسی از سمت کلاینت در موقع گرفتن IP آدرس :
توجه داشته باشید که این عکس بعدا اضافه شده و با تنظیمات گفته شده در بالا هماهنگی ندارد.IP آدرس 192.168.1.3 مربوط به dhcp relay agent می باشد.

تغییر شل پیش فرض در لینوکس

شل پیش فرض هر کاربر در فایل etc/passwd/ قابل مشاهده می باشد ولی از طریق این فایل اگر کاربر ریشه نباشید امکان تغییر وجود ندارد.
نمونه محتویات این فایل :
cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh


فایل etc/shells/ حاوی لیستی از شل هایی است که بر روی سیستم موجود میباشد و از طریق آن می توانید شل مورد نظر خود را انتخاب کنید :
PersianAdmins:~# cat /etc/shells
# /etc/shells: valid login shells
/bin/csh
/bin/sh
/usr/bin/es
/usr/bin/ksh
/bin/ksh
/usr/bin/rc
/usr/bin/tcsh
/bin/tcsh
/usr/bin/esh
/bin/bash
/bin/rbash

هر کاربر تنها می تواند شل پیش فرض خود را تغییر دهد و تنها کاربر ریشه قادر است تنظیمات کاربران دیگر را تغییر دهد.
برای تغییر شل پیش فرض از دستور chsh استفاده می کنیم که خلاصه شده change shell می باشد :
chsh -s {shell-name} {user-name}

shell-name نام شل مورد نظر می باشد که باید آدرس کامل آن وارد شود .
user-name نام کاربری که این تغییرات بر روی آن اعمال می شود. در صورتی که کاربر ریشه هستید از این گزینه استفاده کنید.

مثال :
تغییر شل کاربر جاری
chsh -s /bin/csh

بعد از زدن این دستور از شما پسورد خواسته می شود که می بایست پسورد خود را وارد کنید.

تغییر شل پیش فرض کابر رضا از طریق کاربر ریشه :
chsh -s /bin/csh reza
وقتی از کاربر ریشه استفاده می کنیم پسورد پرسیده نخواهد شد.

مشاهده تغییرات :
قبل از دستور

PersianAdmins:~# cat /etc/passwd | grep reza
reza:x:1000:1000:reza,,,:/home/reza:/bin/bash
بعد از دستور

PersianAdmins:~# cat /etc/passwd | grep reza
reza:x:1000:1000:reza,,,:/home/reza:/bin/csh

آموزش تصویری امن کردن وب سایت توسط SSL در IIS

How to secure web sites with SSL(CA) on IIS - HTTPS

SSL چيست ؟

Secure Socket Layer , يا همان SSL يک تکنولوژی استاندارد و به ثبت رسيده برای تامين ارتباطی امن مابين يک وب سرور و يک مرورگر اينترنت است. اين ارتباط امن از تمامی اطلاعاتی که ما بين وب سرور و مرورگر اينترنت ( کاربر) انتقال ميابد , محافظت ميکند تا در اين انتقال به صورت محرمانه و دست نخورده باقی بماند. SSL يک استاندارد صنعتی است و توسط مليونها وب سايت در سراسر جهان برای برقراری امنتيت انتقال اطلاعات استفاده ميشود. برای اينکه يک وب سايت بتواند ارتباطی امن از نوع SSL را داشته باشد نياز به يک گواهينامه SSL دارد.

زمانيکه شما ميخواهيد SSL را بر روی سرور خود فعال کنيد سؤالات متعددی در مورد هويت سايت شما ( مانند آدرس سايت ) و همين طور هويت شرکت شما ( مانند نام شرکت و محل آن) از شما پرسيده ميشود. آنگاه سرور دو کليد رمز را برای شما توليد ميکند , يک کليد خصوصی (Private Key) و يک کليد عمومی (Public Key). کليد خصوصی به اين خاطر , اين نام را گرفته است , چون بايستی کاملا محرمانه و دور از دسترس ديگران قرارگيرد. اما در مقابل نيازی به حفاظت از کليد عمومی نيست و اين کليد در قالب يک فايل درخواست گواهينامه يا Certificate Signing Request که به اختصار آنرا CSR ميناميم قرارداده ميشود که حاوی مشخصات سرور و شرکت شما بصورت رمز است. آنگاه شما باسيتی که اين کد CSR را برای صادرکننده گواهينامه ارسال کنيد. در طول مراحل سفارش يک SSL مرکز صدور گواهينامه درستی اطلاعات وارد شده توسط شما را بررسی و تاييد ميکند و سپس يک گواهينامه SSL برای شما توليد کرده و ارسال ميکند.

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

نمايش قفل امنيت SSL

پيچيده گيهای يک پروتکل SSL برای کاربران شما پوشيده است ليکن مرورگر اينترنت آنها در صورت برقراری ارتباط امن , وجود اين ارتباط را توسط نمايش يک قفل کوچک در پايين صفحه متذکر ميشود.

کليک برروی قفل کوچک باعث نمايش گواهينامه شما به همراه ساير جزئيات ميشود.

گواهينامه های SSL تنها برای شرکتها و اشخاص حقيقی معتبر صادر ميشوند. به طور مثال يک گواهينامه SSL شامل اطلاعاتی در مورد دامين , شرکت , آدرس , شهر , استان , کشور و تاريخ ابطال گواهينامه و همينطور اطلاعاتی در مورد مرکز صدور گواهينامه که مسؤول صدور گواهينامه ميباشد.

زمانيکه يک مرورگر اينترنت به يک سايت از طريق ارتباط امن متصل ميشود , علاوه بر دريافت گواهينامه SSL ( کليد عمومي) , پارامترهايی را نظير تاريخ ابطال گواهينامه , معتبر بودن صادرکننده گواهينامه و مجاز بودن سايت به استفاده از اين گواهينامه نيز بررسی ميکند و هرکدام از موارد که مورد تاييد نباشد به صورت يک پيغام اخطار به کاربر اعلام ميدارد.




متن وام گرفته شده از سایت :
http://www.iranssl.com

۱۳۸۶ شهریور ۲, جمعه

پاک کردن لیست دستوراتی که در شل اجرا کرده ای

حتما براتون پیش اومده که جایی کاری انجام دادید و نمی خواهید طرف بفهمه چی کار کردید و قصد دارید رد پاتون رو پاک کنید!
با استفاده از دستور history تمام دستوراتی که تا به حال بکار بردید رو میتونید مشاهده کنید

reza:~# history | more
1 nano /etc/network/interfaces
2 nano /etc/hostname
3 init 6
4 scp /etc/ipsec.conf root@192.168.0.22:/etc/ipsec.conf
5 scp /etc/ipsec.secrets root@192.168.0.22:/etc/ipsec.secrets
6 scp /etc/ipsec.conf root@192.168.0.22:/etc/ipsec.conf
7 nano /etc/network/interfaces
8 /etc/init.d/networking restart
9 nano /etc/network/interfaces
10 /etc/init.d/networking restart
11 /etc/init.d/networking restart


حال برای اینکه این history رو از بین ببرید این دستور رو اجرا کنید

history -c



ولی کار تمام نشده چونکه این لاگ ها در فایل bash_history. در دایکتوری خانگی کاربر هم ذخیره می شود , برای خالی کردن این فایل بدین ترتیب عمل می کنیم (من فرض می کنم کاربر ریشه مورد نظر می باشد) :

echo > /root/.bash_history

۱۳۸۶ مرداد ۲۸, یکشنبه

آموزش تصویری DHCP سرور بهمراه نحوه تنظیم User-Class ها در ویندوز سرور 2003

سرویس DHCP(Dynamic Host Configuration Protocol) بصورت خودکار تمامی اطلاعات مربوط به TCP/IP از قبیل IP آدرس , DNS سرور , Gateway و بسیار گزینه های دیگر را در اختیار کلاینت ها قرار می دهد که پرکاربردترین آنها مورد اشاره واقع شد.

عملیات مربوط به تخصیص آدرس IP به کلاینت ها در چندین مرحله صورت می پذیرد که در اینجا به آن می پردازیم :
1 - کلاینت ها در زمان بوت شدن سیستم یا شروع مجدد سرویس یا با استفاده از دستور ipconfig /renew در ویندوز شروع به پخش پیغام هایی به نام DHCP Discover بصورت همگانی (broadcast) می کنند و در این پیغام ها درخواست IP خود را برای DHCP سرور های در محل اعلام می کنند.
2 - سروهای DHCP که این پیغام را دریافت می کنند در جوب پیغامی بنام DHCP Offer برای کلاینت ارسال می کنند و IP مورد نظر خود را به کلاینت پیشنهاد می دهند.
3 - کلاینت که ممکن است از چندین سرور پیشنهاد IP داشته باشد معمولا به سریعترین پیشنهاد با پیغامی بنام DHCP Request درخواست IP می کند.کلاینت این پیغام را بصورت همگانی ارسال می کند که برای سرور مورد نظر نشان دهنده قبول پیشنهاد و برای بقیه نشان دهنده عدم قبول می باشد.
4-سرور DHCP هم با یک پیغام DHCP ACK با این درخواست موافقت می کند.
شکل زیر مراحل بالا را بخوبی نشان می دهد:



برای جلوگیری از اینکه دو سیستم همزمان از یک آدرس استفاده کنند میتوان DHCP سرور را تنظیم کرد تا قبل از اختصاص IP به کلاینت آن را ping کند تا مشکلی بوجود نیاید.همچنین کلاینت با استفاده از ARP این عمل را انجام می دهد.

سرور DHCP این تنظیمات را برای دوره زمانی مشخصی در اختیار کلاینت قرار می دهد که اصطلاحا lease time گفته می شود.کلاینت وقتی به 50% از زمان باقی مانده رسید از سرور تقاضای تمدید زمان اجاره را می کند که در این مرحله پیغام ها بصورت Unicast رد و بدل می شود.
اگر سرور تا 87.5% از زمان باقی مانده به کلاینت پاسخ ندهد , کلاینت شروع به فرستادن پیغام های DHCP Request بصورت همگانی می کند تا سرورهای دیگر هم بتوانند به او پاسخ دهند.
pic2


گاها در بعضی شبکه ها DHCP سرورهای قلابی یا Rogue DHCP سرورها به کلاینت ها آدرس اختصاص می دهند که در آموزش زیر کاملا به آن می پردازیم.
پیدا کردن DHCP سرورهای قلابی یا Rogue DHCP servers در شبکه



اگر DHCP سرور و کلاینت ها در دو شبکه مجزا از هم قرار داشته باشند میبایست از یک Relay Agent استفاده کرد تا درخواست ها را از طرف کلاینت ها برای DHCP سرور بازپخش کند و سپس جواب را از طرف DHCP به کلاینت ها منتقل کند.
DHCP Relay Agent (dhcrelay) درخواست هایی که از سابنت بدون DHCP سرور میآید را به DHCP سرور های سابنتهای دیگر که ما مشخص کرده ایم بازپخش میکند.
دلیل استفاده از DHCP Relay Agent اینست که روتر Broadcast را از خود عبور نمیدهد و DHCP clientها برای گرفتن IP از Broadcast استفاده میکنند پس برای حل این مشکل ما از یک DHCP Relay Agent استفاده میکنیم که بدین ترتیب عمل میکند :
DHCP Relay Agent پیغام هایی که به صورت Broadcast ارسال میشود و تقاضای IP میکنند را جمع آوری میکند و سپس خود بصورت Unicast با DHCP سرور درخواست مورد نظر را مطرح میکند و جواب گرفته شده را برای client ارسال میکند.در واقع DHCP Relay Agent نقش میانجی را ایفا میکند.

در آموزش های زیر DHCP relay agnet کاملا توضیح داده شده است :
آموزش تصویری تنظیم DHCP Relay Agent در لینوکس
آموزش تصویری تنظیم DHCP Relay Agent در ویندوز سرور 2003


برای اینکه کلاینت های لینوکسی را برای استفاده از DHCP تنظیم کرد میتوانید از آموزش های زیر بهره ببرید:
تنظیمات اولیه شبکه در دبین و آبانتو و توزیع ها مبتنی بر آنها
تنظیمات اولیه شبکه در Redhat , Fedora , CentOS و توزیع های مبتنی بر آنها


نصب DHCP سرور در ویندوز سرور 2003 :


استفاده از User-class ها :
ممکن است به این مشکل برخورده اید که چندین کلاینت می بایست مثلا gateway متفاوت از بقیه داشته باشند و تنها راه را در رزروشن دیده اید, در حالیکه راه آسانتر استفاده از User-class ها می باشد.بدین ترتیب که ابتدا یک User-class تعریف می کنیم و برای این class مورد نظر Option ها را به دلخواه تنظیم می کنیم , در نهایت کلاینت با تنظیم این class به سرور می گوید که Option ها را از این class به او اختصاص دهد.

برای مشاهده آموزش کلیک کنید
برای دانلود آموزش کلیک کنید


لینک های پشتیبان

برای مشاهده آموزش کلیک کنید
برای دانلود آموزش کلیک کنید



تنظیم ویندوز XP برای استفاده از User-class ها در DHCP سرور :
در این آموزش مشاهده خواهید کرد آدرس gateway در ابتدا که کلاینت از user-class استفاده نمی کند از option پیش فرض خواهد بود و زمانی که user-class تنظیم می شود آدرس به gatewayای که برای این کلاس در بالا مشخص کرده ایم تغییر می کند.

۱۳۸۶ مرداد ۲۷, شنبه

نصب و تنظیم MRTG در لینوکس (ابزارهای مانیتورینگ شماره 2)

نصب و تنظیم MRTG در لینوکس (ابزارهای مانیتورینگ شماره 2)


MRTG ابزاریست پرکاربرد و رایگان جهت بدست آوردن میزان مصرفی ترافیک , CPU , RAM و مورد های بسیار دیگر.
MRTG میزان مصرف را بصورت صفحات وب همراه با عکس هایی با فرمت PNG ایجاد می کند.
از MRTG می توان برای مانیتورینگ اکثر سخت افزارهای شبکه با قابلیت SNMP و تقریبا تمامی سیستم عامل ها بهره گرفت.
در این آموزش به شیوه نصب و تنظیم MRTG در لینوکس های بر پایه دبین و ردهت می پردازیم.

نصب MRTG و بسته های مورد نیاز در دبین :
apt-get install apache2 mrtg

نصب MRTG و بسته های مورد نیاز در ردهت :
yum install httpd* mrtg

تا این مرحله سرور مونیتورینگ را نصب کرده ایم و می بایست بر روی دستگاه ها و سیستم هایی که قصد نظارت داریم سرویس SNMP را فعال کنیم.
در این آموزش به نحوه نصب این سرویس در سیستم عامل های لینوکس و ویندوز و تجهیزات سیسکو می پردازیم.

1-مایکروسافت
همانند هر سرویس ویندوز دیگر به آسانی قابل انجام است, کافیست به

Computer management==>Services and Aplications==>Services

بروید و سرویس SNMP را فعال و Community مورد نظر با اجازه دسترسی لازم که در اینجا Read only می باشد را تنظیم کنید.
به شکل زیر توجه کنید:

برای مشاهده در سایز واقعی بر روی عکس کلیک کنید


2-سیسکو
config term
snmp-server community public ro 15
access-list 15 permit X.X.X.X(ip-mrtg)
3-لینوکس
الف-نصب در دبین
apt-get install snmp snmpd
ب-نصب در ردهت
*yum install net-snmp
حال تغییرات زیر را در فایل etc/snmp/snmpd.conf/ انجام دهید :
قبل از هر چیز از یک کپی از فایل تهیه می کنیم تا در صورت نیاز از آن استفاده کنیم
cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.default
سپس این خطوط را پیدا کرده
com2sec paranoid default public
#com2sec readonly default public
#com2sec readwrite default private


وبه این شکل تغییر دهید

#com2sec paranoid default public
com2sec readonly 127.0.0.1 public
#com2sec readwrite default private

و در آخر سرویس را مجدد راه اندازی کنید
etc/init.d/snmpd restart/
برای تست درست بودن تنظیمات مثلا بر روی روتر سیسکو بدین شکل عمل می کنیم :
snmpwalk -v1 -c public 192.168.0.1


دایرکتوری که خروجی فایل های وب MRTG در آن قرار می گیرد را می سازیم:
mkdir /var/www/mrtg
تنظیم MRTG :
در حالت پیش فرض تنظیمات MRTG را در فایل etc/mrtg.cfg/ انجام می دهیم ولی شما می توانید از هر فایل دیگری با هر نامی استفاده کنید.
فرض کنید می خواهید ترافیک اینترفیس های روتر را آنالیز کنید و نموداری از میزان مصرف شبکه خود بدست آورید , برای این هدف بدین شکل عمل می کنیم :
cfgmaker public@192.168.0.1This email address is being protected from spam bots, you need Javascript enabled to view it --global 'workdir:/var/www/mrtg' --output /etc/mrtg.cfg
با استفاده از این دستور تنظیمات بصورت خودکار صورت می پذیرد و از این روش برای بدست آوردن نمودار مصرف اینترفیس ها در هر دستگاه و سیستم عاملی میتوان استفاده کرد.

دستور زیر را اجرا کنید و در صورت نمایش خطا , آنرا چندین مرتبه اجرا کنید:
usr/bin/mrtg /etc/mrtg/server-stats.cfg/
توجه داشته باشید که اگر متغیر LANG بر روی UTF-8 تنظیم شده است باید از دستور زیر استفاده کنید :
usr/bin/mrtg /etc/mrtg/server-stats.cfg/
نکته :
با استفاده از دستور export می توانید متغیرهای محیطی را مشاهده کنید.

حال فایل index را با این دستور ایجاد می کنیم :
indexmaker --columns=1 /etc/mrtg.cfg > /var/www/mrtg/index.html
در صورتیکه از فایلی بجز etc/mrtg.cfg/ استفاده می کنید , می بایست این تنظیمات را در cron انجام دهید تا بروررسانی صورت پذیرد :

nano /etc/cron.d/mrtg
0/5 * * * * root env LANG=C /usr/bin/mrtg /etc/mrtg/other-file.cfg
از MRTG برای مانیتورینگ موردهای بسیاری می توان استفاده کرد.برای مثال با اعمال تنظیمات زیر می توانید لود CPU روتر سیسکو خود را بدست آورید :

# Router CPU load %
Target[cpu.1]:1.3.6.1.4.1.9.2.1.58.0&1.3.6.1.4.1.9.2.1.58.0: public@192.168.0.1
RouterUptime[cpu.1]: public@192.168.0.1
MaxBytes[cpu.1]: 100
Title[cpu.1]: CPU LOAD
PageTop[cpu.1]: CPU Load %
Unscaled[cpu.1]: ymwd
ShortLegend[cpu.1]: %
XSize[cpu.1]: 380
YSize[cpu.1]: 100
YLegend[cpu.1]: CPU Utilization
Legend1[cpu.1]: CPU Utilization in % (Load)
Legend2[cpu.1]: CPU Utilization in % (Load)
Legend3[cpu.1]:
Legend4[cpu.1]:
LegendI[cpu.1]:
LegendO[cpu.1]: Usage
Options[cpu.1]: gauge



حال برای مشاهده MRTG در بروزر بدین شکل عمل می کنیم :
http://mrtg-server-ip/mrtg

در آخر توصیه می کنم که دسترسی به دایرکتوری mrtg در وب سرور خود را محدود کنید.

۱۳۸۶ مرداد ۲۵, پنجشنبه

نمایش ندادن ستون ها

سلام
این وبلاگ روی بلاگر میزبانی شده است و فقط من از دومین خودم استفاده میکنم...متاسفانه مرورگرها بعضی قسمت های سایت را به علت اینکه از بلاگر لینک داده شده فیلتر می کنند!
از دوستان کسی راه حلی برای این مشکل دارد؟
ممنون

۱۳۸۶ مرداد ۱۲, جمعه

نصب و تنظیم VPN - PPTP client در لینوکس

در این آموزش با نحوه تنظیم لینوکس بعنوان یک PPTP client برای اتصال به VPN - PPTP سرور آشنا خواهیم شد.

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

در گذشته برای استفاده از Encryption می بایست وصله مربوط را به هسته اضافه می کردیم در حالیکه بعد از هسته 2.6.15 دیگر نیازی به افزودن وصله به هسته نیست.ورژن جدید اکثر توزیع ها این ویژگی را بهمراه دارد.

برای بررسی ورژن هسته از دستور uname -a استفاده کنید.

Reza:~# uname -a
Linux debian 2.6.18-4-k7 #1 SMP Mon Mar 26 17:57:15 UTC 2007 i686 GNU/Linux

با آنکه PPTP از لحاظ امنیت نسبت به رقبای دیگر خود نظیر OpenVPN در جایگاه پایین تری قرار دارد ولی نصب آسان و دردسترس بودن در اکثر سیستم عامل ها سبب برتری PPTP در نهایت می شود.

شیوه نصب و تنظیم PPTP client که در این آموزش گفته می شود در اکثر لینوکس ها مشابه می باشد.من این تنظیمات را در دبین , آبانتو و فدورا مورد آزمایش قرار داده ام.لازم به تذکر است که همه این ها از هسته بعد از 2.6.15 استفاده می کردند.

با گوگلی که انجام دادم متوجه شدم که این شیوه در این سیستم عامل ها جوابگوست :

  1. CentOS , RHEL , Fedora همگی با هسته بالاتر از 2.6.15
  2. Debian و Ubuntu با هسته بالاتر از 2.6.15
  3. FreeBSD

همچنین این PPTP client با این سرورها می تواند ارتباط برقرار کند :

  1. Microsoft Windows VPN Server
  2. Linux PPTP Server
  3. Cisco PIX


نصب PPTP client

اول از همه آخرین نسخه PPTP client که در حال حاظر 1.7.1 می باشد را دانلود می کنیم :

Reza:/tmp#wget http://quozl.netrek.org/pptp/pptp-1.7.1.tar.gz

سپس

tar xvfz pptp-1.7.1.tar.gz
cd pptp-1.7.1
make
make install

PPTP client نصب شده و آماده تنظیم می باشد.

برای بهره برداری از PPTP client فایل های زیر را مورد استفاده قرار می دهیم :

  1. etc/ppp/chap-secrets/ که نام کاربری و پسورد کانکشن را در خود ذخیره می کند
  2. etc/ppp/peers/tunnel-name/ این فایل را باید بسازیم و تنظیمات مربوط به تانل از قبیل آدرس سرور VPN را در آن قرار می دهیم.این فایل باید در دایرکتوری peers واقع شده باشد.
  3. etc/ppp/options.pptp/ که سعی کنید تنها در صورت نیاز این فایل را ویرایش کنید , چون باعث بروز مشکلات زیادی در صورت عدم آگاهی از تاثیر تغییرات انجام شده خواهد شد.
تنظیمات فایل options.pptp بر تمام ارتباطات اعمال می شود و حداقل باید شامل این تنظیمات باشد :
lock noauth nobsdcomp nodeflate
نکته :
برای استفاده از Encryption می باست ماژول مربوط را لود کنید :
modprobe ppp_mppe

با یک مثال ادامه می دهیم :

فرض کنید می خواهیم به یک VPN سرور با مشخصات زیر ارتباط برقرار کنیم

آدرس سرور : vpn.persianadmins.com

نام کاربری : reza

پسورد : behroozi

نام تانل ارتباطی : persianadmins

خوب با این مشخصات بدین ترتیب عمل می کنیم :

nano /etc/ppp/chap-secrets
reza * behroozi * #Persianadmins

فایل ازتباطی با نام persianadmins را می سازیم و تنظیم می کنیم :

nano /etc/ppp/peers/persianadmins

pty "pptp vpn.persianadmins.com --nolaunchpppd"
name reza
remotename *
require-mppe-128
file /etc/ppp/options.pptp
ipparam persianadmins

تنظیمات به پایان رسید و حال میتوانیم با سرور ارتباط برقرار کنیم :

pppd call persianadmins

و دستور دیگر برای لینوکس های بر پایه دبین

pon persianadmins

اگر همه چیز به درستی انجام شده باشد ارتباط برقرار می شود و شما می توانید با مشاهده ifconfig ببینید که یک اینترفیس با نام pppX اضافه شده است.

در صورت بروز خطا می توانید با مشاهده خطاها در فایل var/log/messages/ در ردهت و var/log/syslog/ در دبین به حل مشکل بپردازید.

برای قطع ارتباط می توانید ابنگونه عمل کنید :

1-killall pppd که همه ی ارتباطات ppp را قطع خواهد کرد

2- kill pppd-PID برای قطع کردن یک ارتباط خاص با داشتن PID

3- poff tunnel-name برای لینوکس های بر پایه دبین

در صورت بروز مشکل می توانید از اینجا مشکلات فراگیر را مشاهده کنید.