برای 32 بیت:
کد:
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.i386.rpm rpm -i rpmforge-release-0.5.1-1.el5.rf.i386.rpm
برای 64 بیت :
کد:
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm rpm -i rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm
خب حالا کد های زیر برای نصب و اضافه کردن openvpn به boot وارد می کنیم :
کد:
yum check-update yum install -y openvpn chkconfig openvpn on
در حاضر سرویس openvpn بر روی سرور نصب شده ،مهم ترین قسمت ، تنظیمات و ساختن فایل certificate برای سرور می باشد.برای این کار از فایل های آماده خود openvpn استفاده می کنیم :
کد:
cd /etc/openvpn/ cp -R /usr/share/doc/openvpn-2.2.2/easy-rsa/ /etc/openvpn/ cd /etc/openvpn/easy-rsa/2.0/ chmod 775 * source ./vars ./vars ./clean-all
ساخت فایل های Certificate
با دستور زیر شما فایل ca.crtبرای سرور خودتون می سازید، دقت کنید پس از اجرای این دستور سوالاتی از شما می شود که مربوط به اطلاعات certificate هستند و اهمیت خاصی ندارند ، شما می توانید با زدن enter مقادیر پیشفرض را در نظر بگیرید یا مانند نمونه ای که در [] هست مقادیر دلخواه وارد کنید .
با دستور زیر شما فایل client1.crt برای سرور خود می سازید اما دقت کنید اگر مقادی پیشفرض تغییر دادید دقیقاً همان مقادیر باید در ادامه دستور زیر وارد کنید
کد:
./build-key-server server
بعد از آن که به عبارت زیر رسیدید
کد:
Please enter the following 'extra' attributes to be sent with your certificate request A challenge password [:
هیچی وارد نکنید و فقط enter کنید! بعدش از شما دو سوال می شود که هردو را y می زنید !
فایل پیوست 15551
با دستور زیر هم فایل مورد نیاز سرور را می سازید :
با دستور زیر شما فایل client1.key را برای سرور خود می سازید ، دقیقاً مانند دستور بالا انجام شود .
کد:
./build-key client1 y y
حالا باید مهمترین قسمت تنظیمات انجام بدیم ، یعنی فایل server.conf بسازیم برای این کار از دستور زیر استفاده می کنیم .
کد:
nano /etc/openvpn/server.conf
سپس عبارت زیر را در این فایل قرار می دهیم :
دقت کنید که در متن زیر جلوی port به جای 1194 می توانید هر پورتی که در اینترنت باز هست استفاده کنید مانند 443 ولی دقت کنید که بر روی سرور سرویس دیگری از آن پورت استفاده نکندمانند (squid) چرا که تا اونجایی که من می دونم روی هر پورت تنها یک سرویس قابل اجرا است.
همانطوری که می بینید جلوی عبارت سرور آی پی20.19.0.0 می باشد این یک آپی داخلی در سرور هست که به هر کاربر در همین رنج یک آپی داخلی تعلق می گیرد و باید به صورت xx.xx.0.0 وارد شود ، به جای xx هر عددی می تواند وارد کنید ، آی پی که می زنید را را به یاد داشته باشید!
کد:
port 1194 proto tcp dev tun tun-mtu 1500 tun-mtu-extra 32 mssfix 1450 ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt cert /etc/openvpn/easy-rsa/2.0/keys/server.crt key /etc/openvpn/easy-rsa/2.0/keys/server.key dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem server 20.19.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "redirect-gateway def1" push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4" keepalive 5 30 comp-lzo persist-key persist-tun status server-tcp.log verb 3
سپس برای ذخیره فایل :
حالا باید ip_forward یر روی سرور فعال کنیم دستور زیر را بزنید :
کد:
nano /etc/sysctl.conf
دنبال عبارت net.ipv4.ip_forward= 0 بگردید و مقدار 0 را به 1 تغییر دهیدمانند عبارت زیر :
net.ipv4.ip_forward= 1
(توضیح اضافی : اگر اول این عبارت علامت # بود حتماً پاکش کنید )
فایل پیوست 15550
برای اعمال تغییرات در ip_forward کد زیر را وارد کنید :
در هنگام ذخیره فایل server.conf گفتم آی پی که در جلوی سرور زدید را به یاد داشته باشید.در حقیقت ما با دستور زیر به این رنج آی پی اینترنت می دهیم تا هنگام وصل شدن به سرور نت داشته باشند اگر رنج آی پی در فایل server.conf تغییر دادید به جای 20.19.0.0/24 آی پی خودتونو اضافه کنیدبه این صورت xx.xx.0.0/24 اضافه کنید.
برای سرور های اختصاصی و سرور هایی که از طریق Xen,kvm وvmware مجازی سازی شدند از دستور زیر استفاده کنید :
کد:
iptables -t nat -A POSTROUTING -s 20.19.0.0/24 -o eth0 -j MASQUERADE
برای سرور هایی که از طریق OpenVZ مجازی سازی شدند( به جای ServerIp هم آی پی خود سرور بزنید) از دستور زیر :
کد:
iptables -t nat -A POSTROUTING -o venet0 -j SNAT --to-source ServerIp iptables -t nat -A POSTROUTING -s 20.19.0.0/24 -j SNAT --to-source ServerIp
برای ذخیره این رول در firewall دستور زیر را می زنیم :
کد:
service iptables save
حالا لحظه نهایی فرا رسیده باید سرویس openvpn را با دستور زیر استارت کنید.
کد:
service openvpn restart
اگر تمام مراحل را درست انجام داده باشید سرویس openvpn استارت می شود مانند شکل زیر :
فایل پیوست 15549
بخش دوم نصب پلاگین رادیوس و اتصال Openvpn به اکانتینگ IBSng
پس از اینکه سرویس بدون مشکل راه اندازی شد حالا وقت اتصال آن به اکانتینگ IBSng هست که با دستورات زیر این کار را انجام می دهیم .
ابتدا دستورات زیر را برای نصب و دانلود پیشنیاز ها به ترتیب می زنیم ، مدت زمان آن بستگی به سرعت اینترنت و منابع سرور دارد و کمی زمانی می برد :
کد:
yum groupinstall "Development Tools" -y yum install crypt* -y yum install libgcrypt* -y
حالا باید برنامه اتصال openvpn به اکانینگ IBsng نصب کنیم و فایل radiusplugin.so را به پوشه openvpn منتقل کنیم :
کد:
wget http://www.nongnu.org/radiusplugin/radiusplugin_v2.1a_beta1.tar.gz tar xvfz radiusplugin_v2.1a_beta1.tar.gz cd radiusplugin_v2.1a_beta1 make cp radiusplugin.so /etc/openvpn
اگر دستورات را درست انجام داده باشید radiusplugin نصب و مانند تصویر زیر می شود :
فایل پیوست 15552
حالا باید فایل radiusplugin.cnf را تنظیم کنیم :
کد:
nano /etc/openvpn/radiusplugin.cnf
برای اتصال فرض بر این است که در IBsng در قسمت ras آی پی لوکال (127.0.0.1) با type : pppd قبلاً اضافه شده است ! در غیر این صورت به جای آی پی 127.0.0.1 آی پی سرور Ibsng خود را وارد کنید ، به جای عبارت RadiusSecret مقداری که در IBS ست شده است را اضافه کنید .
کد:
NAS-Identifier=OpenVpnService-Type=5 Framed-Protocol=1 NAS-Port-Type=5 NAS-IP-Address=127.0.0.1 OpenVPNConfig=/etc/openvpn/server.conf server { acctport=1813 authport=1812 name=127.0.0.1 retry=1 wait=1 sharedsecret=RadiusSecret }
برای ذخیره این فایل هم
فایل زیر هم برای ذخیره log ایجاد می کنیم :
کد:
mkdir /var/log/openvpn nano /etc/openvpn/server.conf
حالا باید openvpn را به رادیوس وصل کنیم برای این کار چهار خط زیر را به آخرین خط فایل server.conf اضافه می کنیم :
کد:
management localhost 7506 plugin /etc/openvpn/radiusplugin.so /etc/openvpn/radiusplugin.cnf log /var/log/openvpn/pa-ibs.log status /var/log/openvpn/status-pa-ibs.log 1
در واقع فایل server.conf به صورت زیر می شود :
کد:
port 1194 proto tcp dev tun tun-mtu 1500 tun-mtu-extra 32 mssfix 1450 ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt cert /etc/openvpn/easy-rsa/2.0/keys/server.crt key /etc/openvpn/easy-rsa/2.0/keys/server.key dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem server 20.19.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "redirect-gateway def1" push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4" keepalive 5 30 comp-lzo persist-key persist-tun status server-tcp.log verb 3 management localhost 7506 plugin /etc/openvpn/radiusplugin.so /etc/openvpn/radiusplugin.cnf log /var/log/openvpn/pa-ibs.log
کد:
status /var/log/openvpn/status-pa-ibs.log 1
خب تبریک می گم openvpn به اکانتینگ IBS وصل شد ! 
بخش سوم تنظیمات سمت کلاینت
تنظیمات سرور تمام شد حالا باید بریم سراغ تنظیم فایل client قبل از آن با filezilla یا بهتر ازآن Winscp باید به آدرس زیر رفته
کد:
etc/openvpn/easy-rsa/2.0/keys
و سه فایل ca.crt , client1.crt , client1.key دانلود کنید. خب حالا مشخص هست که قبلش باید نرم افزار openvpn بر روی سیستم خودتون بریزید.که از لینک زیر می تونید اونو متناسب با سیستم خودتون نصب کنید :
حالا بر روی ویندوز خودتون Notepad بازکنید و متن زیر را در آن کپی کنید به جای server آی پی سرور openvpn و به جای port هم پورتی که بر روی سرور ست کردید را وارد کنید:
کد:
client dev tun proto tcp remote server port resolv-retry infinite nobind tun-mtu 1500 tun-mtu-extra 32 mssfix 1450 persist-key persist-tun ca ca.crt cert client1.crt key client1.key auth-user-pass comp-lzo verb 3
سپس با فرمت .opvn به هر اسمی که خواستید ذخیره کنید، در اینجا ما با نام server1.opvn ذخیره کردیم،
حالا سه فایل ca.crt , client1.crt , client1.key همراه با فایل server1.opvn که ساختیم در مسیر زیر کپی کنید:
کد:
C:\Program Files\OpenVPN\config
یکی کردن فایل های certificate با فایل config سمت کلاینت
1-هر سه فایل ca.crt و client1.crt و client1.key را به ترتیب با notpad باز کنید تمام متن را با زدن Ctrl+A انتخاب و سپس کپی کنید .
2- فایل server1.ovpn را باز کنید زیر آخرین خط با فرمت زیر محتویات متن این سه فایل را paste کرده و ذخیره کنید .
کد:
<ca> (متن فایل ca.crt را در این قسمت قرار دهید ) </ca> <cert> (متن فایل client1.crt در این قسمت قرار دهید ) </cert> <key> (متن فایل client1.key در این قسمت قرار دهید )
</key>
حالا برنامه open vpn باز کرده و با وارد کردن یوزر و پسورد به راحتی به سرو وصل شوید 
پایان
بوک مارک ها