서론
안녕하세요!
많은 분들이 아시겠지만 오라클 클라우드는 '평생 무료' 라는 플랜에 심지어 1GB + VCPU 1을 무료로 제공하는 엄청난 메리트를 가지고 있지만 이 모든 걸 상쇄하는 막강한 단점이 존재합니다
바로 'ssh 키 접속 불편함' 이죠
사실 다른 분들을 보면 대부분 putty를 통해 키를 생성하고 console에서 입력하는 방법을 쓰지만
저는 이게 귀찮아서 그냥 기본 설정된 key를 사용합니다
근데 무려 [ 키가 너무 공개되었습니다 ] 오류를 띄우며 접속이 안 되는 문제가 있죠
오늘은 클라우드 생성 ~ ssh 접속까지 한번 세팅해보겠습니다
OCI - 오라클 클라우드 프리티어 인스턴스 생성하기
우선 cloud.oracle.com 에 접속해서 혹은 구글에 [ 오라클 클라우드 검색 ] 후 로그인을 해줍니다
계정이 있으시면 로그인을 없으시면 가입하세요
> 지역은 춘천 south west 를 추천드리고 가능하다면 Seoul이 낫지만 여긴 입구컷이 매우 세기에 운이 좋아야 가능합니다
어쨋든 로그인을 하면 위와 같이 콘솔이 뜹니다
구글 클라우드나 AWS / AZURE 쓰다 오니 참 불편하네요 ( UI 쓰읍 )
핀 설정 안 건드셨으면 여기에 Instances Compute 눌러서 들어가줍니다
잠시 기다리면 이런 게 뜨는데
' 어 ? 아무것도 없어?! ' 가 아니라 이게 정상입니다
왼쪽 아래 이거 누르면 자신 계정이 뜨는데 이걸 누릅니다
자 이런 게 나오면 우리의 충실한 서버를 구축해보죠
create Instance를 눌러줍니다
이런 게 나오면 [ Image and Shape ] > edit 을 눌러서 Image를 Ubuntu 혹은 Arch 등 본인에게 편한 걸로 바꿔줍니다
평생 무료 적격 [ Always Free ] 붙어있는 머신 유형으로 고르셔야 무료로 설정됩니다
사실 싱가포르 달러 300달러 정도 첫 사용자에게 주긴 하는데 이건 윈도우 쓰려면 과금해야 합니다
SSH 설정
사실 이게 이 글을 쓰게 된 원인인데
두개 다 눌러서 다운받아줍니다
원래 보통은 paste를 통해서 하는데 우린 이거 귀찮으니 건너뜁시다
putty 가지고 연결하는 것도 좋긴 한데 저는 termius 쓰고 있어서 필요없어요 ( [유료] 돈이 최고 )
부트 볼륨은 대략 200기가 정도가 무료인데
사실 200기가를 한 인스턴스에 때려넣으면 인스턴스 (2개 공짜) 중 하나를 못 쓰게 되니 50~150 사이로 맞춰서 지정해보세요
다른 인스턴스 서버 하나 더 쓰고 싶으면 최소용량 50기가 맞춰서 150으로 맞추면 됩니다
VPU는 IOPS입출력 속도를 설정하는 거라고 보면 되는데
이건 요금 안 나가니 최대로 해줍니다 ( 안 하면 느림 )
CREATE 누르고 잠시 기다립니다
위와 같이 뜨면 인스턴스는 처리가 끝난겁니다
Instance access
요런 메뉴 보면 하위에 Public IP address 가 있는데 여기서 ip 주소 복사해주세요
그리고 ssh 접속에 사용할 툴을 정해야 합니다
termius를 주로 사용하긴 하는데 일반적인 다른 툴에도 사용하게 파워셸로 접속해보겠습니다
자 다운받은 키파일을 찾아서 .key 파일을 우클릭 -> 속성으로 들어가줍니다
이거 안 하면 오류나니 필수로 해주세요 - 공개키 오류뜹니다
여기서 보안을 열어 보면 계정이 많이 보일건데
다 무시하고 아래에 고급을 누르세요
그러면 뭔가 권한이 많이 보이는데
[상속 사용 안 함 ] 누르세요
이거 뜨면 2번째 [ 이 개체에서 상속된 사용 권한을 모두 제거합니다 ] 클릭
여기서 [ 추가 (D) ] 를 눌러줍니다
여기서 보안 주체 선택을 눌러주세요
여기서 본인의 컴퓨터 계정 이름을 입력합니다
예를 들어 오프라인 계정이 user 이면 > user 입력
온라인 계정 타입( MS 로그인 )이면 이메일 입력
이후에 이름 확인 > 계정이 추가 되면 모든 권한을 주고 닫습니다
( 적용은 꼭 하시길 )
이후 C 드라이브에 [ KEY ] 혹은 자신이 알아보기 쉬운 형태로 폴더를 만들고 키 이름을 알기 쉽게 바꿔줍니다
EX ) key > login.key
+ 이름 바꾼 키 파일도 C 드라이브 아래 폴더로 옮겨줍니다
SSH 로그인
자 이제 귀찮은 것이 모두 끝났기 때문에 SSH에 로그인 해보도록 하겠습니다
이런 식으로 파워셸 창을 띄워주구요
WINDOWS 10 REDSTONE 이상의 OS라면 기본적으로 OPENSSH CLIENT 가 설치되어 있거나
맥북의 경우 터미널을 사용할 수 있죠
그리고 일반 SSH와는 다른 하나의 옵션을 추가로 줄 겁니다
-I (Identifi file) 경로와 파일명을 적어줍니다
저 처럼 C > key > login.key 파일이 있는 경우 다음과 같이 명령어를 입력해줍니다
ssh ubuntu@{OCI PUBLIC IP} -i C:\KEY\login.key
여기서 oci public ip만 인스턴스 생성 과정에서 본 ip로 바꿔 주고
새로운 지문 연결을 yes로 승인해줍니다
(ubuntu는 기본 사용자 이름이기 때문에 변경할 수 있습니다 - 계정 추가 등 )
잠시 기다리면 위와 같이 터미널이 연결되는 모습을 보실 수 있습니다
VSC - Visual Studio Code OCI SSH 설정
요건 위와 같이 간단한 과정과 비슷하지만 한 가지 추가 설정이 필요합니다
우선 확장 > SSH 검색 후 위에 Microsoft 체크 무늬가 있는 파란 [ Remote - SSH, * : Editing 어쩌구 ] 를 깔아줍니다
옆에 보면 원격 탐색기라는 게 생기고 SSH 옵션이 있습니다
CTRL + SHIFT + P 를 눌러서 명령 탐색기를 열어도 좋지만 그냥 추가해볼게요
이런게 뜨면 -I를 제외하고
ssh ubuntu@{oracle cloud public ip }
이것만 입력해서 접속해줍니다
Host Oracle Cloud
HostName {Your Oracle Cloud IP}
User ubuntu
IdentityFile C:\KEY\login.key
그리고 코드 블럭 ( ssh config )를 열어서 다음과 같이 입력하고 저장 > 재시작 후에는 ssh 호스트 연결을 통해 편하게 연결할 수 있습니다
( 첫 연결 시 코드 서버 설치로 매우 오랜 시간이 소요되거나 느려질 수 있음 )
질문이 있으시면 깃허브 issue로 question repo로 남겨주시거나 댓글로 남겨주시면 응답해드립니다 :)