1 minute read

리눅스 서버만들기 - 5일차

첫 외부망 접속 (WOL, SSH)

오늘은 원격으로 작업해보려고 합니다. 현재까지는 내부망에서 접속했는데 지금은 외부망에서 WOL으로 서버를 키고 SSH로 원격접속 해보려고 합니다.

원래 집에서 핸드폰 Cellular로 공유기 관리자 페이지로 원격 접속이 가능해서 안심하고 있었는데, 다른곳에서 접속하니 ping도 응답이 없어서 답답해 하고 있었는데… 계속 ping을 보내다 보니 응답이 오고 관리 페이지도 접속이 됩니다?

뭔가 DNS가 문제가 있는건지… IP로 접속하려 해도 안됬었는데… 하여튼 포트포워딩해둔 SSH까지 접속이 잘되니 다행이네요.

(2024.03.01 추가: 마인크래프트 서버를 돌리면서 친구들이 접속이 바로 되는것으로 보여서, 아마 본가에 뭔가 문제가 있는듯 싶습니다.)

VPN 설정

공유기 관리 페이지도 접속이 되니 VPN설정도 이왕김에 해보겠습니다.

https://blog.naver.com/mulmandu-camp/222405650701

IPTIME 공유기의 VPN 설정을 위 사이트에 있는 대로 설정하고 접속해보겠습니다.

Screenshot 2023-12-26 at 9.56.27 PM.png

VPN이 접속이 되고, Chrome에서도 공유기 내부 IP로 접속하면 관리 페이지가 뜨는데, 터미널에서 arp -a를 하면 VPN의 내부망의 정보가 아니라 현재 접속해 있는 공유기의 내부망 리스트를 보여줍니다. 서버의 내부망 IP를 ping 해봐도 timeout이 뜨네요.

추가로 iptime에서 제공하는 WireGuard 서버를 사용해도 안되고, 우분투 서버에 OpenVPN 서버를 설치하니 OpenVPN 접속 자체가 안됩니다.

일단 Time Machine 백업이 급한건 아니니 Docker부터 해봐야겠습니다.

Docker

일단 Docker를 사용해보기 위해 예전에 만들어 놓은 디코봇을 Docker로 시험삼아 올려 보려고 합니다.

https://github.com/JustYOLO/discord_bot

예전에 친구들이 롤 5대5 할때 팀 라인 랜덤으로 정해주는 봇을 만들다 말았는데 이걸 올려보려고 합니다.

저는 CLI환경이든 GUI환경이든 Docker를 사용해본적 없어서 감안해주시고 봐주시면 감사하겠습니다.

https://docs.vultr.com/how-to-run-a-python-discord-bot-on-a-docker-application

에 설명을 참조했습니다.

중간에 Dockerfile을 만드는 부분에서:

FROM python:3
FROM gorialis/discord.py

RUN mkdir -p /usr/src/bot
WORKDIR /usr/src/bot

COPY . .

CMD [ "python3", "discord_bot.py" ]

같이 되어 있는데, 추가적으로 라이브러리가 필요 할때 (위의 코드에서는 dotenv가 필요) 어떻게 해야 할지 몰라서 조금 찾아봤습니다.

FROM python:3

RUN mkdir -p /usr/src/bot
RUN pip3 install discord
RUN pip3 install load_dotenv
WORKDIR /usr/src/bot

COPY . .

CMD [ "python3", "bot_with_name.py" ]

이렇게 Dockerfile을 만드니 실행이 됩니다.

위에서

FROM gorialis/discord.py

이 줄이 있어도 작동하고 없어도 작동하는데 명확한 이유를 모르겠습니다.

Docker도 공부가 많이 필요할것 같네요 -_-

Comments