SSH란 무엇인가?
SSH는 Secure SHell의 줄임말로 네트워크상에서 다른 PC에 로그인하거나 원격 시스템에서 명령을 실행하며, 다른 시스템으로 파일을 복사할 수 있도록 해주는 응용프로그램 또는 프로토콜을 의미한다.
기존의 rsh, rlogin, 텔넷 등을 대체하기 위해 만들어졌으며, 22번 포트를 사용하며, 암호화 기법을 사용하여 통신이 노출된다 하더라도 암호화 된 문자로 보일 수 있게 한다.
SSH 작동 원리
SSH의 보안 방식은 가장 대중적으로는 Key 방식을 사용한다. 사용자와 서버가 각각 키를 가지며 이 키를 대조하여 상대를 인증하고 안전하게 데이터를 송,수신한다. 키를 생성하는 방식에 따라 대칭키와 비대칭키가 나뉜다.
먼저 비대칭 키이다.
비대칭 키는 공개키와 비공개키로 나뉘며 공개키는 pub, 비공개는 pem의 파일 형식을 가진다.
public key 즉 공개키는 공개되어도 비교적으로 안전한 key를 의미하며 이 키를 통해서 암호화를 진행한다. 이 키는 암호화는 되지만 복호화가 불가능하다는 특성이 있다.
private key 즉 비공개 키는 외보로는 노출되면 안되는 key를 의미한다. 보통 컴퓨터 내부에 저장하며 이 키는 암호화 된 메세지에 대해 복호화 하는 기능을 가진다.
대칭키 방식
대칭 키 방식은 사용자와 서버가 하나의 대칭키를 만들어 공유한다.
이 공유된 대칭키를 이용해서 정보를 암호화하면, 같은 키를 통해서 암호를 풀어 습득하게 된다.
이렇게 정보의 교환이 끝나면 대칭키가 폐기되며 새로운 대칭키를 생성해 다시 사용하게 된다.
SSH 클라이언트
SSH 클라이언트는 SSH 프로토콜을 통해서 원격 시스템에 연결할 수 있도록 하는 소프트웨어이다.
대표적인 SSH 클라이언트로는 Putty, Secure CRT, Win SCP 등이 존재한다.
'[Linux]' 카테고리의 다른 글
SMB / NFS / CIFS란 무엇인가? (23) | 2023.11.20 |
---|---|
DB 접근 제어 방식 (22) | 2023.09.25 |
프록시란 무엇인가? (1) | 2023.09.13 |
Linux 디스크 마운트 하기 (21) | 2023.09.11 |
ln이란 무엇인가? (34) | 2023.09.06 |