星期六, 3月 29, 2014

如何設定Mikrotik 的RouterOS的Hotspot和User Manager溝通

參考原廠wiki資料--How to make HotSpot and User Manager on the same router
如果HotSpot和User Manager均位於同一台機器上則
HotSpot的設定為

 / radius add service=hotspot address=127.0.0.1 secret=123456

我們增加了一台Radius Client資訊向本機的User Manager請求查詢
127.0.0.1 代表本機,secret是一組密碼,用以讓radius server和radius client可以互相溝通交換訊息。

 / ip hotspot profile set hsprof1 use-radius=yes

User Manager的設定為
建立一位Subscriber(Customer的最高權限者)
/ tool user-manager customer add login="MikroTik" password="test" permissions=owner
增加一個router設定
/ tool user-manager router add subscriber=MikroTik ip-address=127.0.0.1 shared-secret=123456
ip-address因為是在本機上提供服務,所以填127.0.0.1 ,shared-secret要與hotspot所設定的secret一致


參考資料:
http://wiki.mikrotik.com/wiki/User_Manager/Hotspot_Example



Handlink WG-500P M 如何與Mikrotik的RouterOS中的User Mananger模組溝通,並同步化訪客臨時帳密

Handlink WG-500P可以結合RouterOS進行HotSpot的認證控管,但是要進行設定前,必須要完成幾個動作:

  1. RouterOS需要安裝UserManager模組
  2. Handlink WG-500P必須更新軔體變更成WG-500P M


 User Manager模組的安裝在之前已有安裝說明,這邊我們就說明如何更新WG-500P韌體。

-連線進WG-500P 目前的型號是WG-500P

-進入設定畫面後,到System tools-firmware,找到Local PC File Path。確認韌體的版本是WG-500PM_1.00.00 ,而不是WG-500P_v1.00.00,要有M的才是。
Local PC File Path指向韌體檔案所在,按APPLY以進行更新,按下APPLY時,畫面沒有韌體上傳進度,所以要等一下,直到下一個畫面出現


-這個書面出現後,即開始進行韌體更新動作,這個畫面大約要等個10分鐘,直到這個畫面結束,即完成韌體更新。但是更新完後必須要將之前在WG-500P的設定檔回復成出廠預設值,請拿一支迴紋針,按壓WG-500P屁屁的重置孔,直到機器的三個列印鈕燈號熄滅,機器會重新開機,這時就完成完整更新的動作。


韌體更新完成後,就變成了WG-500PM,將WG-500PM的ethernet和電腦相接,WG-500P預設的IP為169.254.1.250,帳密預設為admin,無線網路的SSID預設為Handlink

-進入WG-500PM後,出現系統的資訊頁面,目前可以看到Mikrotil RouterOS Connection是紅色的Fail


-我們開始設定這台WG-500PM的IP,看是要DHCP IP,還是Static IP,依個別環境需要設定。其餘的項目如802.11 Mode、ESSID等亦同。

除了Ethernet外。WG-500PM也可以當成一台無線終端設定,利用無線方式和現有網路環境連接,在INTERFACE SETTING下方有個Wireless to MikroTik RouterOS,按壓【AP SCAN】,會馬上掃出目前環境提供的無線網路訊息。



- AP SCAN掃出後,可選擇要連線的SSID,即可利用無線方式與現有網路相連接。

接著我們打開Winbox-IP-HotSpot到IP Bindings,其中Address即為WG-500PM的IP,Type要選by passed這樣WG-500PM就可以在不進行認證的狀況下和RouterOS溝通。

-我們接著回到WG-500PM 的【Account Generator】,這裡我們要設定RouterOS的IP,API Port預設為8728,還有RouterOS的管理帳密
-RouterOS的api預設的port number可以到RouterOS -IP-Services查詢,目前的設定值為8728 port

-以上設定完後,連到WG-500PM-System,查詢Mikrotik RouterOS Connection是否顯示【OK】

-RouterOS與WG-500PM的溝通設定完成後,開啟http://RouterOS/userman,登入後到Profiles頁面準備設定Profiles,這邊我們定義1個Profiles 的名稱為5min,這邊我們要示範定義一個只能上5分鐘的user profile,目前這個name只是名稱,並非真的只能使用5分鐘。Name for users是對這個profile名稱述敘或簡易說明,其他的照預設的就可以了。

