반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
Tags
- kafka
- assertThat
- jdbc
- 스프링 부트 입문
- 스프링 빈
- spring
- 스프링 부트
- 스프링 부트 기본
- 생성자 주입
- 스프링부트
- mybatis
- sqld
- JPA
- Effective Java
- thymeleaf
- DIP
- 싱글톤
- assertThrows
- 스프링 컨테이너
- resultMap
- SQL
- 필드 주입
- Javascript
- DI
- springboot
- @Configuration
- db
- 스프링 프레임워크
- 스프링
- java
Archives
- Today
- Total
선 조치 후 분석
SSH (Secure Shell)이란? 본문
728x90
반응형
SMALL
SSH(Secure Shell)
- 네트워크를 통해 안전하게 원격 컴퓨터에 접속하거나 데이터를 전송하기 위한 암호화된 통신 프로토콜
- Linux/Unix 시스템에서 원격 서버 관리를 위해 사용되며, 보안이 강화된 방식으로 데이터를 주고받을 수 있다.
- SSH는 기본적으로 TCP 포트 22번을 사용
- 다양한 목적으로 활용되지만, 가장 대표적인 사용 사례는 원격 로그인과 명령실행
SSH 특징
- 암호화된 통신
클라이언트와 서버 간의 데이터를 암호화하여 전송하므로, 네트워크 상에서 패킷을 가로채더라도 내용을 해독할 수 없다 - 인증
SSH는 비밀번호 기반 인증뿐만 아니라 공개 키/개인 키(Public Key/Private Key) 방식으로도 인증 가능
공개 키 방식은 비밀번호보다 훨씬 안전하며, 자동화 작업에 적합 - 다양한 기능
원격 로그인 : 서버에 접속하여 명령어를 실행
파일 전송 : SCP, SFTP를 사용해 파일을 전송 - 터널링(Tunneling)
네트워크 트래픽을 SSH 연결로 라우팅
사용하는 이유
- 보안성
암호화된 통신을 제공하므로, 데이터를 안전하고 주고받을 수 있음
기존의 텔넷(Telnet)이나 FTP는 암호화되지 않은 데이터를 전송하여 보안에 취약했지만, SSH는 이를 대체하여 안전성 보장 - 원격 서버 관리
서버에 직접 물리적으로 접근하지 않고도 SSH를 통해 명령어 실행, 설정 변경 등 서버 관리 작업을 수행 - 파일 전송
SSH를 기반으로 한 SCP(Secure Copy), SFTP(Secure File Transfer Protocol)를 사용하여 안전한 파일 송수신 - 포트 포워딩/터널링
SSH 터널링을 통해 네트워크 트래픽을 안전하게 라우팅 하거나 방화벽을 우회할 수 있음
예: 로컬 머신에서 원격 데이터베이스에 접근 - 자동화 지원
공개 키/개인 키 방식을 이용하면 비밀번호 없이 인증이 가능해, CI/CD 파이프라인, 배포 자동화 등에서 활용 - 플랫폼 독립성
SSH는 Windows, macOS, Linux 등 대부분의 운영체제에서 사용할 수 있음
SSH 작동 원리
- 세션 초기화
클라이언트가 서버에 접속 요청 - 서버 인증
서버는 자신의 공개 키를 클라이언트에 제공
클라이언트는 서버의 공개 키를 사용해 서버의 신뢰성 확인 - 클라이언트 인증
클라이언트는 비밀번호 또는 개인키를 사용해 서버에 인증 요청 - 암호화된 통신 시작
인증이 완료되면, 클라이언트와 서버 간의 데이터는 암호화되어 안전하게 전송
SSH의 대표적인 활용 예
- 1. 원격 서버 관리
클라우드 서버(AWS EC2, Azure, GCP) 접속 및 관리 - 2. 배포 자동화
CI/CD 파이프라인에서 SSH로 서버에 접속해 애플리케이션 배포 - 3. 보안 파일 전송
민감한 데이터를 안전하게 전송 - 4. 터널링
로컬 머신에서 원격 데이터베이스에 접근하거나 방화벽 우회
결론
SSH는 원격 시스템 관리를 위한 강력하고 안전한 도구로, 보안성, 편리성, 확장성이 뛰어나기 때문에
시스템 관리, 네트워크 관리, 그리고 DevOps 환경에서 필수적으로 사용
728x90
반응형
LIST
'ETC > IT Knowledge' 카테고리의 다른 글
리버스 프록시(Reverse Proxy)와 포워드 프록시(Forward Proxy) 차이점과 개념 그리고 웹 서버와의 차이점 (0) | 2025.01.02 |
---|---|
프록시(Proxy)란? (0) | 2025.01.02 |
REST와 MQ의 개념 및 차이점 정리 (1) | 2024.12.26 |
클러스터(Cluster)에 대하여.. (0) | 2024.12.24 |
Zookeeper 기본 개념 정리 (1) | 2024.12.18 |