چگونه دسترسی به وب سایت ها را در Mikrotik مسدود یا بلاک کنیم؟ چگونه اجازه دسترسی به وبسایتهای خاصی را در میکروتیک بدهیم؟ زمانیکه شما قصد دارید بدون استفاده از webproxy دسترسی به سایتها رو مسدود کنید، این راه کار مناسب شماست. این کد بغیر از سایت ITPRO دسترسی به همه سایتهایی که کاربران برای یک بار تلاش برای ورود به آنها را کردند مسدود می کند. قبل از شروع باید روتر را بعنوان DNS سرور تمام درخواستهای DNS ی تنظیم کنید
/ip firewall nat add action=redirect chain=dstnat comment=DNS dst-port=53 protocol=tcp to-ports=53 add action=redirect chain=dstnat dst-port=53 protocol=udp to-ports=53 /
حال یک Firewall Rule برای مسدود کردن دسترسی ها ایجاد می کنیم
/ip firewall filter add chain=forward dst-address-list=restricted action=drop /
در این جا یک script ایجاد و Code زیر را درون آن کپی می کنیم.
:foreach i in=[/ip dns cache find] do={ :local bNew "true"; :local cacheName [/ip dns cache all get $i name] ; # :put $cacheName; :if (([:find $cacheName "itpro"] != 0) || ([:find $cacheName "itpro"] != 0) || ([:find $cacheName "itpro"] != 0)) do={ :local tmpAddress [/ip dns cache get $i address] ; # :put $tmpAddress; # if address list is empty do not check :if ( [/ip firewall address-list find list="restricted" ] = "") do={ :log info ("added entry: $[/ip dns cache get $i name] IP $tmpAddress"); /ip firewall address-list add address=$tmpAddress list=restricted comment=$cacheName; } else={ :foreach j in=[/ip firewall address-list find list="restricted"] do={ :if ( [/ip firewall address-list get $j address] = $tmpAddress ) do={ :set bNew "false"; } } :if ( $bNew = "true" ) do={ :log info ("added entry: $[/ip dns cache get $i name] IP $tmpAddress"); /ip firewall address-list add address=$tmpAddress list=restricted comment=$cacheName; } } } }
نکته:با تکثیر عبارت زیر در کد بالا می توانیم سایتهایی که می خواهیم برای کاربران باز باشد را اضافه کنیم
|| ([:find $cacheName "itpro"] != 0)
در این جا یک script ایجاد و Code زیر را درون آن کپی می کنیم.متوجه شدم زمانیکه Cache میکروتیک پر میشه CPU قادر به هندل کردن دستورات بالا نیست این قسمت برای پاک کردن کش میکروتیک هست
delay delay-time=15000ms ip dns cache flush
حال باید کاری کنیم که Code های بالا هر 30 ثانیه یک بار اجرا شود
/ system scheduler add name="schedule1" on-event="script1" start-date=Nov/01/2016 start-time=00:01:00 interval=30s comment="" disabled=no / system scheduler add name="schedule2" on-event="script2" start-date=Nov/01/2016 start-time=00:01:00 interval=30s comment="" disabled=no /
توجه:کش مرورگرهای کاربران باید پاک شود
برای یادگیری میکروتیک بصورت حرفه ای می توانید به دوره های آموزش میکروتیک مجموعه توسینسو یا بصورت ویژه به دوره آموزش MTCNA میکروتیک در این لینک مراجعه کند.
سلام علیکم
زمان پاسخ گویی روز های شنبه الی چهارشنبه ساعت 9 الی 18
فقط به موضوعات مربوط به محصولات آموزشی و فروش پاسخ داده می شود