System Engineering/Linux

폐쇄망 환경에서 휴대폰 테더링으로 yum/apt 사용하기

Hopulence 2023. 4. 20. 17:51
반응형

 엔지니어로 근무하면서 보안 등을 위해 폐쇄망으로 운영되는 서버들을 종종 다뤄왔습니다. 그 중에서 필요한 어떤 패키지가 있는데 yum이나 apt와 같은 패키지 툴을 사용할 수 없는 경우는 참 당혹스러웠습니다. rpm이나 deb 파일로 PC에서 하나씩 받기에는 너무 많은 수고가 들어갑니다. 그렇게 고민하다가 고안하고 도전해 본 방법이 잘 되어서 기록해봅니다:)

 (보안을 위해 노트북 연결을 제외한 모든 로컬 네트워크는 끊는 것을 권고드립니다.)

 

준비물 : 서버, 1G 케이블, 노트북, 테더링이 가능한 휴대폰

(서버는 ubuntu 16.04로 테스트하였습니다.)

구성 형상

 


 먼저, 휴대폰 테더링으로 제공되는 와이파이에 접속된 노트북을 서버와 다이렉트로 연결해줍니다. 그리고 노트북과 서버의 각 포트에 통신에 사용할 같은 대역의 사설 IP를 할당해주고 서로를 게이트웨이로 바라보도록 합니다.

### 리눅스 인터페이스에 IP 할당
# cat /etc/network/interface

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

auto eno4
iface eno4 inet static
address 192.168.0.1
netmask 255.255.255.0
gateway 192.168.0.2 # 노트북의 IP

 

그리고 서로 다른 네트워크 간 패킷을 전송하기 위해서는 아래 커널 파라미터를 1로 수정해 주어야 합니다.

# 커널 파라미터 확인
$ cat /proc/sys/net/ipv4/ip_forward
0

$ sysctl -a | grep net.ipv4.ip_forward
net.ipv4.ip_forward = 0

# 영구적용
$ sysctl -w net.ipv4.ip_forward=1

# 일시 적용
$ echo 1 > /proc/sys/net/ipv4/ip_forward

 

 

 

'제어판 - 네트워크 및 공유센터 - 이더넷 옵션'에서 아래와 같이 설정해 줍니다.

노트북의 IP 설정

 그리고 서로 통신을 위해 라우팅과 DNS를 추가해 줍니다.

### 노트북으로의 Routing 지정
# ip route add default via 192.168.0.2 dev eno4

# ip route
default via 192.168.0.2 dev eno4
...
# vi /etc/resolv.conf
### 구글 DNS와 KT DNS
nameserver 8.8.8.8
nameserver 168.126.63.1

 

 

 

 이렇게 해서 서버쪽의 세팅은 끝났습니다. 그리고 아래와 노트북에서 명령 프롬프트를 관리자 권한으로 실행시켜 줍니다.

 route print 명령어로 현재의 Interface List와 피폴트 라우팅(0.0.0.0/0)의 Metric을 확인해보니 제 이더넷 인터페이스는 22, 와이파이 인터페이스는 1의 번호를 가지고 있으며, Metric은 40을 가지고 있습니다. 이를 토대로 서버의 대역과 와이파이 대역을 연결해 줍니다.

 

 

 

> route print

===========================================================================
Interface List
...
 22...b0 4f 13 d2 64 21 ......Realtek USB GbE Family Controller #2
 30...84 7b 57 90 e0 ac ......Intel(R) Wi-Fi 6E AX211 160MHz
  1...........................Software Loopback Interface 1
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0      192.168.40.1   192.168.40.61     40
          ...

 

 서버와의 IP 대역을 디폴트 라우팅보다 더 낮은 Metric으로 설정해 줍니다. 그리고 '제어판 - 네트워크와 공유센터 - Wi-Fi 인터페이스 - 속성'에서 아래의 그림 처럼 이더넷 네트워크를 쉐어링 해줍니다.

### IF 22 : 이더넷
### IF 30 : Wi-Fi
> route add 192.168.0.0 mask 255.255.255.0 192.168.0.1 IF 30 Metric 20
> route add 192.168.40.0 mask 255.255.255.0 192.168.40.1 IF 22 Metric 20

노트북 와이파이의 네트워크 쉐어링

 이렇게 설정하는 것으로 이더넷 인터페이스는 Wi-Fi 인터페이스로의 경로를 알게 되고, 반대로 Wi-Fi 인터페이스는 이더넷 인터페이스로의 경로를 알게 됩니다.

 

 이렇게하여 서버에서 'ping 8.8.8.8'과 'ping google.com' 등으로 외부 통신과 DNS가 잘 동작하는 것을 확인하시고 yum과 apt를 사용해서 간편하게 패키지를 다운받으실 수 있습니다.

반응형