글
FON 공유기에 맥인증 허용하기
단비의 일상/IT Episode
2007. 4. 21. 16:29
요즘 FON에서 배포하는 Lafonera 공유기는 인증이 필요한 FON SSID 이외에 My_Space라는 또 하나의 SSID를 두어서 WEP나 WPA 인증을 하도록 하고 있어서 공유기의 주인은 무선랜 사용시 인증을 거치는 불편 없이 FON 공유기를 사용할 수 있다.
그런데 지금 집에서 사용하고 있는 LINKSYS FON 공유기는 FON 영역만이 있어서 사용할 때마다 인증을 하는 불편함을 겪으면서 사용하였다. 물론 DD-WRT 핵펌을 사용하면 기존의 FON 펌웨어를 무시하고 완전히 하나의 새로운 공유기로 탈바꿈 시킬 수 있기는 하다.(DD-WRT 핵펌 가이드 : 링크시스 WRT54Gv4를 이용한 핵펌가이드)
그러나 FON의 정책이 FON 공유기가 켜져 있는 상태에서만 다른 사람의 FON 공유기를 사용할 수 있는 것으로 바뀜에 따라 DD-WRT 핵펌을 하게되면 다른 사람의 FON 공유기를 쓸 수 없어지는 문제가 발생한다.
처음에는 펌웨어를 바꿔서 기능도 확장해서 쓰려했지만, 펌웨어 업그레이드라는 것이 잘되면 좋지만 잘못되었을 경우 복구 방법도 까다롭고, 또 아예 FON 인증을 하지 못하게 하여(개인 공유기화) 단독으로 사용하던가 아니면 "누구나 접속할 수 있게 한다"라는 FON과의 계약을 이행하기 위해 복잡한 방법으로 DD-WRT 핵펌에 칠리스팟 세팅을 스스로 하는 것은 구현하기 어렵다는 현실적인 문제가 존재했다. 1
가장 큰 문제는, 핵펌이 워낙 쉬워서 그랬는지는 몰라도 핵펌에 대해 소개를 하거나 장황하게 설명해 놓은 문서 및 블로그들은 많아도 하나 하나 따라하기 형식으로 설명해 놓은 자료는 없다는 것이었다.
아무래도 핵펌과 같은 작업을 할때 스텝별로 따라하기 자료가 없으면 위험성이 커져서 핵펌의 실행을 망설이고 있었는데 작은나라님의 FON공유기로 MAC어드레스 접속을 허용시키다.라는 포스트에서 FON 펌웨어에 패키지를 추가 설치하고 설정을 손봐주는 것 만으로 맥인증 후에 따로 로그인 없이 무선 공유기를 사용하게 할 수 있는 방법을 발견했다.
나야 공유기에 추가적으로 원하던 기능이 DD-WRT 펌웨어에서 제공하는 고급 기능들 보다는 단지 맥인증 기능의 추가만을 생각했으니까 공유기의 물리적 손상 위험부담이 있는 핵펌 보다는 "하다가 잘못되면 공장 초기화 하면 되지..." 와 같이 가벼운 마음으로 진행할 수 있는 패키지 설치의 방법을 택하게 되었다. 2
서론이 길었는데...
작업 환경은 LINKSYS WRT54G v4 이며 펌웨어 버전은 0.6.6 beta 이다. 공유기에 내장되어 있는 embed Linux 작업을 해야하기 때문에 ssh 클라이언트를 준비해야 한다.(무료 ssh 클라이언트 중 좋은 것은 PuTTY 이며, 이것은 http://www.chiark.greenend.org.uk/~sgtatham/putty/ 에서 다운받을 수 있다.)
먼저 PuTTY를 이용하여 유선포트를 통하여 공유기에 접속한다. 3
공유기 접속을 위한 PuTTY 세팅화면
BusyBox v1.00 (2006.08.07-15:16+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.
_______ _______ _______
| ____|| || _ |
| ____|| - || | | |
| | |_______||__| |__|
|___|
| ____|| || _ |
| ____|| - || | | |
| | |_______||__| |__|
|___|
FON Firmware (Beta 0.6.6) -------------------------
*
* Based on OpenWrt - http://openwrt.org
* Powered by FON - http://www.fon.com
---------------------------------------------------
root@OpenWrt:~#
작업할 디렉토리로 들어간다.
root@OpenWrt:~# cd /tmp
작업에 필요한 패키지들을 다운로드 받는다.
root@OpenWrt:~# wget http://downloads.openwrt.org/whiterussian/packages//freeradius_1.0.5-1_mipsel.ipk
Connecting to downloads.openwrt.org[195.56.146.238]:80
freeradius_1.0.5-1_m 100% |*****************************| 114 KB 00:00 ETA
root@OpenWrt:~# wget http://downloads.openwrt.org/whiterussian/packages//libltdl_1.5.14-1_mipsel.ipk
Connecting to downloads.openwrt.org[195.56.146.238]:80
libltdl_1.5.14-1_mip 100% |*****************************| 12159 00:00 ETA
root@OpenWrt:~# wget http://downloads.openwrt.org/whiterussian/packages//libopenssl_0.9.8d-1_mipsel.ipk
Connecting to downloads.openwrt.org[195.56.146.238]:80
libopenssl_0.9.8d-1_ 100% |*****************************| 434 KB 00:00 ETA
root@OpenWrt:~# wget http://downloads.openwrt.org/whiterussian/packages//libpthread_0.9.27-1_mipsel.ipk
Connecting to downloads.openwrt.org[195.56.146.238]:80
libpthread_0.9.27-1_ 100% |*****************************| 19027 00:00 ETA
패키지를 다운로드 받았으면 다운로드 받는 것들을 설치한다. 설치가 끝나면 다운로드 받았던 패키지 파일은 공유기의 여유 공간을 생각해서 지운다.
root@OpenWrt:~# ipkg install *.ipk
Installing freeradius (1.0.5-1) to root...
Installing libltdl (1.5.14-1) to root...
Installing libopenssl (0.9.8d-1) to root...
Installing libpthread (0.9.27-1) to root...
Package libltdl (1.5.14-1) installed in root is up to date.
Package libopenssl (0.9.8d-1) installed in root is up to date.
Package libpthread (0.9.27-1) installed in root is up to date.
Configuring freeradius
Configuring libltdl
Configuring libopenssl
Configuring libpthread
Successfully terminated.
root@OpenWrt:~# rm *.ipk
root@OpenWrt:~# wget http://downloads.openwrt.org/whiterussian/packages//freeradius-mod-files_1.0.5-1_mipsel.ipk
Connecting to downloads.openwrt.org[195.56.146.238]:80
freeradius-mod-files 100% |*****************************| 7728 00:00 ETA
root@OpenWrt:~# ipkg install *.ipk
Installing freeradius-mod-files (1.0.5-1) to root...
Configuring freeradius-mod-files
Successfully terminated.
root@OpenWrt:~# rm *.ipk
root@OpenWrt:~# wget http://downloads.openwrt.org/whiterussian/packages//freeradius-mod-realm_1.0.5-1_mipsel.ipk
Connecting to downloads.openwrt.org[195.56.146.238]:80
freeradius-mod-realm 100% |*****************************| 7231 00:00 ETA
root@OpenWrt:~# ipkg install *.ipk
Installing freeradius-mod-realm (1.0.5-1) to root...
Configuring freeradius-mod-realm
Successfully terminated.
root@OpenWrt:~# rm *.ipk
필요한 설정 파일을 다운로드 받아 복사한다.
root@OpenWrt:~# wget http://www.licour.com/blogfiles/fon_mac.tgz
Connecting to www.licour.com[213.186.33.19]:80
fon_mac.tgz 100% |*****************************| 3763 00:00 ETA
root@OpenWrt:~# tar xzf fon_mac.tgz
root@OpenWrt:~# cd fon_mac
root@OpenWrt:~/fon_mac# cp -a MAC /jffs
root@OpenWrt:~/fon_mac# cp freeradius/* /etc/freeradius/
root@OpenWrt:~/fon_mac# ln -s /etc/init.d/radiusd /etc/init.d/S60freeradius
root@OpenWrt:~/fon_mac# rm /etc/init.d/chillispot
root@OpenWrt:~/fon_mac# cp chillispot /etc/init.d/chillispot
여기까지 수행을 하였으면 허용할 MAC ID 목록을 편집한다.(한번 작업된 공유기에서 MAC ID 만 추가할 때는 여기부터 작업하면 된다.)
root@OpenWrt:~/fon_mac# vi /jffs/MAC/fon_allowed_mac.lst
# This file store all MAC address that must be trusted by FON router
# Format : one MAC address per line, no space before, no space after
# MAC address format : XX-XX-XX-XX-XX-XX
#
# Don't forget to execute this script after each change in this file :
# /jffs/MAC/fon_update_mac.sh
*
* Based on OpenWrt - http://openwrt.org
* Powered by FON - http://www.fon.com
---------------------------------------------------
root@OpenWrt:~#
작업할 디렉토리로 들어간다.
root@OpenWrt:~# cd /tmp
작업에 필요한 패키지들을 다운로드 받는다.
root@OpenWrt:~# wget http://downloads.openwrt.org/whiterussian/packages//freeradius_1.0.5-1_mipsel.ipk
Connecting to downloads.openwrt.org[195.56.146.238]:80
freeradius_1.0.5-1_m 100% |*****************************| 114 KB 00:00 ETA
root@OpenWrt:~# wget http://downloads.openwrt.org/whiterussian/packages//libltdl_1.5.14-1_mipsel.ipk
Connecting to downloads.openwrt.org[195.56.146.238]:80
libltdl_1.5.14-1_mip 100% |*****************************| 12159 00:00 ETA
root@OpenWrt:~# wget http://downloads.openwrt.org/whiterussian/packages//libopenssl_0.9.8d-1_mipsel.ipk
Connecting to downloads.openwrt.org[195.56.146.238]:80
libopenssl_0.9.8d-1_ 100% |*****************************| 434 KB 00:00 ETA
root@OpenWrt:~# wget http://downloads.openwrt.org/whiterussian/packages//libpthread_0.9.27-1_mipsel.ipk
Connecting to downloads.openwrt.org[195.56.146.238]:80
libpthread_0.9.27-1_ 100% |*****************************| 19027 00:00 ETA
패키지를 다운로드 받았으면 다운로드 받는 것들을 설치한다. 설치가 끝나면 다운로드 받았던 패키지 파일은 공유기의 여유 공간을 생각해서 지운다.
root@OpenWrt:~# ipkg install *.ipk
Installing freeradius (1.0.5-1) to root...
Installing libltdl (1.5.14-1) to root...
Installing libopenssl (0.9.8d-1) to root...
Installing libpthread (0.9.27-1) to root...
Package libltdl (1.5.14-1) installed in root is up to date.
Package libopenssl (0.9.8d-1) installed in root is up to date.
Package libpthread (0.9.27-1) installed in root is up to date.
Configuring freeradius
Configuring libltdl
Configuring libopenssl
Configuring libpthread
Successfully terminated.
root@OpenWrt:~# rm *.ipk
root@OpenWrt:~# wget http://downloads.openwrt.org/whiterussian/packages//freeradius-mod-files_1.0.5-1_mipsel.ipk
Connecting to downloads.openwrt.org[195.56.146.238]:80
freeradius-mod-files 100% |*****************************| 7728 00:00 ETA
root@OpenWrt:~# ipkg install *.ipk
Installing freeradius-mod-files (1.0.5-1) to root...
Configuring freeradius-mod-files
Successfully terminated.
root@OpenWrt:~# rm *.ipk
root@OpenWrt:~# wget http://downloads.openwrt.org/whiterussian/packages//freeradius-mod-realm_1.0.5-1_mipsel.ipk
Connecting to downloads.openwrt.org[195.56.146.238]:80
freeradius-mod-realm 100% |*****************************| 7231 00:00 ETA
root@OpenWrt:~# ipkg install *.ipk
Installing freeradius-mod-realm (1.0.5-1) to root...
Configuring freeradius-mod-realm
Successfully terminated.
root@OpenWrt:~# rm *.ipk
필요한 설정 파일을 다운로드 받아 복사한다.
root@OpenWrt:~# wget http://www.licour.com/blogfiles/fon_mac.tgz
Connecting to www.licour.com[213.186.33.19]:80
fon_mac.tgz 100% |*****************************| 3763 00:00 ETA
root@OpenWrt:~# tar xzf fon_mac.tgz
root@OpenWrt:~# cd fon_mac
root@OpenWrt:~/fon_mac# cp -a MAC /jffs
root@OpenWrt:~/fon_mac# cp freeradius/* /etc/freeradius/
root@OpenWrt:~/fon_mac# ln -s /etc/init.d/radiusd /etc/init.d/S60freeradius
root@OpenWrt:~/fon_mac# rm /etc/init.d/chillispot
root@OpenWrt:~/fon_mac# cp chillispot /etc/init.d/chillispot
여기까지 수행을 하였으면 허용할 MAC ID 목록을 편집한다.(한번 작업된 공유기에서 MAC ID 만 추가할 때는 여기부터 작업하면 된다.)
root@OpenWrt:~/fon_mac# vi /jffs/MAC/fon_allowed_mac.lst
# This file store all MAC address that must be trusted by FON router
# Format : one MAC address per line, no space before, no space after
# MAC address format : XX-XX-XX-XX-XX-XX
#
# Don't forget to execute this script after each change in this file :
# /jffs/MAC/fon_update_mac.sh
# This is a test's MAC address. Please uncomment and change it
#00-01-02-03-04-05
00-09-2D-83-59-C3 (여기에 보유하고 있는 장비의 MAC ID를 추가한다.)
00-0F-66-5A-08-C8
위와 같이 자기가 가지고 있는 무선장비의 MAC ID의 목록을 편집하고 :wq를 눌러 저장하고 빠져나온다.
다시 다음 명령을 실행하여 공유기에 인증 없이 사용을 허용할 MAC ID의 목록을 업데이트 한다.
root@OpenWrt:~/fon_mac# /jffs/MAC/fon_update_mac.sh
Process MAC : 00-09-2D-83-59-C3
Process MAC : 00-0F-66-5A-08-C8
updated /etc/freeradius/users
updated /jffs/MAC/fon_chillispot.sed
restarting chillispot
A reboot could help you...
작업이 완료되었으면 공유기를 다시 부팅한다.(쉘 상태이므로 간단히 reboot 명령으로 재부팅 할 수 있다.)
root@OpenWrt:~/fon_mac#reboot
#00-01-02-03-04-05
00-09-2D-83-59-C3 (여기에 보유하고 있는 장비의 MAC ID를 추가한다.)
00-0F-66-5A-08-C8
위와 같이 자기가 가지고 있는 무선장비의 MAC ID의 목록을 편집하고 :wq를 눌러 저장하고 빠져나온다.
다시 다음 명령을 실행하여 공유기에 인증 없이 사용을 허용할 MAC ID의 목록을 업데이트 한다.
root@OpenWrt:~/fon_mac# /jffs/MAC/fon_update_mac.sh
Process MAC : 00-09-2D-83-59-C3
Process MAC : 00-0F-66-5A-08-C8
updated /etc/freeradius/users
updated /jffs/MAC/fon_chillispot.sed
restarting chillispot
A reboot could help you...
작업이 완료되었으면 공유기를 다시 부팅한다.(쉘 상태이므로 간단히 reboot 명령으로 재부팅 할 수 있다.)
root@OpenWrt:~/fon_mac#reboot
다시 부팅되면 공유기에 웹으로 접속하여 상태를 확인할 수 있다.
작업후 FON 공유기 Management Console
이 작업에 필요한 파일의 압축파일 다운로드
이 설정 후 MAC ID 등록을 통해서 공유기를 이용하는 것은 FON과는 관계 없이 이루어진다. 즉 FON의 접속 내역에 나타나지 않는다.(이 결과를 놓고 보면, 칠리스팟 되는 FON + 맥인증 되는 개인 공유기의 형태가 되었다고나 할까...)
- 이제는 FON의 서비스 규정이 일정 기간 공유기를 켜 놓는 것에서 공유기를 켜 놓을 때만 다른 FON 공유기를 이용할 수 있는 것으로 개정되었다. 이것을 실현하기 위하여 LINKSYS 공유기 처럼 다른 약관(일정기간만 켜 놓으면 된다는 약관)을 가졌던 공유기 사용자들에게는 La Fonera 공유기를 다시 발송하였다. [본문으로]
- 링크시스 공유기를 공장초기화 하기 위해서는 먼저 공유기 뒤의 리셋을 누른 상태에서 전원을 넣고 10여초간 있다가 리셋 버튼에서 손을 떼면 된다. [본문으로]
- 보안상의 이유로 FON 공유기의 유선 IP 대역과 무선 IP 대역은 분리되어 있다. 내부 관리 Shell 및 웹 관리 인터페이스에 접근할 수 있는 192.168.10.* 대역은 유선으로 접속할 때에만 부여받으며, 무선으로 접근하면 192.168.182.* 대역의 IP를 부여받는다. [본문으로]