본문 바로가기

질문답변

우분투 WiFi 핫스팟 영구 설정

페이지 정보

작성자 관리자
댓글 0건 조회 8회 작성일 2026-02-26 08:59:31

본문

우분투 WiFi 핫스팟 영구 설정

hostapd + dnsmasq + firewalld 방식 | 인터넷 포워딩 포함


0. 시스템 환경

항목
OS Ubuntu 24 (최신)
유선 인터페이스 enp4s0 (192.168.0.19)
무선 인터페이스 wlp6s0
핫스팟 IP 10.0.0.1/24
SSID HOTSPOT
DHCP 범위 10.0.0.50 ~ 10.0.0.150
방화벽 firewalld (ufw 비활성화)

1. 패키지 설치

Bash
sudo apt install hostapd dnsmasq iptables-persistent

⚠️ ufw와 firewalld 동시 사용 금지

Bash
sudo systemctl stop ufw
sudo systemctl disable ufw

2. 무선 인터페이스 고정 IP 설정

파일: /etc/network/interfaces

Bash
auto wlp6s0
iface wlp6s0 inet static
    address 10.0.0.1
    netmask 255.255.255.0

3. hostapd 설정

3-1. 설정 파일 생성

파일: /etc/hostapd/hostapd.conf

Bash
interface=wlp6s0
driver=nl80211
ssid=HOTSPOT
hw_mode=g
channel=6
wmm_enabled=0
macaddr_acl=0
auth_algs=1
wpa=2
wpa_passphrase=비밀번호
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP

3-2. /etc/default/hostapd 수정

아래 줄 주석 해제:

Bash
DAEMON_CONF="/etc/hostapd/hostapd.conf"

3-3. 자동 시작 등록

Bash
sudo systemctl enable hostapd
sudo systemctl start hostapd

4. dnsmasq 설정 (DHCP)

파일: /etc/dnsmasq.conf

Bash
interface=wlp6s0
dhcp-range=10.0.0.50,10.0.0.150,12h
bind-interfaces
server=8.8.8.8

⚠️ 포트 53 충돌 시 port=0 추가 (DNS 비활성화)

Bash
sudo systemctl enable dnsmasq
sudo systemctl start dnsmasq

5. firewalld 설정

5-1. wlp6s0 → internal zone 등록

Bash
sudo firewall-cmd --zone=internal --add-interface=wlp6s0 --permanent

5-2. 필요 서비스 허용

Bash
sudo firewall-cmd --zone=internal --add-service=dhcp --permanent
sudo firewall-cmd --zone=internal --add-service=dns --permanent
sudo firewall-cmd --zone=internal --add-masquerade --permanent

5-3. 인터넷 포워딩 (enp4s0 방향)

Bash
sudo firewall-cmd --zone=public --add-masquerade --permanent
sudo firewall-cmd --reload

6. IP 포워딩 영구 설정

파일: /etc/sysctl.conf 에서 아래 줄 주석 해제

Bash
net.ipv4.ip_forward=1
Bash
sudo sysctl -p

7. iptables FORWARD 룰

Bash
sudo iptables -I FORWARD 1 -i wlp6s0 -o enp4s0 -j ACCEPT
sudo iptables -I FORWARD 2 -i enp4s0 -o wlp6s0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo netfilter-persistent save

⚠️ netfilter-persistent save 안하면 재부팅 후 룰 사라짐

8. 상태 확인 명령어

Bash
sudo systemctl status hostapd
sudo systemctl status dnsmasq
ip addr show wlp6s0
sudo firewall-cmd --zone=internal --list-all
sudo iptables -L FORWARD -n -v
sudo journalctl -u dnsmasq -f
sudo tcpdump -i wlp6s0 port 67 or port 68   # DHCP 요청 확인

우분투 WiFi 핫스팟 설정 메모 | hostapd + dnsmasq + firewalld

댓글목록

등록된 댓글이 없습니다.

댓글쓰기

내용

회원로그인

로그인 회원가입

방문자 집계

  • 오늘 707
  • 어제 832
  • 최대 1,454
  • 전체 10,139
Copyright © radio.kr. All rights reserved.