본문 바로가기
개발 이야기/Etc

홈서버 설치기 - (2) 내부 고정IP와 원격 접속 설정

by 농개 2024. 9. 22.
반응형

홈서버 설치에 대한 기록입니다.

홈서버 초기 설정은 아래 글 참고!

https://basketdeveloper.tistory.com/entry/%ED%99%88%EC%84%9C%EB%B2%84-%EC%84%A4%EC%B9%98%EA%B8%B0-1-%EC%A1%B0%EB%A6%BDPC%EC%99%80-OS-%EC%84%A4%EC%B9%98

 

홈서버 설치기 - (1) 조립PC와 OS 설치

홈서버 설치 과정을 기록합니다. 목차1. SSD 구매집에 남는 조립 PC가 있어 이걸로 홈서버를 구축해볼까합니다.하지만 SSD가 없어서 구매 했어야 했습니다.조립PC는 잘몰라서 주변에 물어물어 구

basketdeveloper.tistory.com

 

 

목차

    1. 내부 IP 확인

    ip를 확인하려면 아래 명령어로 가능하다.

    # 이더넷 명, 현재 내부 ip 주소 확인
    $ ifconfig

    위 캡쳐로 예시를 들자면

    • 이더넷 이름: en0
    • 내부 IP 주소: inet (공유기를 사용한다면 192.168.0.xxx가 될것입니다.)
    • ether: MAC 주소 (보안을 위해 아무데나 노출하지마세요.)

    여기서 내부 IP 주소는 공유기를 사용한다면 변하게됩니다.

    이를 홈서버의 내부 IP 주소가 변하면 원격 접속이 불편합니다. 고정해줄 필요가 있습니다.

     

     

    2. 내부 IP 고정하기

    아래와 같이 netplan의 설정파일을 열어봅니다.

    # 만약 vim이 설치되어있지 않다면 설치
    $ sudo apt-get install vim
    
    # 아래 파일 열어 고정 ip로 수정
    $ vi /etc/netplan/01-network-manager-all.yaml

     

    그리고 아래와 같이 작성해줍니다. 작성 시, 이더넷 이름에 유의해야합니다.

    # Let NetworkManager manage all devices on this system
    network:
      version: 2
      renderer: NetworkManager
      ethernets:
        en0:
          addresses:
            - 192.168.0.xxx/24 # 고정 ip 주소
          nameservers:
            addresses: [192.168.0.xxx, 8.8.8.8, 8.8.4.4] # 기본 게이트웨이 주소 포함
          routes:
            - to: default
              via: 192.168.0.xxx # 기본 게이트웨이 주소, 보통은 192.168.0.1

     

    이 후, 적용해봅시다.

    # 네트워크 적용
    $ sudo netplan apply
    ** (generate:3150): WARNING **: 11:29:49.911: Permissions for /etc/netplan/01-network-manager-all.yaml are too open. Netplan configuration should NOT be accessible by others.
    ** (process:3149): WARNING **: 11:29:50.186: Permissions for /etc/netplan/01-network-manager-all.yaml are too open. Netplan configuration should NOT be accessible by others.
    ** (process:3149): WARNING **: 11:29:50.298: Permissions for /etc/netplan/01-network-manager-all.yaml are too open. Netplan configuration should NOT be accessible by others.
    
    # 별다른 에러 메시지가 없다면 적용됨. 위 warning은 보안 경고 메시지.
    # 변경되었는지 확인
    $ ifconfig
    
    # 인터넷 연결 확인
    $ ping google.com

     

    만약 변경이 안된다면

    /etc/netplan 디렉토리 내에 다른 yaml파일은 없는지 확인해보세요. 설정이 겹칠수 있습니다.

     

     

    3. 공유기에서도 IP 설정

    공유기에서도 IP 충돌 방지를 위해 고정IP 설정해줍시다.

    브라우저에서 192.168.0.1로 접속하여 ‘고급설정 - 네트워크관리 - 내부 네트워크설정’ 탭으로 이동합니다.

     

    위와 같이 동적 ip 주소를 제한 시켜줍니다.

    위 예시의 경우, 홈서버 ip를 192.168.0.51로 사용하고 나머지를 2~50으로 사용합니다.

     

    그리고 하단에 공유기에서 연결중인 장비와 IP 목록이 표시됩니다.

    하단에 홈서버도 잡힐 것입니다. 이를 수동 등록해줍니다.

     

     

    4. 원격접근(ssh) 설정

    홈서버를 접속할때 마다 연결된 모니터 마우스, 키보드를 이용할 수는 없기 때문에 원격 접근 설정이 필요합니다.

    # ssh 설치
    $ sudo apt update
    $ sudo apt install openssh-server
    
    # ssh 활성화
    $ sudo systemctl enable ssh
    $ sudo systemctl start ssh
    
    # ssh 상태 확인
    $ sudo systemctl status ssh

     

    방화벽도 설정해줍니다.

    $ sudo ufw status
    $ sudo ufw allow ssh

     

    이제 아래와 같이 ssh 접근이 가능해집니다.

    # 원격 접속을 수행할 pc에서 터미널을 열어 '사용자명@내부IP주소'로 연결
    $ ssh 사용자명@192.168.0.xxx

     

    단, 이 경우 내부 IP를 통한 접근이므로 동일 공유기를 사용하는 장비에서만 가능합니다.

    외부 네트워크에서 접근을 하려면 별도 포트포워딩 설정이 필요합니다. (제 경우 따로 하지 않았습니다.)

    반응형