Limitations是定義上網的流量及時間的管控,如果要設定使用者的上網時間,則在Uptime這裡設定,1d代表1天,1h代表1小時,1m代表1分鐘,1s代表1秒(可參考http://wiki.mikrotik.com/wiki/User_Manager/Character_constants)。這裡我們設定5m,代表只能使用5分鐘的時間。Limitation details可是設定很多不同的限制方式,以配合profiles的應用。



回到Profiles,我們點選下方【Add new limitation】找到剛剛建立【5min】加入到我們的profile中。



-回到WG-500PM的Account Generator,我們可以定義機器的A、B、C三個按鈕對映到User Manager的哪個profile,這邊我三個都設不同profile,以因應不同的上網需求。其中的Button C,就是我們前面示範的【5min】Profile。Length是定義帳號密碼要多少字元,預設為4個字元,您也可以視需求改變。



-按下WG-500PM的按鈕,會列印出一組隨機的帳號、密碼,同時也會與RouterOS溝通後,一併在User Manager的Users項目中同步這組帳號密碼。但實際測試,並不會馬上同步,大約要等1分鐘左右。
我們使用Button C印出帳密表單,除了Username及Password是隨機給之外,Usage Time是根據Profile的Limination所設定的。


連回到WG-500PM的Users可以看到表單印出的使用者。


以Winbox連到RouterOS-IP-Hotspot的Active可以看到使用者mhg5已經認證,可核可使用網路,等到Uptime 5分鐘到,RouterOS會自動將mhg5刪除。

回到User manager的Users中,雖然可以看到mhg5使用者,但是滑鼠點了之後會出現User does not exist的字樣,代表使用者被註銷了。


使用者再利用mhg5的使用者認證時,會出現【user not found】,所以使用者就無法再登入使用。



註:
這次的測試有遇到幾個問題
1.使用chrome或firefox登入User manager時,常會出現【Your sessions has been reset due to inactivity】這個訊息。使用IE則會出現下下面【The following client application.....】的訊息。


查了網路,似乎常有人出現這樣的錯誤訊息,而一直無法登入User manager,原廠似乎也還沒有解決,我試了幾個方式,清除瀏覽器的cookie,有時有用。另外一個方式是用IE,但要設【相容性檢視】就沒問題了,供參考。

2.雖然在HotSpot未認證前,電腦就會取得一組IP,但是經由HotSpot認證後,又會再給同一個網段的不同IP,見下面紅色框框,原本未認證過之前IP是10.1.1.200,可是認證過後Routeros會給一個新的IP-10.1.1.175,這個是目前我遇到的疑問。我試過這同一台電腦接到不同Interface,DHCP網段也不同,當認證過後,一樣是給10.1.1.175這個IP,而導致雖然有認證過,但是卻無法連線的問題。



參考資料:




星期五, 3月 28, 2014

RouterOS的User Manager管理界面的名詞解釋

在使用User Manager的管理界面前,我們必須瞭解幾個重要的名詞:
Customers
Customer是User Manager服務的管理者,可以新增使用者、路由器…等。
Customer底下可以設多個子Customer,權限可以和父Customer相等,或較低。
Customers最高權者為Subscriber,像我們之前建立的admin就是一個Subscriber 。
Customers的權限有4種:由高到低分別為Owner,Full,Read write,Read only。
具有Owner權限的Customer就稱作Subscriber,像我們一開始建的admin就是Subscriber。
Customers的描述資料包含:
帳號、密碼、權限、Public ID…等
Customert 的四類權限中,每一類可以管理的項目不同,請參考:http://wiki.mikrotik.com/wiki/User_Manager/Permissions

User
User是服務的使用者,是由Customer提供。
每個User有使用時間、流量及速度的限制。
User的資料描述包含了:
帳號、密碼、email位址、IP位址、上下傳速度…等

Router
Router所扮演的角色就像是User和User Manager之間的連繫者,例如:
Hotspot問:「請問user "nick"是否可以使用hostspotw?」
User Manager答:「可以呀!但是只能用2小時,而且ip是140.123.123.1」
如果有個未知的router詢問User Manager,則會被User Manager拒絕。

Sessions
session是User使用Hotspot服務期間,系統所紀錄的使用者帳號、IP、使用時間、上下傳流量…等。

Profiles
Profiles主要用來控制上網使用者的session time。




如何啟用RouterOS的User Manager功能

User Manager是RouterOS一項非常強大的功能,故名思義就是使用者的管理,參考RouterOS/User ManagerWIKI的說明,這個功能可以用來管理Hotspot、DHCP、PPOE、Wireless和RouterOS的使用者。
User Manager是RouterOS上一個獨立的功能,因此當你安裝完RouterOS或是直接使用如RB450G這類的機器時,它並沒有出現在Winbox或Web管理界面中,必須要再加上額外的安裝、設定才能使用這個UserManager。而它也是一種Radius Server的應用。
安裝步驟如下:
首先,你必須要到http://www.mikrotik.com/download下載符合你的平台及ROS版本的package,下載時選擇下載All packages


下載後解壓縮可以看到其他的模組,其中有一個user-manager-xxx-yyy.npk,就是User Manager模組 ,安裝時可用ftp連上RouterOS,將模組檔案上傳到RouterOS的Files中,然後重新啟動RouterOS,模組就安裝完成了。

重新啟動RouterOS後,可以到System->Packages確認是否有安裝
當完成User Manager的安裝後,事實上不管在Winbox或是Web管理界面上,都找不到User Manager模組,因為它藏在http://RouterOS_IP/userman 中,預設的管理帳號為admin,密碼為空白。為了安全,我們打開console界面下達以下指令修改User Manager的admin密碼。(注意:這裡的admin並非為RouterOS的admin,而是User Manager的admin,兩者名稱相同,但作用不同。
[admin@USER_MAN] /tool user-manager customer set admin password=新的密碼

這時打開http://RouterOS_IP/userman,應該會出現如下的畫面

登入後就會出現如下的畫面



Handlink WG-500P HotSpot無線路由器設定

依據WG-500P的快速設定步驟說明書,本機器預設的IP為10.59.1.1,建議用無線網路連上該機器的SSID,預設分配的網段是10.59.1.0,所以筆電連上後,瀏覽器直接打該IP就可以連上了,預設帳密為admin。


連進去後,馬上就進入了設定精靈,這邊選擇目前的網路環境,因本校內部是使用DHCP分配IP,所以就選【DHCP Client】,讓這台機器的Ethernet Port直接取得IP,當然如果要方便管理,就選【Static IP Setting】設固定IP亦可。

下一步,進入無線模式的設定,其中Country有ETSI(Federal Communications Commission)和FCC(European Telecommunications Standards Institutes )二個選項,(二者的差別可以參考http://www.extremenetworks.com/understanding-fccetsi-dfs-regulations-for-802-11ac-deployments/)基本上選哪一個都可以。
Channel可以視環境改變,如果AP所在位置有其他的AP,則要避免相同頻道,以避免干擾。
802.11 Mode建議不要選有+802.11b,因為如果所在位置真的有人使用802.11b連線,則所有人的無線網路都會降速到11Mb,這邊我是選802.11n+802.11g。

Authentication Service 部分,因為我們要求無線網路的使用者均要認證,因此就選第一個選項Yes,The users ......
Billing Profile有兩個主要的功能設定,一種是Time to Finish:使用者可以登入一次,一旦登入後,就開始計時,例如設定只能使用30分鐘,則登入後30分鐘後就無法使用。另一種是Accumulation也就是累計計時,例如設定可使用30分鐘,如果你使用10分鐘後登出,則還有20分鐘的時間可以使用此服務。



Billing Profile的下方有個Service and Price Plan,這是用於計費,因為我們不需要用到,所以將No Billing Mode打勾。
Accounting是用來設定當我們按下wg-500p的列印鈕(有A ,B ,C三個)以本圖為例,當按下A鈕時,就會印出只能用30分鐘的隨機帳密,按C鈕時,就會印出可以使用2小時的的隨機帳密。Printout則可設定要印一式1份或一式2份或3份。

Account Printout Customization是用來設定印出隨機帳密表單的用語,可參考本圖下方實際印出的表單。




我們實際連線看看,速度有到144Mbps,可見有支援802.11n。
連外網時,會跳出認證畫面,輸入帳密後,即可連線。


System Status畫面中會顯示登入的使用者訊息。



星期四, 3月 27, 2014

Handlink WG-500P無線熱感印票機-簡易開箱

 Handlink WG-500P無線熱感印票機是一款可提供無線熱點上網,當訪客需要無線上網,店家只要輕觸按鈕,熱感印票機便可立即印出網路帳號、密碼、費用與時間。(詳細介紹可以參考Handlink網站
收到這個產品的箱子時,比想像中的小很多,大約一個手掌大而已,紙盒沒什麼彩色印刷,大概定位在特定使用者使用的原因吧。
 
整個箱子內的東西:
wg-500p機器一台,變壓器1個,2支天線,1條網路線,1片光碟(裡面只有手冊電子檔),1份快速設定手冊,1張HOTSPOT貼紙,


印表機的背面

印表機的正面

印表機的屁屁,一個ethernet接孔,2個天線接頭,變壓器接頭,和一個micro usb。


依照快速設定的步驟設定完後,這台的第一個功能就是單純當無線路由器,也就是機器本身提供無線基地台的功能,按下列印鍵後,會自動印出一組隨機的臨時帳密,訪客只要透過這台連線,就必須要在認證的網頁上打上帳號、密碼,才可通行。當然暨然是臨時帳密,也就有時間的限制,管理者可以自行設定要開放上網的時間,30分,1小時…都可以,時間到了後,帳號就鎖住了!

星期五, 3月 07, 2014

RouterOS如何開啟web proxy服務及設定 transparent proxy

RouterOS如何開啟內建的proxy服務呢?
首先,如果是軟體式的最好能另外安裝第二個磁碟機,或是硬體式的如RB450G最好加裝microSD
一、這裡我們以CCR1016-12G為例,它有一個usb可以外接隨身碟或隨身硬碟,所以當我們安裝完後,到System->Stores可以看到usb1,但是一開始它只能偵測到,但無法辦識也無法得知容量,所以要選【Format Drive】,大概等個幾分鐘,如果Format成功,應該就會顯示容量及ready字樣。



二、安裝完第二個磁碟機後,到【Stores】按【+】增加一個新的磁碟空間給web-proxy用(原來預設是system,是和OS在同一個磁碟機或ROM),Name可以自訂;Type選web-proxy,即是給web proxy用的;Disk選系統偵測到的usb1(這邊要視不同的機器型號所偵測出來為準),將Active 打勾以便啟用。




三、安裝完第二個磁碟機後,就可以到【IP】->【Web Proxy】照著下圖將要勾選的勾一勾,【Enabled】,Port預設為8080,您也可以自訂;Cache Administrator可以訂上管理者的email,這樣如果使用者的proxy受到規則阻擋時,會在網頁上出現這個email,Max. Cache Size這邊我們這個新的磁碟機都是要給proxy用的,所以設unlimited,但是如果你是和系統同一個磁碟機(即Cache Drive出現system的字樣,而非usb1字樣),最好要限制Max. Cache Size的大小,不然系統的磁碟空間可能會被Cache塞滿,這個要注意。


四、我第一次設定的時候,Cache Drive一直是出現System字樣,而沒注意,以為設定成功,proxy就開始用,直到打開System->Resources,看Free HDD Space一直在減少,才發現設定失敗,這時請到System->Stores選我們設定的proxy-cache,再選一次activate,如果Cache Drive一直沒有轉換成usb1,那就只能重開機,再到System->Stores,再選一次activate,應該可以成功。






五、到IP->DNS 設定DNS Server,這樣routeros才能解析domain name


六、打開IE->網際網路選項->連線->LAN設定,Proxy伺服器打勾,位址填上routeros的IP,連接埠8080


七、上述設定完後,請連線一般的網站看看是否成功,再到IP->web proxy,打開Cache Contents和Access,看是否有cache資料和連線的資料


八、Web Proxy設定成功後,要如何避免Open Proxy呢?二種方法,一種是在IP->Firewall->Filter Rules中拒絕從wan端連進8080埠
/ip firewall filter
add action=drop chain=input comment="Block Open PROXY " disabled=no dst-port=8080 in-interface=wan protocol=tcp  src-address=0.0.0.0/0


另一種方式是到IP->Web Proxy->Access,加入你要接受連線的來源端,最後一筆規則再加上拒絕所有,這樣別人連上後會在網站上出現Access Deny的字樣





九、 transparent proxy的設定只要下一行指令

參考routeros的wiki (http://wiki.mikrotik.com/wiki/How_to_make_transparent_web_proxy),只要下ip firewall nat add in-interface=ether1 dst-port=80 protocol=tcp action=redirect to-ports=8080 chain=dstnat

注意:in-interface是你內部lan端的interface,可能會不一樣。
設定完後,再次觀察IP->web proxy,Cache Contents和Access,看是否有cache資料和連線的資料。

※設定transparent proxy的好處是,LAN端的使用者不需要一一去設定proxy,系統會強制使用者轉用proxy

參考資料:
http://wiki.mikrotik.com/wiki/Manual%3aIP/Proxy#Summary
http://nanobridge-technology.blogspot.tw/2013/08/nano-bridge-how-to-to-accredit-mikrotik.html
http://aacable.wordpress.com/2011/12/29/howto-to-enable-mikrotik-routeros-web-proxy-in-transparent-mode/