ssh

정은경·2021년 3월 5일
0

ssh config로 여러 개의 ssh키 사용하기

  1. .ssh 폴더 하단에 config라는 이름의 파일 만들기
  2. config 파일에 ssh키를 어떻게 사용할지 설정 입력하기
Host gitlab.epinet.kr
    HostName 10.8.200.19
    Port 8002
    User git
    IdentityFile ~/.ssh/id_rsa_git

Host cbdcm
    HostName 10.8.200.49
    Port 22
    User root
    IdentityFile ~/.ssh/id_rsa_git
  1. ssh 사용해보기
    ~~
    ssh cbdcm
    ~~

공개키와 비공개키

  • ssh 키는 공개 키와 비공개 키로 쌍을 이룬다.
  • 비공개 키: 암호처럼 다뤄야 하고 절대 다른 사람과 공유해서는 안된다.
  • 공개 키: 코드 호스팅 시스템 같은 다른 곳에 "설치"될 것이다.

SSH 키 생성하기

리눅스/OS X/유닉스 변형판

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
  • 키 쌍은 /.ssh/의 적절한 장소에 저장 될 것이다.
  • 해당 키를 시스템에 등록하여 사용할 수 있다
  • 키를 로컬 "에이전트"에 등록해야 한다.
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa

공개 SSH 키 가져오기

  • 코딩 호스팅 시스템에서 "공개 SSH 키"를 요청하면 id_rsa.pub 파일의 내용이 필요한 것이다.
  • 이 파일은 보통 홈 폴터에 숨겨진 .ssh 폴더에 저장된다.
  • 공개키 복사하기 @OSX
cat ~/.ssh/id_rsa.pub | pbcopy
  • 공개키 복사하기 @윈도우, git bash
clip < ~/.ssh/id_rsa.pub

우분투 ssh 설정 살펴보기

  • 홈디렉터리 내부의 ".ssh" 디렉터리
    - .ssh 디렉터리는 user권한만 rwx이고 나머지 그룹권한은 없음을 알 수 있음
    • 이 의미는, 오직 해당 계정의 사용자만이 .ssh파일을 수정/실행할 수 있음을 의미
  • "id_rsa" 파일 : 비공개키
    - 절대 외부에 유출되면 안됨! 비공개해야함!
  • "id_rsa.pub" 파일 : 공개키
    - ssh로 접속하고 싶은 "원격서버의 authorized_keys 파일" 안에
    • id_rsa.pub 파일 안의 ssh key가 있으면
    • 해당 원격서버에 ssh로 접근가능함!

ssh-keygen

  • ssh-keygen
    엔터 누르면 패스워드 입력 화면이 나타남
    자신의 컴퓨터가 안전한 경우 패스코드 입력을 생략하며 엔터를 2회 추가로 누르고, 안전하지 않아서 패스코드를 넣으려면 패스코드 입력 후 엔터를 누르고 다시 동일한 패스코드 입력 후 엔터를 누름

여기서 생성된 id_rsa 는 절대 공유해서는 안 될 중요한 파일
SSH로 등록해서 사용할 파일은 id_rsa.pub

아래 명령어를 입력 후 엔터
cd ~/.ssh

아래 명령어를 입력 후 엔터
ls -al

아래 명령어를 입력 후 엔터
cat id_rsa.pub

출력된 내용 전체인 [ssh-rsa ... .local] 에 해당하는 부분을 전체 복사

아까 열어둔 페이지에서 [Key]의 빈 부분에 복사한 내용을 붙여넣기

[Title]은 원하는 대로 이름 넣고, [Add key] 버튼 클릭

내 로컬의 rsa.pub를 원격서버로 내보내기

ssh-copy-id 원격서버계정@원격서버주소

ssh-copy-id root@192.168.0.67

ssh 접속

ssh 원격서버계정@원격서버주소

ssh root@192.168.0.67

궁금해요

  • "ssh_config"와 "sshd_config"의 차이점은 무얼까융?!

Reference

profile
#의식의흐름 #순간순간 #생각의스냅샷

0개의 댓글