2. 목차
• 준비
• 무선 카드 지원 액세스 포인트 모드 여부
• Hostapd 설치 및 설정
• HostAP 실행
2 UBUNTU 데스크탑 AP 만들기
3. 준비
• 망구성
• 준비물
– hostapd를 지원하는 무선랜카드
– hostapd지원 가능 확인 http://w1.fi/hostapd/
– Ubuntu 가 설치된 데스크탑
UBUNTU 데스크탑 AP 만들기
eth0
X.X.X.X
wlan0
DHCP server
192.168.X.X
Client PC
192.168.X.X
br0
Internet
4. 무선 카드 지원 액세스 포인트 모드 여부
1. 터미널 창에 sudo apt-get install iw 명령을 통해 설치한다.
2. 터미널 창에 iw list 입력하여 출력되는 내용이 아래와 같은 내용을 포함하
는지 확인한다.
• 지원하는 드라이버에 AP 가 표시가 되지 않으면 작업을 할수 없다.
root@root:~$ iw list
…
Supported interface modes:
* IBSS
* managed
* AP
* AP/VLAN
* monitor
* mesh point
…
UBUNTU 데스크탑 AP 만들기
5. Hostapd 설치 및 네트워크 호스트 설정
1. 터미널 창에 sudo apt-get install hostapd 입력 후 설치한다.
2. sudo vi /etc/hostapd/hostapd.conf 실행 후 다음과 같은 내용 입력한다.
driver=nl80211
interface=wlan0
bridge=br0
hw_mode=g
channel=6
ssid=네트워크이름
# Accept all MAC address
macaddr_acl=0
# Shared Key Authentication
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=비밀번호
# Key management algorithms
wpa_key_mgmt=WPA-PSK
# Set cipher suites (encryption algorithms)
# TKIP = Temporal Key Integrity Protocol
# CCMP = AES in Counter mode with CBC-MAC
wpa_pairwise=TKIP
rsn_pairwise=CCMP
UBUNTU 데스크탑 AP 만들기
6. Hostapd 설치 및 네트워크 호스트 설정 (계속)
3. hostapd 파일 편집
터미널에 sudo vi /etc/default/hostapd 입력 후
DAEMON_CONF=“” 부분을 아래와 같이 입력한다.
…
DAEMON_CONF="/etc/hostapd/hostapd.conf"
…
UBUNTU 데스크탑 AP 만들기
7. Network interface 설정
• sudo apt-get install bridge-utils 명령으로 bridge-utils를 설치한다.
• sudo vi /etc/network/interfaces 입력 후 아래와 같이 브릿지 설정을 추
가한다.
(eth0에 대한 설정은 주석처리를 하고, 해당내용을 br0에 설정해준다.)
auto lo
iface lo inet loopback
auto wlan0
iface wlan0 inet dhcp
# Setup bridge
auto br0
iface br0 inet static
bridge_ports wlan0 eth0
address 192.168.5.79
netmask 255.255.255.0
network 192.168.5.0
gateway 192.168.5.1
dns-nameservers 39.119.118.231
UBUNTU 데스크탑 AP 만들기
8. Network interface 설정 (계속)
• 터미널에서 sudo brctl show 명령을 통해 브릿지 연결 상태를 알수 있다.
root@root:~$ brctl show
bridge name bridge id STP enabled interfaces
br0 8000.0015c50c9d3d no eth0
8
wlan0
UBUNTU 데스크탑 AP 만들기
9. HostAP 실행
• firewall 설정을 위한 iptables 설치
– sudo apt-get install iptables을 입력하여 iptables를 설치한다.
– sudo iptables -L 명령을 통해 설정 정보를 확인할 수 있다.
root@root:~$ iptables -L
Chain INPUT (policy ACCEPT)
target port opt source destination
Chain FORWARD (policy ACCEPT)
target port opt source destination
ACCEPT all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
target port opt source destination
9
UBUNTU 데스크탑 AP 만들기
10. HostAP 실행 (계속)
• HostAP 실행을 위한 쉘 스크립트를 작성한다.
– sudo vi initHostap 을 통해 파일을 만든후 아래와 같이 작성한다.
#!/bin/bash
# network interface setting
ifconfig $1 up 192.168.5.1 netmask 255.255.255.0 # 게이트웨이로 사용할 wlan의 IP를 설정한다.
• ‘./initHostap wlan0 eth0’ 명령을 통해 Hostapd를 실행 시킨다.
10
# enable routing
sysctl -w net.ipv4.ip_forward=1
# enable NAT (set firewall)
iptables --flush
iptables --table nat flush
iptables --delete-chain
iptables --table nat --delete-chain
iptables --table nat --append POSTROUTING --out-interfaces $2 -j MASQUERADE
iptables --append FORWARD --in-interfaces $1 -j ACCEPT
echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
# hostapd run
/usr/sbin/hostapd -dd /etc/hostapd/hostapd.conf
# stop
iptables -D POSTROUTING -t nat -o $2 -j MASQUERADE
sysctl -w net.ipv4.ip_forward=0
service hostapd stop
UBUNTU 데스크탑 AP 만들기
11. HostAP 실행 (계속)
• 무선네트워크 목록에 Ubuntu 데스크탑에서 설정한 SSID가 나타나면 연결한다.
• 네트워크가 연결된 후, 연결정보를 제대로 가져온 것을 확인 할 수 있다.
11 UBUNTU 데스크탑 AP 만들기