반응형

Tested device: Raspberry Pi 2 (model B)

OpenWrt version: 15.05 (Chaos Calmer)


라즈베리파이에서 이더넷 포트를 외부 인터넷 접속용 wan 인터페이스로 변경해서 연동했더니, LuCI 웹 인터페이스에 접근하지 못할 뿐만 아니라 SSH 접속도 막히게 되었다. 즉, 외부 인터넷에서 SSH(포트 22)와 LuCI(포트 80) 접속이 기본적으로 막혀 있다. 이것은 비단 라즈베리파이 뿐만 아니라 모든 OpenWRT 라우터에 해당된다.

애초에 이더넷 포트를 wan으로 연결하기 전에 LuCI의 System > Administration 페이지에서 "Allow  remote hosts to connect to local SSH forwarded ports" 옵션에 체크를 했지만 기대하던 대로 작동하지 않았다.


이 경우는 /etc/config/firewall 파일을 수정해서 쉽게 해결할 수 있다.


/etc/config/firewall 파일에 아래 내용을 추가해 준다.

# for SSH access

config rule

option src 'wan'

option proto tcp

option dest_port '22'

option target 'ACCEPT'


# for LuCI webpage access

config rule

option src 'wan'

option proto tcp

option dest_port '80'

option target 'ACCEPT'


만약 SSH와 웹 인터페이스의 포트 번호가 다르게 설정되어 있다면 22, 80 대신 해당하는 포트번호를 입력한다.


파일을 저장하고 나서 아래와 같이 firewall을 재시작하고 나면 외부 접속이 가능해진다.

root@OpenWrt:~# /etc/init.d/firewall restart




반응형
블로그 이미지

Bryan_

,
반응형

크로스 컴파일 환경: Ubuntu 12.04 (64-bit)

OpenWRT version: 14.07 (Barrier Breaker)

Tested device: Buffalo WZR-600DHP


OpenWRT 크로스 컴파일 환경에서 운영체제(OS)직접 빌드하여 bin 파일을 만들고 대상 기기에 설치를 하고 나서, 리눅스 콘솔을 통해서는 접근이 가능하지만, 웹 브라우저를 통해서 볼 수 있는 웹 인터페이스(Web interface, GUI)가 안되는 경우가 있다.


이것은 luci 패키지가 설치되지 않았기 때문인데, OpenWRT 기기에 SSH로 로그인하고 나서 아래 명령을 통해서 "luci-i18n-"으로 시작하는 패키지가 검색이 되는지 확인할 필요가 있다.

(OpenWRT 기기에 SSH로 로그인한 뒤의 콘솔 화면에서)

# opkg list | grep luci


만약 위 명령을 통해"luci-i18n-*"(예를 들어, 영어 버전 웹 인터페이스에 해당하는 luci-i18n-english)이 하나도 검색되지 않는다면 opkg를 이용한 설치 과정이 어렵고 복잡해진다. 직접 의존성이 있는 관련 패키지를 모두 수동으로 다운로드 받아서 ipk 파일을 집어넣고 설치해야 하기 때문이다.



이 경우, 굳이 어렵게 할 필요 없이 크로스 컴파일 환경에서 luci 패키지가 포함되도록 설정하고 OpenWRT 운영체제를 다시 빌드해서 설치하는 것이 간편하다.


(OpenWRT 크로스 컴파일 환경의 최상위 디렉토리 위치에서)

$ ./scripts/feeds update packages luci

$ ./scripts/feeds install -a -p luci


또는 luci 뿐만 아니라 모든 업데이트된 패키지를 다 포함시키고 싶다면(모두 다 기기에 설치된다는 의미는 아니고, make menuconfig에서 설정 가능하도록 보이게 하겠다는 의미), 아래와 같이 입력한다.


$ ./scripts/feeds update

$ ./scripts/feeds install -a



위와 같이 하고 나서 make menuconfig 설정에 들어가 보면, 아래 그림과 같이 LuCI 메뉴에서 모듈 설치 여부를 선택할 수 있다.

$ make menuconfig




위 화면에서 "1. Collections" 메뉴에서 luci 또는 luci-ssl을 선택하면 된다. luci-ssl은 HTTPS를 통해서 웹 인터페이스에 접속할 수 있도록 해 주는 모듈이며, 기본적으로 luci를 포함한다.




위와 같이 선택하고 나서 Save를 통해 설정을 저장하고, 크로스 컴파일 환경을 빌드한 다음 대상 기기에 설치하면 별다른 설정 없이 기본적으로 웹 인터페이스에 접근이 가능해진다. OpenWRT 웹 인터페이스 주소는 기본적으로 192.168.1.1이다.





반응형
블로그 이미지

Bryan_

,