pfsense توزیعی از نرم افزار firewall/router در شبکه میباشد که opensource بوده و برپایه سیستم عامل FreeBSD میباشد. نرم افزار pfsense به منظور ایجاد فایروال/روتر در یک شبکه میباشد که ابزار زیادی را ارائه میدهد که اکثر آنها در نسخه های فایروال های پولی دیده میشوند. pfsens همچنین شامل تعداد زیادی پکیج های نرم افزاری third party رایگان میباشد که به منظور کاربرد پذیری مظاعف تعبیه شده است.
از انجایی که ما فایروال های زیادی را در سطوح صنعتی متفاوت مانند cisco ASA , Juniper , Check Point , Cisco PIX , Sonicwall , Netgear , Watchguard , .... را مورد استفاده قرار میدهیم میتوانیم pfsense را بدون هزینه و با interface web بسیار غنی برای کانفیگ کردن تمامی اجزای شبکه خود استفاده کنیم. pfsense در حقیقت traffic shapper , virtual ip , load balancer و موارد بیشمار دیگری را ساپورت میکند و ابزار بیشمار دیگری به صورت پیش فرض در آن موجود است.
این مقاله شما را با روش نصب و کانفیگ pfsense 2.1.5 در یک شبکه Home/Office از پایه آموزش میدهد و یکسری دستورالعمل های اساسی که برحسب تجربه به دست آمده است را به شما ارایه میدهد.
تجهیزات سخت افزاری مورد نیاز برای راه اندازی pfsense :
تنظیمات سیستم من :
نصب و کانفیگ pfsense :
1 - ابتدا از لینک دانلود pfsense بازدید نمایید و معماری و پلتفرم کامپیوتر خود را انتخاب نمایید. اینجا من is68 32-bit را با توجه به سیستم خودم انتخاب نمودم و پلتفرم رو به عنوان “LiveCD with installer“ انتخاب کردم اما برای شما ممکن است متفاوت باشد لطفا از دانلود فایل مناسب با توجه به معماری سیستم عامل خود مطمین شوید.
2 - بعد از انتخاب معماری شما یک لیستی از mirror ها برای دانلود دریافت خواهید کرد. مطمین شوید که نزدیک ترین لینک mirror را برای دانلود انتخاب میکنید.
3 - بعد از اینکه دانلود کامل شد image دانلود شده باید روی یک CD/DVD به عنوان یک ISO image رایت شود. اگر شما درایور CD/DVD ندارید میتوانید از ابزار unetbootin برای ایجاد یک Live Bootable Usb Media استفاده کنید یا اگر به هیچ کدام از این ها دسترسی ندارید فقط به پیج دانلود pfsense رفته انجا شما میتوانید یک فایل image بوتیبل برای usb دانلود کنید فقط در لینک مربوطه به قسمت زیر مراجعه کنید :
“Live CD with installer (on USB Memstick)“
فراموش نکنید قبل از دانلود usb consol type را انتخاب کنید.
4 - اکنون مراحل نصب رو شروع میکنیم CD/DVD یا USB شامل pfsense را وصل کرده و تنظیمات BIOS تون رو برای boot کردن CD/DVD یا USB انجام دهید و بعد از زدن F10 یا F12 نصب pfsense آغاز خواهد شد.
5 - همانطور که pfsense بوت میشود یک prompt با چندین گزینه و یک timer نمایان خواهد شد. در این prompt با فشار دادن کلید 1 به صورت پیش فرض pfsense نصب خواهد شد. اگر شما هیچ option را انتخاب نکنید خودش شروع به بوت کردن گزینه 1 خواهد کرد.
6 - سپس، "i" را برای install جدید pfsense فشار دهید، در صورتی که نیاز به start یا recovery دارید از "R" استفاده کنید، برای ادامه دادن از طریق Live CD دکمه "C" را قبل از اینکه 20 ثانیه تمام شود انتخاب کنید.
7 - در صفحه بعد، "Counfigure Console" را از شما میخواهد، فقط "Accept these settings" را بری ادامه نصب فشار دهید :
8 - اگر شما تازه با pfsense آشنا شدید، آپشن "Quick/Easy Install" برای آسان کردن کار انتخاب کنید یا گزینه "Custom Install" برای انجام تنظیمات پیشرفته در طول پروسه نصب انتخاب کنید. (برای کاربران advance این گزینه توصیه میشود)
9 - سپس، disk که شما میخواهید pfsense را روی ان نصب کنید انتخاب کنید :
10 - سپس، از شما میخواهد دیسکی که میخواهد format شود را انتخاب کنید، اگر دیسک جدید دارید شما باید آنرا format کنید یا اگر اطلاعاتی داخل دیسک هست شما باید قبل از format دیسک از اون backup بگیرید :
11 - سایز cylinder و head ها را انتخاب کنید، اینجا من دارم از گزینه تنظیمات پیش فرض "Use this Geometry" برای ادامه نصب استفاه میکنم :
12 - در مرحله بعد، یک آلارمی را در مورد format کردن دیسک نمایش میدهد، اگر شما از دیسک تون مطمئن هستید که اطلاعاتی ندارد برای ادامه نصب روی گزینه ای که انتخاب شده کلیک کنید :
13 - اکنون دیسک مون رو باید پارتیشن بندی کنیم :
14 - سپس، پارتیشنی که میخواهید روی دیسک داشته باشید را انتخاب کنید و سایز دیسک تون را وارد کنید سپس accept کنید و پارتیشن را با سایز مشخص ایجاد نمایید و یا شاید بخواهید با گزینه های پیش فرض ادامه دهید :
15 - به محض اینکه پارتیشن با موفقیت ایجاد شد زمان آن است که bootblock را به منظور نصب bootloader برای pfsens نصب نمایید :
16 - یک پارتیشن را برای نصب pfsens انتخاب نمایید که البته با نام slice در BSD نیز نامیده میشود :
نکته : یک پیغام هشدار ممکن است نمایش داده شود که به شما میگوید که در طول نصب pfsense پارتیشن overwrite خواهد شد. برای ادامه روی ok کلیک نمایید.
17 - سپس subpartition ها را تعریف نمایید تا بتوانید آنها را ایجاد کنید. (که با عنوان پارتیشن در BSD شناخته میشود)
18 - به محض اینکه زیر پارتیشن ها ساخته میشوند، شما ادامه پروسه نصب را مشاهده خواهید کرد :
19 - در نهایت برای نصب kernel شما میتوانید گزینه هایی با عنوان non-vga یا symetmetric multiprocessing kernel را انتخاب کنید. در اینجا من non-vga and keyboard less را انتخاب میکنم :
20 - بعد از اینکه کرنل نصب شد ماشین را Reboot کنید همچنین تنظیمات شبکه و دیگر موارد را برای رفتن به مرحله بعدی انجام دهید :
21 - بعد از reboot کردن شما صفحه زیر را به همراه interface های موجود برای تنظیمات شبکه مشاهده خواهید کرد :
آپشن اول با عنوان VLAN's ارائه شده، عموما VLAN's مورد نیاز نیستند آنها برای شبکه های پیشرفته مورد استفاه قرار میگیرند شما در اینجا به سادگی فقط از No استفاده کنید.
دو اینترفیس pcn0 و pcn1 وجود دارند که من میخواهم pcn0 را به WAN (اینترفیس خارجی مان) اختصاص دهم و pcn1 را به LAN که برای اینترفیس داخلی و به همراه فعال سازی فیچرهای firewall/NAT میباشد را اختصاص میدهم.
22 - من در اینجا به اینترفیس optional نیاز ندارم در نتیجه با فشردن Return Key (یا اینتر) ادامه میدهم، سپس برای تایید ادامه نصب، سوال خواهد کرد که با Yes/No منتظر جواب است من برای ادامه Y را تایپ میکنم و enter را کلیک میکنم.
23 - بعد از تنظیم اینترفیس ها، شما منوی pfsense را همانند زیر دریافت خواهید کرد :
IP آدرس WAN از DHCP دریافت میشود و اگر شما نیاز داشته باشید میتوانید به آن یک ip static اختصاص دهید.
IP آدرس LAN با ip پیش فرض 192.168.1.1 خواهد بود که اگر شما بخواهید آن را تغییر دهید گزینه 2 را انتخاب کنید و ip آدرس اینترفیس را تعریف کنید.
ابتدا من یک ip static و subnet mask به قالب Bit count و همچنین آدرس gateway برای WAN و LAN تعریف میکنم. DHCP را غیر فعال و با انتخاب Y ادامه میدهم.
24 - سپس برای اینترفیس LAN اگر برای شبکه ای Local مان نیاز به DHCP در pfsense داشته باشیم میتوانیم یک رنج آدرس از pfsens را به آن اختصاص دهیم. من 192.168.25.97 را به عنوان ip آدرس lan در pfsense خود انتخاب کردم :
برای ماشین های client باید یک ip آدرس از DHCP و در رنج 192.168.25.16 - 192.168.25.30 اختصاص دهم.
25 - بعد از اینکه تمامی تنظیمات بالا تکمیل شد برنامه به شما یک link برای دسترسی به اینترفیس WEB در pfsense برای انجام تنظیمات بعدی خواهد داد.
26 - لینکی که در بالا گفتیم را با استفاده از پروتوکل http باز کنید، سپس Usrename و Password خود را وارد کنید :
27 - به محض اینکه لاگین شدید یک پنجره ی setup wizard نمایان می شود که شما را برای تنظیمات اولیه pfsense راهنمایی می کند.
28 - در پنجره ی بعد hostname و domain مربوط به pfsense و همچنین یک Primary DNS server و Secondary DNS را وارد کنید و روی NEXT کلیک کنید :
29 - در اینجا timezone را انتخاب کنید و روی next کلیک کنید :
تنظیمات WAN
30 - در این پنجره، اینترفیس WAN را کانفیگ می کنیم، اگر شما یک کانکشن PPOE دارید یا نیاز دارید که از این ماشین pfsense بعنوان یک Router استفاده کنید، شما باید از منوی drop گزینه ی PPOE را انتخاب کنید و یا به آسانی static را انتخاب کنید و IP آدرس و گیت وی static تعریف کنید و برای ادامه روی next کلیک کنید :
تنظیمات LAN
31 - ما قبلا در مد ترمینال (مرحله 24) شبکه LAN را کانفیگ کردیم فقط با انتخاب NEXT ادامه میدهیم :
32 - سپس پسورد admin که برای دسترسی به پنل کاریری WEB و همچنین SSH است را تغییر می دهیم :
33 - بعد از تعریف پسورد admin، برای اعمال تغییرات روی reload کلیک می کنیم :
34 - با کلیک روی لینک Click here to continue on to pfSense webConfiguration همانند تصویر زیر به Dashboard (کنترل پنل) هدایت می شوید :
همچنین توصیه میشود مقالات زیر را مطالعه کنید :
دستورات مفید Firewalld برای تنظیم و مدیریت فایروال در لینوکس
ترفندها و دستورات iptables
pfsense می تواند بعنوان یک روتر یا فایروال با قابلیت های بسیار زیاد پیشرفته ای همچون traffic shapper, Load Balancer و موارد بیشمار دیگر مورد استفاده قرار گیرد. می توان آنرا در اسکیل های کوچک تا محیط های خیلی بزرگ استفاده کرد. امیدوارم این پست به شما در ایجاد روتر و فایروال برای محیط کاریتان کمک کرده باشد. تجربیات خود را با ما به اشتراک بگذارید.
pfSense Documentation
از انجایی که ما فایروال های زیادی را در سطوح صنعتی متفاوت مانند cisco ASA , Juniper , Check Point , Cisco PIX , Sonicwall , Netgear , Watchguard , .... را مورد استفاده قرار میدهیم میتوانیم pfsense را بدون هزینه و با interface web بسیار غنی برای کانفیگ کردن تمامی اجزای شبکه خود استفاده کنیم. pfsense در حقیقت traffic shapper , virtual ip , load balancer و موارد بیشمار دیگری را ساپورت میکند و ابزار بیشمار دیگری به صورت پیش فرض در آن موجود است.
این مقاله شما را با روش نصب و کانفیگ pfsense 2.1.5 در یک شبکه Home/Office از پایه آموزش میدهد و یکسری دستورالعمل های اساسی که برحسب تجربه به دست آمده است را به شما ارایه میدهد.
تجهیزات سخت افزاری مورد نیاز برای راه اندازی pfsense :
کد PHP:
Pentium II Processor, 256MB RAM, 1GB of HDD Space, CD-ROM.
2 Ethernet Card’s, Pfsense ISO file.
تنظیمات سیستم من :
کد PHP:
Hostname : pfSense.tecmintlocal.com
WAN IP Address : 192.168.25.90/24 gw 192.168.25.1
LAN IP Address : 192.168.25.97/Default will be 192.168.25.1
HDD Size : 8 GB
pSense Version : 2.3.2
نصب و کانفیگ pfsense :
1 - ابتدا از لینک دانلود pfsense بازدید نمایید و معماری و پلتفرم کامپیوتر خود را انتخاب نمایید. اینجا من is68 32-bit را با توجه به سیستم خودم انتخاب نمودم و پلتفرم رو به عنوان “LiveCD with installer“ انتخاب کردم اما برای شما ممکن است متفاوت باشد لطفا از دانلود فایل مناسب با توجه به معماری سیستم عامل خود مطمین شوید.
2 - بعد از انتخاب معماری شما یک لیستی از mirror ها برای دانلود دریافت خواهید کرد. مطمین شوید که نزدیک ترین لینک mirror را برای دانلود انتخاب میکنید.
3 - بعد از اینکه دانلود کامل شد image دانلود شده باید روی یک CD/DVD به عنوان یک ISO image رایت شود. اگر شما درایور CD/DVD ندارید میتوانید از ابزار unetbootin برای ایجاد یک Live Bootable Usb Media استفاده کنید یا اگر به هیچ کدام از این ها دسترسی ندارید فقط به پیج دانلود pfsense رفته انجا شما میتوانید یک فایل image بوتیبل برای usb دانلود کنید فقط در لینک مربوطه به قسمت زیر مراجعه کنید :
“Live CD with installer (on USB Memstick)“
فراموش نکنید قبل از دانلود usb consol type را انتخاب کنید.
4 - اکنون مراحل نصب رو شروع میکنیم CD/DVD یا USB شامل pfsense را وصل کرده و تنظیمات BIOS تون رو برای boot کردن CD/DVD یا USB انجام دهید و بعد از زدن F10 یا F12 نصب pfsense آغاز خواهد شد.
5 - همانطور که pfsense بوت میشود یک prompt با چندین گزینه و یک timer نمایان خواهد شد. در این prompt با فشار دادن کلید 1 به صورت پیش فرض pfsense نصب خواهد شد. اگر شما هیچ option را انتخاب نکنید خودش شروع به بوت کردن گزینه 1 خواهد کرد.
6 - سپس، "i" را برای install جدید pfsense فشار دهید، در صورتی که نیاز به start یا recovery دارید از "R" استفاده کنید، برای ادامه دادن از طریق Live CD دکمه "C" را قبل از اینکه 20 ثانیه تمام شود انتخاب کنید.
7 - در صفحه بعد، "Counfigure Console" را از شما میخواهد، فقط "Accept these settings" را بری ادامه نصب فشار دهید :
8 - اگر شما تازه با pfsense آشنا شدید، آپشن "Quick/Easy Install" برای آسان کردن کار انتخاب کنید یا گزینه "Custom Install" برای انجام تنظیمات پیشرفته در طول پروسه نصب انتخاب کنید. (برای کاربران advance این گزینه توصیه میشود)
9 - سپس، disk که شما میخواهید pfsense را روی ان نصب کنید انتخاب کنید :
10 - سپس، از شما میخواهد دیسکی که میخواهد format شود را انتخاب کنید، اگر دیسک جدید دارید شما باید آنرا format کنید یا اگر اطلاعاتی داخل دیسک هست شما باید قبل از format دیسک از اون backup بگیرید :
11 - سایز cylinder و head ها را انتخاب کنید، اینجا من دارم از گزینه تنظیمات پیش فرض "Use this Geometry" برای ادامه نصب استفاه میکنم :
12 - در مرحله بعد، یک آلارمی را در مورد format کردن دیسک نمایش میدهد، اگر شما از دیسک تون مطمئن هستید که اطلاعاتی ندارد برای ادامه نصب روی گزینه ای که انتخاب شده کلیک کنید :
13 - اکنون دیسک مون رو باید پارتیشن بندی کنیم :
14 - سپس، پارتیشنی که میخواهید روی دیسک داشته باشید را انتخاب کنید و سایز دیسک تون را وارد کنید سپس accept کنید و پارتیشن را با سایز مشخص ایجاد نمایید و یا شاید بخواهید با گزینه های پیش فرض ادامه دهید :
15 - به محض اینکه پارتیشن با موفقیت ایجاد شد زمان آن است که bootblock را به منظور نصب bootloader برای pfsens نصب نمایید :
16 - یک پارتیشن را برای نصب pfsens انتخاب نمایید که البته با نام slice در BSD نیز نامیده میشود :
نکته : یک پیغام هشدار ممکن است نمایش داده شود که به شما میگوید که در طول نصب pfsense پارتیشن overwrite خواهد شد. برای ادامه روی ok کلیک نمایید.
17 - سپس subpartition ها را تعریف نمایید تا بتوانید آنها را ایجاد کنید. (که با عنوان پارتیشن در BSD شناخته میشود)
18 - به محض اینکه زیر پارتیشن ها ساخته میشوند، شما ادامه پروسه نصب را مشاهده خواهید کرد :
19 - در نهایت برای نصب kernel شما میتوانید گزینه هایی با عنوان non-vga یا symetmetric multiprocessing kernel را انتخاب کنید. در اینجا من non-vga and keyboard less را انتخاب میکنم :
20 - بعد از اینکه کرنل نصب شد ماشین را Reboot کنید همچنین تنظیمات شبکه و دیگر موارد را برای رفتن به مرحله بعدی انجام دهید :
21 - بعد از reboot کردن شما صفحه زیر را به همراه interface های موجود برای تنظیمات شبکه مشاهده خواهید کرد :
آپشن اول با عنوان VLAN's ارائه شده، عموما VLAN's مورد نیاز نیستند آنها برای شبکه های پیشرفته مورد استفاه قرار میگیرند شما در اینجا به سادگی فقط از No استفاده کنید.
دو اینترفیس pcn0 و pcn1 وجود دارند که من میخواهم pcn0 را به WAN (اینترفیس خارجی مان) اختصاص دهم و pcn1 را به LAN که برای اینترفیس داخلی و به همراه فعال سازی فیچرهای firewall/NAT میباشد را اختصاص میدهم.
22 - من در اینجا به اینترفیس optional نیاز ندارم در نتیجه با فشردن Return Key (یا اینتر) ادامه میدهم، سپس برای تایید ادامه نصب، سوال خواهد کرد که با Yes/No منتظر جواب است من برای ادامه Y را تایپ میکنم و enter را کلیک میکنم.
23 - بعد از تنظیم اینترفیس ها، شما منوی pfsense را همانند زیر دریافت خواهید کرد :
IP آدرس WAN از DHCP دریافت میشود و اگر شما نیاز داشته باشید میتوانید به آن یک ip static اختصاص دهید.
IP آدرس LAN با ip پیش فرض 192.168.1.1 خواهد بود که اگر شما بخواهید آن را تغییر دهید گزینه 2 را انتخاب کنید و ip آدرس اینترفیس را تعریف کنید.
ابتدا من یک ip static و subnet mask به قالب Bit count و همچنین آدرس gateway برای WAN و LAN تعریف میکنم. DHCP را غیر فعال و با انتخاب Y ادامه میدهم.
24 - سپس برای اینترفیس LAN اگر برای شبکه ای Local مان نیاز به DHCP در pfsense داشته باشیم میتوانیم یک رنج آدرس از pfsens را به آن اختصاص دهیم. من 192.168.25.97 را به عنوان ip آدرس lan در pfsense خود انتخاب کردم :
برای ماشین های client باید یک ip آدرس از DHCP و در رنج 192.168.25.16 - 192.168.25.30 اختصاص دهم.
25 - بعد از اینکه تمامی تنظیمات بالا تکمیل شد برنامه به شما یک link برای دسترسی به اینترفیس WEB در pfsense برای انجام تنظیمات بعدی خواهد داد.
26 - لینکی که در بالا گفتیم را با استفاده از پروتوکل http باز کنید، سپس Usrename و Password خود را وارد کنید :
کد PHP:
User : admin
Pass : pfsense
27 - به محض اینکه لاگین شدید یک پنجره ی setup wizard نمایان می شود که شما را برای تنظیمات اولیه pfsense راهنمایی می کند.
28 - در پنجره ی بعد hostname و domain مربوط به pfsense و همچنین یک Primary DNS server و Secondary DNS را وارد کنید و روی NEXT کلیک کنید :
29 - در اینجا timezone را انتخاب کنید و روی next کلیک کنید :
تنظیمات WAN
30 - در این پنجره، اینترفیس WAN را کانفیگ می کنیم، اگر شما یک کانکشن PPOE دارید یا نیاز دارید که از این ماشین pfsense بعنوان یک Router استفاده کنید، شما باید از منوی drop گزینه ی PPOE را انتخاب کنید و یا به آسانی static را انتخاب کنید و IP آدرس و گیت وی static تعریف کنید و برای ادامه روی next کلیک کنید :
تنظیمات LAN
31 - ما قبلا در مد ترمینال (مرحله 24) شبکه LAN را کانفیگ کردیم فقط با انتخاب NEXT ادامه میدهیم :
32 - سپس پسورد admin که برای دسترسی به پنل کاریری WEB و همچنین SSH است را تغییر می دهیم :
33 - بعد از تعریف پسورد admin، برای اعمال تغییرات روی reload کلیک می کنیم :
34 - با کلیک روی لینک Click here to continue on to pfSense webConfiguration همانند تصویر زیر به Dashboard (کنترل پنل) هدایت می شوید :
همچنین توصیه میشود مقالات زیر را مطالعه کنید :
دستورات مفید Firewalld برای تنظیم و مدیریت فایروال در لینوکس
ترفندها و دستورات iptables
pfsense می تواند بعنوان یک روتر یا فایروال با قابلیت های بسیار زیاد پیشرفته ای همچون traffic shapper, Load Balancer و موارد بیشمار دیگر مورد استفاده قرار گیرد. می توان آنرا در اسکیل های کوچک تا محیط های خیلی بزرگ استفاده کرد. امیدوارم این پست به شما در ایجاد روتر و فایروال برای محیط کاریتان کمک کرده باشد. تجربیات خود را با ما به اشتراک بگذارید.
pfSense Documentation