반응형
말랑Cow
IT
말랑Cow
전체 방문자
오늘
어제
  • 분류 전체보기 (165)
    • Linux (33)
    • Windows (6)
    • Network (7)
    • Hardware (10)
    • Zabbix (13)
    • python (9)
    • script (0)
    • docker (16)
    • NAS (1)
    • DB (3)
    • php (33)
    • jQuery (1)
    • 정보보안기사 (0)
    • Ajax (1)
    • Javascript (21)
    • DELL (0)
    • HPE (0)
    • Secui (0)
    • AWS (2)
    • Elastic (0)
    • 보안 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • docker
  • 파이썬
  • Linux
  • bash
  • Shell
  • JavaScript
  • 도커
  • 서버
  • 리눅스
  • 네트워크
  • php 클래스
  • CentOS
  • ZABBIX
  • php 객체
  • 자빅스
  • php
  • 모니터링
  • jQuery
  • 자바스크립트
  • Python
hELLO · Designed By 정상우.
말랑Cow
Windows

ssh-keygen을 통한 비밀번호 자동인증

ssh-keygen을 통한 비밀번호 자동인증
Windows

ssh-keygen을 통한 비밀번호 자동인증

2021. 4. 8. 11:02
반응형

윈도우에서 powershell을 이용해 scp 명령으로 자료를 받아오는 스크립트를 만들어보려는 도중 자동으로 비밀번호를 인증시켜 작업 스케줄러에 걸어놓을 수 있는 방법을 찾던 도중 ssh-keygen 을 통해 작업이 가능함을 알게되었습니다.

 

ssh-keygen 설정에 대하여 알아보겠습니다.

 

SSH Key란?


서버에 접속할 때 비밀번호 대신 key를 제출하는 방식입니다.

 

보통 비밀번호 보다 높은 수준의 보안을 필요로 하거나 로그인 없이 자동으로 서버에 접속할 때 사용하게 됩니다.

 

SSH Key 개념에서 공개키와 비밀키에 대한 개념의 이해가 중요합니다.

 

SSH Key는 공개키(Public Key)와 비밀키(Private Key)로 이루어 지며 비밀키는 로컬머신에 위치하고 공개키는 서버에 위치합니다. 암호를 걸 때와 풀 때 사용하는 키가 다르기 때문에 비대칭 암호방식이라고 부릅니다.

공개키는 평문을 암호화한다면 비밀키는 암호문을 다시 평문으로 변환합니다.

 

예를들어 집에서 회사 서버에 접속한다고 가정해보겠습니다.

집에서 공개키/비밀키를 생성해둡니다. 그리고 공개키를 서버에 보냅니다.

이 때 해커가 네트워크상에서 공개키를 낚아챕니다.

서버에 공개키를 보낸 후 집에서 비밀키로 암호화하여 서버에 정보를 전달합니다.

이 때 해커가 조금전에 낚아챈 공개키를 사용하여 집에서 회사서버로 보낸 명령을 복호화합니다.

집에서 회사서버로 보낸 정보를 강탈하는데 성공합니다. (어떤 정보를 요청했는지 알게 됩니다. 클라이언트->서버)

 

서버에서 집 PC의 요청을 받아 정보를 가공하여 집 PC로 전달합니다.

집에서 비밀키로 서버가 보낸 정보를 해석합니다.

이 때도 해커가 서버에서 집으로 보낸 정보를 낚아챕니다.

하지만 비밀키가 없기 때문에 복호화 할 수 없습니다.(비밀키는 집PC에만 있고 네트워크상으로 전달하지 않았기 때문)

결국 해커는 클라이언트(집)가 서버(회사)로 요청한 정보가 무엇인지는 알아낼 수 있지만 서버가 클라이언트로 보낸 응답에 대해서는 해석할 수 없게 됩니다.

 

SSH Key 생성하기


1. powershell을 실행합니다. (실행 -> powershell)

 

 

2. ssh-keygen으로 키를 생성합니다.

 

1번은 key를 저장할 위치를 입력합니다. (그냥 Enter 시 Default 폴더에 저장됨. 위에선 c:\users\wlsgh/.ssh/id_rsa 가 됩니다.)

2번은 키를 사용할 때 필요한 비밀번호를 입력합니다. (비밀번호 없이 그냥 로그인하려면 그냥 Enter)

3번은 비밀번호 확인 입니다.

 

키를 사용할 때 비밀번호를 설정하는 이유는 혹시라도 비밀키가 유출되었을 때 비밀번호를 입력해야 사용할 수 있기 때문에 보안상 더 안전합니다.

 

3. 키 파일이 생성되었는지 확인합니다.

 

SSH Key 서버에 업로드


1. scp 로 public 키 파일 전송

 

2. 해당 서버에 잘 전송되었는지 확인

 

SSH Key 파일 등록


서버에서 작업합니다.

이후 로컬머신에서 서버로 SSH 접속을 시도해봅니다.

비밀번호 입력란 없이 바로 접속되는 것을 확인할 수 있습니다.

(만약 위 키생성 시 비밀키 비밀번호 입력을 했다면 해당 비밀번호를 입력해야 접속이 됩니다)

반응형

'Windows' 카테고리의 다른 글

[error] e1dexpress event id 27 - 네트워크 끊김현상  (0) 2022.02.12
BOOTMGR IS MISSING 원인 및 해결방법  (0) 2021.04.22
Powershell 스크립트 실행하기 (PSSecurityException 에러)  (0) 2021.04.09
[Windows10] GOD MODE ?  (0) 2021.02.26
윈도우 10 정품인증 CMD  (0) 2021.02.10
  • SSH Key란?
  • SSH Key 생성하기
  • SSH Key 서버에 업로드
  • SSH Key 파일 등록
'Windows' 카테고리의 다른 글
  • BOOTMGR IS MISSING 원인 및 해결방법
  • Powershell 스크립트 실행하기 (PSSecurityException 에러)
  • [Windows10] GOD MODE ?
  • 윈도우 10 정품인증 CMD
말랑Cow
말랑Cow

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.