외부에서 라즈베리파이 접속하기(포트포워딩)
포트포워딩이란?
ip주소와 포트 결합의 통신 요청을 다른 곳으로 넘겨주는 네트워크 주소 변환의 응용을 포트포워딩이라고 한다.
보통의 가정집에서 하나의 공인 ip를 가지게 되는데 해당 공인 ip에 특정 포트를 우리 내부의 사설 ip의 특정 포트랑 연결시켜주는 것으로 라즈베리파이에 외부 접속할 수 있다.
공인ip:포트 –> 사설ip:포트(우리의 경우 라즈베리파이의 사설 ip)
라즈베리파이 ip 및 포트 확인
ifconfig 명령어를 사용하면 라즈베리파이에 할당된 사설 ip를 확인할 수 있다.
(해당 명령어를 사용하는데 패키지가 설치되지 않았다고 하면 친절히 알려주는 명령어로 패키지를 설치하자.)
그리고 기본적으로 라즈베리파이에 설치한 우분투서버는 22번 포트가 열려있다. 아래 명령어로 확인해보자.
netstat -nap | grep LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
위 처럼 확인할 수 있을 것이다. 기본적으로는 22번을 그대로 사용하지 않고, 22번을 닫은 후 2222번 등 새로 포트를 열어서 연결시켜주는 것이 좋은데 여기서는 기본 포트 그대로 포트포워딩을 진행해보겠다.
공유기 설정
공유기 접속 방법을 참고해서 공유기에 접속하자.
고급 설정 -> NAT/라우터 관리 -> 포트포워딩 위와 같이 메뉴가 있을 수도 있고, 중간의 이름을 다를수도 있지만 포트포워딩 부분으로 가자.
화면은 다를 수 있지만 외부포트에는 내가 외부에서 접속할 포트를 입력해주면 된다.
7557 포트를 사용할 예정이라면 입력칸 2개에 모두 7557을 입력해주면 된다.
내부 ip주소에는 라즈베리파이의 사설 ip를 적고 내부 포트에는 22번(기본적으로 열려있던 포트, 만약 22번을 닫고, 다른 포트를 열었다면 다른 포트를 적어야함)을 적어주면 된다.
포트를 적는 칸이 두개라면(포트범위 입력) 둘다 같은 포트를 적어주면 된다.
프로토콜은 tcp를 선택하고 해당 포트포워딩에 대한 구분 및 설명을 위해 설명글을 적어주면 된다.
포트포워딩 활성화 버튼이 있다면 체크 표시하고 추가 버튼과 저장 후 적용을 누르면 해당 ip들의 포트포워딩이 적용된다.
보통 입력창 밑에 포트포워드 목록이 나타나니 제대로 입력했는지 확인해보자.
포트포워딩이 제대로 되었다면 이제 외부ip로 접속이 가능하다.
네이버나 구글에서 “내 ip” 라고 검색하면 나의 공인 ip가 나오는데 해당 ip 및 포트포워딩에 추가해준 외부 ip로 라즈베리 파이에 접속이 가능해진다.
윈도우의 경우 winscp 또는 putty를 이용하면 되고, 맥을 사용중이라면 기본 터미널에 아래 명령어를 입력하면 접속이 가능하다.
ssh 유저명@공인ip -p 외부공개포트
아직 유저를 추가한게 아니라면 유저명은 ubuntu가 된다.
Leave a comment