본문 바로가기
비즈니스 스킬/Macbook 사용팁

맥북 ssh 서버로 활용하기, Permission denied (publickey) 해결, ssh key로 연결하기

by 0pen3r 2022. 3. 3.
반응형

맥북을 ssh서버로 설정해야할 일이 있었다.

 

근데... 설명이 잘 나온 여타 리눅스와 달리 맥북은 조금씩 다른점이 있었는데..

덕분에 조금 삽질을 했다.

 

간결하게 설명하겠다.

 

#1. 설정 - 공유 - 원격 로그인:켬 으로 설정하기

일단 이것만 하면 맥북 ID/PASSWD로 ssh를 손쉽게 쓸 수 있다.

 

 

#2. ssh key(즉 public key 등록을 통해 패스워드 없이 ssh 사용하기)

퓨어한 맥북 기준. "~/.ssh" 디렉터리가 없을 가능성이 있다. 

맥북은 sshd_config 파일로 ssh 서버 설정을 해야되는데

public key 등록이 필요한 authorized_keys 파일이 (1)기본적으로 없고, (2)디폴트 경로는 ~/.ssh 로 되어있다.

 

고로 ~/.ssh/ 디렉터리 생성과 authorized_keys 생성 및 public key 등록 sshd_config 파일 설정 순서로 포스팅하겠다.

 

Step1. ~/.ssh/ 디렉터리 생성

손쉬운 생성을 위해 keygen명령어로 key랑 같이 생성해주자

순서0. 터미널을 실행해서 ssh-keygen 입력 

순서1. 디폴트 경로 : /Users/사용자명/.ssh/id_rsa 이므로
별도로 지정할거 아니면 엔터

순서2. public key를 통해 ssh 접속 시, 패스워드 사용할거면 입력
패스워드 안쓸꺼면 엔터

순서3. 패스워드 확인이니, 입력하거 패스워드 안쓰면 엔터

위 과정을 완료하면 당신의 .ssh 디렉터리와 public/private key 파일이 함께 생성되어있을 겁니다.(번역체)

확인해보자
cd ~/.ssh
ls -al

1단계 완성

 

Step2. authorized_keys 파일 생성 및 내용 등록

authorized_keys 파일은 클라이언트가 ssh 서버에 접속할 때, 서버측에서 클라이언트의 public key 정보를 확인해서 등록된 클라이언트인지 확인할때 참조하는 파일이다.

sshd_config 파일에서 기본 참조 경로는 .ssh이므로

cd ~/.ssh/
touch authorized_keys

.ssh 경로로 이동해서 파일 생성해주자

그리고 클라이언트에서 public key 값을 복사해서(보통 id_rsa.pub) authorized_keys에 입력

 

상황에 따라 authorized_keys 파일의 권한을 조정해줘야될 수 있음

나는 귀찮으니 777로 줬다. (L2 환경에서 사용 예정)

 

Step3. sshd_config 파일 설정 변경

여기서 많이 헤맸다.

 

맥북에서 sshd를 관리하는 즉 ssh 서버 설정을 관리하는 컨피그는 sshd_config 파일이며

/etc/ssh/ 디렉터리에 위치해있다.

cd /etc/ssh
ls -al
cat sshd_config

위 명령어로 해당 컨피그를 보면

 

뭐 이것저것 설정이 되어있는데. 각설하고

클라이언트에서 맥북기반 ssh 서버로 비밀번호 입력없이 key 기반 접속을 위해서는

sshd_config 파일에서
StrictModes 값을 설정해주면 된다.


PasswordAuthentication도 변경해보고
PubkeyAuthentication도 변경해보고 했지만

답은 StrictModes 요놈이었다.

끝이다.


 

728x90
반응형