서비스를 배포하기 위한 추가적인 네트워크 설정이 필요하다. 일단 초기에 github actions로 배포 자동화 예정이기에, github actions에서 홈서버로 접속하기 위한 SSH 공개키/비공개키 관리를 해줘야한다.
SSH 공개키(공개키/비공개키 쌍)는 보통 배포(접속)할 로컬 개발PC 또는 GitHub Actions 환경에서 생성하고, 생성된 공개키(.pub 파일)를 서버의 ~/.ssh/authorized_keys에 등록한다.
공개키 생성
ssh-keygen -t ed25519 -C "deploy@lp-server"
PowerShell
복사
이런식으로 설정했다.
기존엔 RSA 방법을 많이 썼는데, ed25519가 더 보안성과 성능면에서 더 좋다고 해서 이 방법을 썼다. 자세한건 아래 참고.
이런식으로 뜨는데 그냥 다 엔터 눌러줬다.
Generating public/private ed25519 key pair.
Enter file in which to save the key (/Users/<username>/.ssh/id_ed25519): [여기에 경로를 입력하거나 엔터]
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
PowerShell
복사
서버에 키 등록
키를 생성하면 다음과 같은 경로에 각각 비공개/공개 키가 생성된다.
•
비공개키: ~/.ssh/id_ed25519
•
공개키: ~/.ssh/id_ed25519.pub
이제 여기서 공개키는 ~/.ssh/authorized_keys 에 등록하고
chmod 600 ~/.ssh/authorized_keys 로 600 권한을 준다.
비공개키는 로컬 PC나 github actions에서 서버 SSH 접속할 때 쓰기 때문에, 외부 유출 안되게 잘 저장해두면 된다.