G: 안녕하세요, 똑똑한 네트워크 생활을 꿈꾸는 여러분! 🚀
OpenWrt는 단순한 공유기를 넘어 강력한 네트워크 장비로 변신시켜주는 마법 같은 펌웨어입니다. 하지만 이 강력함 뒤에는 그만큼의 책임이 따르죠. 특히 기본 설정으로 OpenWrt를 사용하고 있다면, 여러분의 네트워크는 생각보다 훨씬 취약할 수 있습니다. 😱
오늘은 OpenWrt를 설치한 후 “이것만은 꼭 해야 한다!”고 강력히 추천하는 필수 보안 설정들을 총정리해 드릴게요. 이 글만 따라 하면 여러분의 OpenWrt는 훨씬 더 단단하고 안전한 요새가 될 것입니다! 💪
💡 왜 OpenWrt 보안 설정이 중요한가요?
OpenWrt는 커스터마이징의 자유도가 높지만, 그만큼 사용자가 직접 신경 써야 할 부분이 많습니다. 초기 설정은 기본적으로 열려 있는 포트나 약한 비밀번호 등 보안에 취약한 상태일 수 있어요. 해커들은 이런 빈틈을 노려 여러분의 네트워크에 침입하거나, 개인 정보를 탈취하거나, 심지어 OpenWrt를 악성 코드 유포의 숙주로 만들 수도 있습니다.
여러분의 소중한 데이터를 보호하고, 안전한 인터넷 환경을 유지하기 위해 지금부터 알려드리는 설정들을 꼭 적용해 보세요!
🛡️ 1단계: 가장 기본적인 보안 수칙 지키기
가장 기초적이면서도 가장 중요한 단계입니다. 첫 단추를 잘 꿰어야 다음 단계들도 의미가 있어요!
1. 기본 관리자 비밀번호 변경하기 🔑
- 설정 경로:
시스템 (System)
->관리 (Administration)
- 방법:
라우터 비밀번호 (Router Password)
섹션에서 새 비밀번호를 입력하고 저장합니다. - 팁:
- 대문자, 소문자, 숫자, 특수문자를 조합하여 12자리 이상의 복잡한 비밀번호를 사용하세요.
- 다른 웹사이트나 서비스에서 사용하지 않는 고유한 비밀번호를 만드세요.
- 절대!!!
password
,12345
,admin
같은 흔한 비밀번호는 사용하지 마세요. (상상 그 이상으로 위험합니다!)
2. SSH 접근 보안 강화하기 (선택 사항이지만 강력 추천!) 💻
SSH(Secure Shell)는 원격에서 OpenWrt에 접속하여 명령어를 실행할 수 있게 해주는 기능입니다. 아주 유용하지만, 잘못 설정하면 위험할 수 있어요.
- 설정 경로:
시스템 (System)
->관리 (Administration)
->SSH 접근 (SSH Access)
- 방법 1: 비밀번호 인증 비활성화 & 키 인증 사용 (가장 안전!)
- 먼저
Puttygen
같은 도구로 SSH 키 쌍(공개키/개인키)을 생성합니다. - 생성된 공개키 내용을 OpenWrt의
공개 SSH 키 (Public SSH Keys)
필드에 붙여넣습니다. (일반적으로~/.ssh/authorized_keys
파일에 추가하는 것과 동일합니다.) 비밀번호 인증 허용 (Allow password authentication)
체크박스를 해제합니다.- 이제 개인키 없이는 SSH 접속이 불가능해집니다.
- 먼저
- 방법 2: 외부망 SSH 접근 비활성화 (가장 일반적인 추천)
- 기본적으로 OpenWrt는 외부(WAN)에서 SSH 접속을 허용하지 않습니다. 만약 실수로 열어 두었다면,
네트워크 (Network)
->방화벽 (Firewall)
->트래픽 규칙 (Traffic Rules)
에서 외부에서의 SSH 접속 규칙(포트 22)을 삭제하거나 비활성화하세요. 집 내부에서만 SSH 접속을 허용하는 것이 좋습니다.
- 기본적으로 OpenWrt는 외부(WAN)에서 SSH 접속을 허용하지 않습니다. 만약 실수로 열어 두었다면,
- 팁: SSH 포트 번호를 기본 22번이 아닌 다른 임의의 번호로 변경하는 것도 스캔 공격을 줄이는 데 도움이 됩니다. (예: 2222, 54321 등)
3. 펌웨어 및 패키지 최신 버전 유지하기 🔄
가장 기본적인 보안 수칙 중 하나입니다. 소프트웨어는 항상 새로운 취약점이 발견되고 패치됩니다.
- 방법 1: LuCI 웹 인터페이스 이용
시스템 (System)
->소프트웨어 (Software)
목록 업데이트 (Update lists)
버튼을 클릭하여 패키지 목록을 최신화합니다.설치된 패키지 (Installed packages)
탭에서 업그레이드 가능한 패키지를 확인하고, 하나씩 또는 모두 업그레이드합니다.
- 방법 2: SSH 접속 후 명령어 이용
opkg update opkg list-upgradable | cut -f 1 -d ' ' | xargs opkg upgrade
- 펌웨어 업그레이드: 정기적으로 OpenWrt 공식 웹사이트나 커뮤니티를 방문하여 새로운 펌웨어 버전이 있는지 확인하고 업그레이드하세요. (
시스템 (System)
->백업 / 펌웨어 플래시 (Backup / Flash Firmware)
)
4. Wi-Fi 보안 설정하기 📶
무선 네트워크도 중요한 보안 영역입니다.
- 설정 경로:
네트워크 (Network)
->무선 (Wireless)
- 방법:
- 암호화 (Encryption):
WPA2-PSK (AES)
이상을 사용하세요. 가능하다면WPA3-SAE
를 권장합니다. WPA2-PSK(TKIP)는 구식이며 보안에 취약합니다. - 무선 키 (Key): 복잡하고 예측 불가능한 강력한 비밀번호를 설정하세요. (관리자 비밀번호와는 다르게!)
- SSID 숨기기 (Hidden SSID): 논란의 여지가 있지만, 일반적인 스캔으로는 SSID가 보이지 않게 하여 “무작위 방문자”의 접근 시도를 줄일 수 있습니다. (그러나 전문적인 스캔 도구로는 쉽게 찾아낼 수 있으므로, 완벽한 보안 수단은 아닙니다.)
- 암호화 (Encryption):
🛡️ 2단계: 방화벽을 이용한 네트워크 요새화
OpenWrt의 방화벽은 매우 강력합니다. 적절히 설정하면 외부의 위협으로부터 여러분의 네트워크를 효과적으로 보호할 수 있습니다.
1. 기본 방화벽 규칙 이해하기 🔥
- 설정 경로:
네트워크 (Network)
->방화벽 (Firewall)
- OpenWrt의 기본 방화벽은
입력 (Input)
,출력 (Output)
,전달 (Forward)
세 가지 정책을 가지고 있습니다.입력 (Input)
: 라우터 자체로 들어오는 트래픽 (외부에서 라우터 관리 페이지로 접근 등)출력 (Output)
: 라우터 자체에서 나가는 트래픽 (라우터가 업데이트를 확인하는 등)전달 (Forward)
: 라우터를 통과하여 다른 네트워크로 전달되는 트래픽 (외부에서 내부 PC로 접속 등)
- 기본적으로
WAN -> LAN
방향의전달 (Forward)
정책은거부 (Reject)
또는Drop
으로 설정되어 있어, 외부에서 내부 네트워크로의 직접적인 접근은 막혀 있습니다. 이 상태를 유지하는 것이 중요합니다.
2. 포트 포워딩은 신중하게! ⚠️
- 설정 경로:
네트워크 (Network)
->방화벽 (Firewall)
->포트 전달 (Port Forwards)
탭 - 팁:
- 꼭 필요한 경우에만 포트 포워딩을 설정하세요. 예를 들어, 외부에서 집에 있는 CCTV, NAS, 웹서버 등에 접속해야 할 때만 사용합니다.
- 특정 내부 IP 주소와 포트로만 포워딩되도록 설정하세요.
- 외부 포트와 내부 포트를 다르게 설정하는 것을 고려해 보세요. (예: 외부에서 2000번 포트로 접속하면 내부 80번 포트로 연결)
- 접근을 허용하는 외부 IP 주소를 특정할 수 있다면,
Source IP address
필드를 설정하여 보안을 강화하세요.
3. 불필요한 포트/서비스는 닫기/비활성화 🚫
- 라우터 자체에서 불필요하게 열려있는 포트나 실행 중인 서비스는 보안 취약점이 될 수 있습니다.
네트워크 (Network)
->방화벽 (Firewall)
->트래픽 규칙 (Traffic Rules)
에서 불필요한 인바운드 규칙이 없는지 확인하세요.시스템 (System)
->시작 프로그램 (Startup)
에서 현재 실행 중인 서비스 목록을 확인하고, 불필요하다고 판단되는 서비스는활성화 (Enabled)
를비활성화 (Disabled)
로 변경하세요. (예: Samba, uPNP 등 – 단, 어떤 서비스인지 정확히 모른다면 건드리지 않는 것이 좋습니다.)
🛡️ 3단계: 네트워크 분리를 통한 격리 전략 🌐
가장 강력한 보안 방법 중 하나는 네트워크를 여러 구역으로 나누고, 각 구역 간의 통신을 엄격하게 제한하는 것입니다.
1. 게스트 Wi-Fi 네트워크 구축 🧑🤝🧑
손님들이 여러분의 메인 네트워크에 접속하는 것은 위험할 수 있습니다. 그들의 장치가 악성 코드에 감염되어 있을 수도 있고, 의도치 않게 내부 자원에 접근할 수도 있습니다.
- 방법:
- 새 인터페이스 생성:
네트워크 (Network)
->인터페이스 (Interfaces)
에서새 인터페이스 추가 (Add new interface)
를 클릭합니다. (예:guest
로 이름을 지정,프로토콜: Static address
,IPv4 주소: 192.168.X.1
– 메인 네트워크와 다른 서브넷 사용) - 새 무선 네트워크 생성:
네트워크 (Network)
->무선 (Wireless)
에서추가 (Add)
를 클릭하고, 이전에 만든guest
인터페이스와 연결합니다. (강력한 비밀번호 필수!) - 방화벽 규칙 설정:
네트워크 (Network)
->방화벽 (Firewall)
->영역 (Zones)
탭에서 새로운guest
영역을 만들고,입력/출력/전달
정책을거부 (Reject)
로 설정합니다. 전달 허용 (Allow forwarding to destination zones)
에는WAN
만 허용하고,LAN
과의 통신은 허용하지 않습니다. (즉, 게스트는 인터넷만 사용할 수 있고, 여러분의 컴퓨터나 다른 장치에는 접근할 수 없게 됩니다.)
- 새 인터페이스 생성:
2. IoT (사물 인터넷) 기기 전용 네트워크 구축 🤖🔌
스마트 플러그, 로봇 청소기, 스마트 전구 등 IoT 기기는 보안 취약점이 많습니다. 이들이 메인 네트워크에 접근하는 것을 막는 것이 중요합니다.
- 방법: 게스트 Wi-Fi 구축과 유사하게, 별도의 인터페이스와 무선 네트워크(또는 유선 포트)를 만들어
IoT
전용 네트워크를 구성합니다. - 방화벽 규칙: IoT 기기가 인터넷(WAN)으로만 통신하도록 허용하고,
LAN
이나게스트
네트워크로는 접근하지 못하도록 엄격하게 차단합니다. 필요한 경우, 특정 클라우드 서버로의 접근만 허용하고 나머지는 차단하는 더 세밀한 규칙을 적용할 수도 있습니다.
🛡️ 4단계: 시스템 강화 및 유지보수 🛠️
네트워크 설정을 넘어 OpenWrt 자체의 안정성과 보안을 유지하는 방법입니다.
1. 불필요한 서비스 비활성화 🚫⚙️
- 설정 경로:
시스템 (System)
->시작 프로그램 (Startup)
- OpenWrt에 설치된 다양한 패키지 중에는 자동으로 시작되는 서비스들이 있습니다. 만약 사용하지 않는 서비스(예:
samba
를 사용하지 않는데 서비스가 실행 중인 경우)가 있다면비활성화 (Disable)
버튼을 눌러 비활성화하세요. 실행 중인 서비스가 적을수록 공격 표면이 줄어듭니다.- 주의: 어떤 서비스인지 정확히 모른다면 비활성화하지 마세요. 잘못하면 라우터가 제대로 작동하지 않을 수 있습니다.
2. 로그 모니터링 📜👁️
- 설정 경로:
시스템 (System)
->시스템 (System)
->로그 설정 (Log settings)
상태 (Status)
->시스템 로그 (System Log)
에서 라우터의 활동 기록을 확인할 수 있습니다.- 팁:
- 정기적으로 로그를 확인하여 비정상적인 로그인 시도(특히 SSH나 LuCI), 알 수 없는 외부 접속 시도, 방화벽 차단 기록 등을 확인하세요.
- 외부에 로그 서버(Syslog 서버)를 구축하여 로그를 전송하도록 설정하면, 라우터 내부의 저장 공간을 절약하고 로그 관리의 용이성을 높일 수 있습니다.
3. 주기적인 백업 💾
- 설정 경로:
시스템 (System)
->백업 / 펌웨어 플래시 (Backup / Flash Firmware)
- 팁:
- 중요한 설정을 변경하거나, 펌웨어 업그레이드 전에 반드시
설정 백업 생성 (Generate archive)
버튼을 눌러config.tar.gz
파일을 다운로드하여 안전한 곳에 보관하세요. - 문제가 발생했을 때 빠르게 이전 상태로 복구할 수 있는 가장 확실한 방법입니다.
- 중요한 설정을 변경하거나, 펌웨어 업그레이드 전에 반드시
4. 물리적 보안 🛡️🏠
- 아무리 소프트웨어 보안을 잘해도, 라우터 자체에 물리적으로 접근할 수 있다면 무용지물입니다.
- 팁:
- 라우터를 안전하고 통제된 장소에 보관하세요.
- 전원 케이블이나 네트워크 케이블을 쉽게 뽑거나 조작할 수 없는 곳에 두세요.
- 초기화 버튼에 대한 접근도 제한하는 것이 좋습니다.
🛡️ 5단계: 추가적인 보안 강화 (선택 사항이지만 강력 추천!) ✨
이 단계는 위에 설명된 필수 설정을 모두 마친 후, 더 높은 수준의 보안을 원하는 분들을 위한 내용입니다.
1. Adblock 또는 AdGuard Home 설치 🚫📢
- 효과: 광고, 트래커, 악성 웹사이트를 네트워크 수준에서 차단하여 웹서핑 경험을 개선하고, 잠재적인 보안 위협(멀웨어 광고 등)으로부터 보호합니다.
- 설치:
opkg install adblock
(Adblock 패키지) 또는 AdGuard Home을 직접 설치하여 연동할 수 있습니다.
2. VPN 클라이언트 설정 (WireGuard/OpenVPN) 🕵️♂️🌍
- 효과: OpenWrt 라우터 자체에서 VPN 클라이언트로 작동하여, 라우터에 연결된 모든 기기의 인터넷 트래픽을 VPN 터널을 통해 암호화하고 라우팅합니다. 외부 인터넷 서비스 제공업체나 도청으로부터 프라이버시를 보호하고, 특정 국가의 제한된 콘텐츠에 접근할 수 있습니다.
- 설치:
opkg install openvpn-openssl
또는opkg install wireguard
등. 설정은 사용하는 VPN 서비스에 따라 다릅니다.
3. DNS over HTTPS (DoH) / DNS over TLS (DoT) 사용 🔒DNS
- 효과: DNS 쿼리가 암호화되지 않은 채 전송되는 것을 막아, 인터넷 서비스 제공업체나 다른 감시자가 여러분의 웹 활동을 엿보는 것을 방지합니다.
- 설치:
unbound
또는dnsmasq-full
패키지를 설치하고 관련 설정을 통해 구현할 수 있습니다. Cloudflare, Google, AdGuard 등 다양한 DoH/DoT 서비스를 활용할 수 있습니다.
4. Fail2ban 설치 🛑🤖
- 효과: SSH나 LuCI 접속 시도에서 반복적으로 로그인에 실패하는 IP 주소를 자동으로 차단하여 무차별 대입 공격(Brute-force attack)을 방어합니다.
- 설치:
opkg install fail2ban
맺음말 ✨
OpenWrt의 보안 설정은 한 번 하고 끝나는 일이 아닙니다. 새로운 위협이 계속 등장하고 소프트웨어는 끊임없이 업데이트되기 때문에, 정기적으로 설정을 검토하고 최신 정보를 찾아 적용하는 노력이 필요합니다.
오늘 알려드린 필수 보안 설정들을 꼼꼼히 적용하여, 여러분의 OpenWrt를 더욱 안전하고 든든한 네트워크의 수호자로 만들어 보세요. 여러분의 안전한 네트워크 생활을 응원합니다! 🌟 궁금한 점이 있다면 언제든지 댓글로 질문해주세요!