"SSH"의 두 판 사이의 차이
잔글 |
|||
1번째 줄: | 1번째 줄: | ||
− | 시큐어 셸(Secure Shell, SSH)은 네트워크의 다른 컴퓨터에 | + | '''시큐어 셸'''(Secure Shell, SSH)은 네트워크의 다른 컴퓨터에 로그인할 수 있으며 '''원격''' 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해주는 프로그램이다. 강력한 인증 방법으로 안전하지 못한 네트워크에서 안전하게 통신을 할 수 있는 기능을 제공한다. <ref>Omega2, 〈[https://wiseworld.tistory.com/72 (리눅스) SSH 설정 및 사용방법 (원격접속)]〉, 《티스토리》, 2020-02-17</ref> |
==개요== | ==개요== | ||
16번째 줄: | 16번째 줄: | ||
#버전 2.x | #버전 2.x | ||
#*2006년에 이 프로토콜의 개정판 시큐얼 셸 버전 2(SSH-2)가 표준으로 채택되었다. 이 버전은 버전 1과 호환되지 않는다. 현재, 국제 인터넷 표준화 기구(Internet Engineering Task Force, IETF)에서 시큐어 셸 버전 2의 표준을 관리하고 있으며 "Secsh"는 SSH 프로토콜 버전 2를 책임지는 IETF 워킹 그룹에 대한 IETF의 공식 명칭이다. <ref>위키백과, 〈[https://ko.wikipedia.org/wiki/시큐어_셸#cite_ref-1 시큐어 셸]〉, 《위키백과》, 2020-07-16</ref> | #*2006년에 이 프로토콜의 개정판 시큐얼 셸 버전 2(SSH-2)가 표준으로 채택되었다. 이 버전은 버전 1과 호환되지 않는다. 현재, 국제 인터넷 표준화 기구(Internet Engineering Task Force, IETF)에서 시큐어 셸 버전 2의 표준을 관리하고 있으며 "Secsh"는 SSH 프로토콜 버전 2를 책임지는 IETF 워킹 그룹에 대한 IETF의 공식 명칭이다. <ref>위키백과, 〈[https://ko.wikipedia.org/wiki/시큐어_셸#cite_ref-1 시큐어 셸]〉, 《위키백과》, 2020-07-16</ref> | ||
− | |||
==특징== | ==특징== | ||
33번째 줄: | 32번째 줄: | ||
#scp을 지원한다. | #scp을 지원한다. | ||
#*서버와 클라이언트 사이에 로그인하지 않고도 scp를 이용해 원격으로 파일을 복사할 수 있는 기능이다. <ref>Omega2, 〈[https://wiseworld.tistory.com/72 (리눅스) SSH 설정 및 사용방법 (원격접속)]〉, 《티스토리》, 2020-02-17</ref> | #*서버와 클라이언트 사이에 로그인하지 않고도 scp를 이용해 원격으로 파일을 복사할 수 있는 기능이다. <ref>Omega2, 〈[https://wiseworld.tistory.com/72 (리눅스) SSH 설정 및 사용방법 (원격접속)]〉, 《티스토리》, 2020-02-17</ref> | ||
− | |||
− | |||
− | |||
+ | {{각주}} | ||
== 같이 보기 == | == 같이 보기 == | ||
42번째 줄: | 39번째 줄: | ||
* [[텔넷]] | * [[텔넷]] | ||
− | {{인터넷| | + | {{인터넷|검토 필요}} |
2020년 7월 28일 (화) 08:48 판
시큐어 셸(Secure Shell, SSH)은 네트워크의 다른 컴퓨터에 로그인할 수 있으며 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해주는 프로그램이다. 강력한 인증 방법으로 안전하지 못한 네트워크에서 안전하게 통신을 할 수 있는 기능을 제공한다. [1]
개요
1995년 핀란드의 Tatu Ylönen이 시큐어 셸의 첫 버전을 프리웨어로 내놓았고, 그해 7월에는 50개국에 2만 명이 사용할 정도로 급성장 하였다. 동년 10월, SSH Communications Security이라는 회사를 창립하였고 시큐어 셸은 곧 상용 라이센스로 묶이게 되었다. 시큐어 셸은 네트워크상의 다른 컴퓨터에 로그인하거나 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해 주는 응용 프로그램 또는 그 프로토콜을 가리킨다. 이 프로토콜은 보안에 취약점을 가지고 있는 프로토콜, 즉 원격 로그인(rlogin), 원격 명령 실행(rsh), 원격 파일 복사(rcp), 원격 접속 서비스(telnet), 파일 전송용 프로토콜(ftp) 등을 대체하여 사용되며 안전하지 못한 네트워크에서 안전하게 통신을 할 수 있는 암호화된 연결을 제공한다. 기본적으로는 22번 포트를 사용하며, 암호화 기법을 사용하기 때문에, 통신이 노출된다고 하더라도 이해할 수 없는 암호화된 문자로 보인다. [2]
등장배경
기존의 프로토콜은 암호화가 되어있지 않아 네트워크 스니핑 과 같은 공격에 매우 취약하다. 스니핑은 네트워크상의 패킷을 감청하는 것을 말하는데, 이 패킷들에 아이디나 암호 같은 사용자 계정 정보나, 개인 신상 정보들에 이르기까지 사용자와 서버 간의 모든 통신 내용을 볼 수 있다는 문제가 있다. 특히 이 과정에서 서버의 관리자 계정이 탈취당할 수 있다. 이는 원격지에 파일을 전송한다던가 하는 경우에도 동일하게 적용된다. 원격지에 파일을 전송하기 위해 로그인을 하는 경우부터, 어떤 내용의 파일이 전송되었는지도 그대로 확인할 수 있다. 이러한 문제를 피하고자 “안전하지 않은 네트워크상에서, 암호화된 채널을 생성하여 안전하게 통신할 수 있는” 시큐어 셸 프로토콜이 탄생했다. 이것을 이용하면, 설령 스니핑 공격으로 패킷을 감청당하더라도 해커는 그 내용을 전혀 알 수 없게 된다. [3]
역사
- 버전 1.x
- 1995년 핀란드 헬싱키 공과 대학교의 연구원 Tatu Ylönen는 자신의 대학 망에서 발생한 암호 스니핑 공격을 이유로 SSH-1이라는 이름의 최초 버전의 시큐어 셸 프로토콜을 설계하였다. 1995년 7월 프리웨어로 출시하였고 이 도구는 빠르게 인기를 끌 게 되었다.
- 버전 1.99
- 2006년 1월 버전 2.1이 잘 정착된 이후 RFC 4253은 시큐어 셸 버전 2.0 및 이하를 둘 다 지원하는 서버가 프로토 버전을 1.99로 식별해야 한다고 규정하였다. 실제 버전은 아니며 하위 호환성을 식별하는 방식이다.
- OpenSSH / OSSH
- 1999년 오픈소스 라이센스로 풀린 1.2.12 버전을 사용했다. 이 버전을 기반으로 Björn Grönvall 라는 개발자가 OSSH 를 제작했고, 이 OSSH 를 기반으로 다시 OpenBSD 개발자들이 OpenSSH 를 개발하였다. OpenBSD 는 BSD 라이센스였으며, 거의 무제한으로 열려있었다. 이로 인해, 현존하는 대부분의 배포판에서는 OpenSSH 가 제공되게 된다.
- 버전 2.x
- 2006년에 이 프로토콜의 개정판 시큐얼 셸 버전 2(SSH-2)가 표준으로 채택되었다. 이 버전은 버전 1과 호환되지 않는다. 현재, 국제 인터넷 표준화 기구(Internet Engineering Task Force, IETF)에서 시큐어 셸 버전 2의 표준을 관리하고 있으며 "Secsh"는 SSH 프로토콜 버전 2를 책임지는 IETF 워킹 그룹에 대한 IETF의 공식 명칭이다. [4]
특징
- 암호화된 패킷을 전송한다.
- SSH에서는 기본적으로 패킷을 포함한 전송하는 모든 트래픽을 암호화해서 전송한다. 이는 도청이나 세션 하이재킹, 패킷 스니핑 등 보안 공격을 방지하는 데 효과적이라서 보안성이 뛰어나다는 평을 받는다.
- 클라이언트와 서버라는 관계가 존재한다.
- SSH를 사용할 때 두 패키지 (ssh_server, ssh_client) 사이에 TCP라는 보안 채널을 별도로 생성한다. 이 보안 채널을 통해 서로를 인증한 뒤, 서버가 클라이언트를 인증할 수 있도록 여러 프로그램을 호출한다. 보안 채널이 형성되고 나면 클라이언트에서는 여러 개의 세션을 사용할 수 있다.
- sftp를 지원한다.
- 연결된 두 시스템 간의 안전한 파일전송을 위해서 SFTP 기능을 지원한다. 서버에 접속할 계정과 해당 파일의 위치만 알고 있다면 SFTP를 이용해서 서버에 있는 파일을 가져와 사용할 수 있다.
- 패스워드 없이 로그인이 가능하다.
- 초기에 서버와 클라이언트는 계정명과 IP주소를 입력한 뒤 passwd를 요구한다. 이후에 원격접속을 시도할 때는 별도의 passwd 없이 바로 로그인할 수도 있다.
- scp을 지원한다.
- 서버와 클라이언트 사이에 로그인하지 않고도 scp를 이용해 원격으로 파일을 복사할 수 있는 기능이다. [5]
각주
- ↑ Omega2, 〈(리눅스) SSH 설정 및 사용방법 (원격접속)〉, 《티스토리》, 2020-02-17
- ↑ Omega2, 〈(리눅스) SSH 설정 및 사용방법 (원격접속)〉, 《티스토리》, 2020-02-17
- ↑ Omega2, 〈(리눅스) SSH 설정 및 사용방법 (원격접속)〉, 《티스토리》, 2020-02-17
- ↑ 위키백과, 〈시큐어 셸〉, 《위키백과》, 2020-07-16
- ↑ Omega2, 〈(리눅스) SSH 설정 및 사용방법 (원격접속)〉, 《티스토리》, 2020-02-17
같이 보기