SSH(Secure Shell) 소개

SSH(보안 셸, Secure Shell는 네트워크를 통해 다른 컴퓨터에 안전하게 접속하고 명령을 실행할 수 있도록 설계된 프로토콜입니다. SSH는 특히 원격 로그인 및 기타 네트워크 서비스를 안전하게 제공하기 위해 사용되며, 데이터를 암호화하여 전송하므로 도청과 중간자 공격을 방지할 수 있습니다.

주요 특징

암호화

  • SSH는 데이터를 암호화하여 전송합니다. 이를 통해 전송 중인 데이터가 도청되거나 변경되는 것을 방지할 수 있습니다.

인증

  • SSH는 여러 가지 인증 방식을 지원합니다. 가장 일반적인 방식은 비밀번호 인증과 공개 키 인증입니다.
  • 공개 키 인증은 특히 보안성이 높아 많이 사용됩니다. 클라이언트는 비밀 키를 사용하고, 서버는 공개 키를 사용하여 클라이언트를 인증합니다.

터널링 및 포워딩

  • 포트 포워딩 : SSH를 통해 특정 포트를 안전하게 전달하여 방화벽 뒤에 있는 서비스를 사용할 수 있습니다.
  • X11 포워딩 : SSH를 통해 X11 연결을 전달하여 원격 GUI 애플리케이션을 로컬에서 실행할 수 있습니다.

다중 세션 관리

  • SSH는 하나의 연결에서 여러 세션을 동시에 사용할 수 있습니다. 이를 통해 하나의 SSH 연결로 여러 터미널 창을 열 수 있습니다.

파일 전송

  • SSH는 SFTP(SSH File Transfer Protocol)와 SCP(Secure Copy Protocol)와 같은 파일 전송 프로토콜을 지원합니다. 이를 통해 안전하게 파일을 전송할 수 있습니다.

주요 구성 요소

SSH 클라이언트

  • SSH 클라이언트 프로그램은 원격 서버에 연결하여 명령을 실행할 수 있게 합니다.

SSHD(SSH 데몬)

  • SSH 서버 프로그램으로, 원격 클라이언트의 연결을 수신하고 인증을 처리합니다.

장점

보안성

  • 데이터 암호화 및 강력한 인증 방법으로 보안이 매우 뛰어납니다.

유연성

  • 다양한 네트워크 서비스와의 통합 및 포트 포워딩 기능을 통해 매우 유연한 사용이 가능합니다.

편의성

  • 공개 키 인증을 사용하면 비밀번호 입력 없이도 안전하게 접속할 수 있습니다.

광범위한 사용

  • 거의 모든 리눅스 및 유닉스 기반 시스템과 많은 네트워크 장비에서 기본적으로 지원됩니다.

단점

설정 복잡성

  • 공개 키 인증 및 포트 포워딩 설정 등 초기 설정이 다소 복잡할 수 있습니다.

비밀번호 관리 문제

  • 비밀번호 인증을 사용할 경우, 비밀번호 관리가 중요합니다. 비밀번호가 유출되면 보안에 큰 위협이 될 수 있습니다.

네트워크 제한

  • 일부 네트워크 환경에서는 SSH 연결이 제한될 수 있으며, 이 경우 추가 설정이 필요할 수 있습니다.

마치며

SSH는 원격 접속 및 파일 전송을 위한 안전하고 신뢰할 수 있는 프로토콜로, 시스템 관리자, 개발자, 네트워크 엔지니어 등 다양한 사용자들에게 필수적인 도구입니다. 높은 보안성과 다양한 기능을 제공하여, 네트워크를 통한 안전한 작업을 가능하게 합니다. SSH를 올바르게 설정하고 사용하는 것은 안전한 네트워크 관리의 중요한 부분입니다.

참고

같은 카테고리의 다른 글
MariaDB / 데이터베이스 이름에 하이픈(-) 또는 점(.) 포함하는 방법

MariaDB / 데이터베이스 이름에 하이픈(-) 또는 점(.) 포함하는 방법

MariaDB에 하이픈(-)이나 점(.)을 포함한 이름으로 데이터베이스를 만들면 에러가 납니다. 예를 들어 create database test-test; 라고 하면 다음과 같은 에러 메시지를 출력하면서 데이터베이스를 생성하지 못합니다. ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '-test' at ...

신용카드 / 결제일별 카드 사용 기간

신용카드 / 결제일별 카드 사용 기간

신용카드는 한 달 동안 사용한 금액을 12일에서 15일 뒤에 납부한다. 따라서 그 한 달을 어떻게 정하냐에 따라 결제일이 달라진다. 반대로, 결제일을 정하면 언제 사용한 것을 내는지 정해진다. 신용카드의 결제일별 사용 기간은 거의 비슷하나 같지는 않다. 개인적으로 전월 1일부터 전월 말일까지 사용한 것을 결제하는 걸 좋아하는데, 대부분 14일이나 현대카드는 12일이다. 국민카드 결제일 사용 기간 1 전전월 18일 ...

우리은행 / 자동이체 조회하는 방법, 해지하는 방법

우리은행 / 자동이체 조회하는 방법, 해지하는 방법

요금이나 적금 등을 납부할 때 자동이체를 많이 이용합니다. 납부일을 놓힐 위험도 없고 편하고... 하지만 경우에 따라서 자동 이체를 해지하거나 계좌를 변경해야 하는 일이 발생할 수 있는데, 은행 영업점에 방문하거나 전화하지 않아도 처리할 수 있습니다. 모든 은행이 가능한지는 모르겠으나, 우리은행은 가능합니다. 다음은 우리은행 모바일 앱인 우리 WON 뱅킹에서 자동이체를 조회하고 해지하고 등록하는 ...

네트워크 / 잘 알려진 포트, 등록된 포트, 동적 포트

포트 번호는 0~65535까지 사용 가능합니다. 이를 용도에 따라 잘 알려진 포트, 등록된 포트, 동적 포트 세 가지로 분류합니다. 관리는 IANA(Internet Assigned Numbers Authority)에서 합니다.

Apache / 디렉토리 안에 있는 디렉토리 또는 파일 목록 출력하는 방법

Apache / 디렉토리 안에 있는 디렉토리 또는 파일 목록 출력하는 방법

URL이 정확히 입력되지 않은 경우 보통 다음처럼 Forbidden 에러가 납니다. 이 에러 대신 해당 디렉토리에 있는 파일과 하위 디렉토리 목록이 나오게 하고 싶다면, 설정에 다음 코드를 추가합니다. Options +Indexes

인터넷 속도 단위 Mbps와 MB와의 관계

인터넷 속도 단위인 Mbps는 Mega Bits Per Second의 약자로, 1초당 전송하는 Mega Bit의 양입니다. 예를 들어 인터넷 속도가 100Mbps라고 하면 1초당 100 Mega Bits를 전송한다는 뜻입니다. 그런데 파일의 크기는 Byte를 단위로 사용합니다. 예를 들어 3MB 크기의 파일이라고 하면 3 Mega Bytes를 의미합니다.

보안 / 방화벽

방화벽의 정의 방화벽(Firewall)은 컴퓨터 네트워크 보안 시스템으로, 네트워크 트래픽을 모니터링하고 제어하여 신뢰할 수 없는 네트워크(일반적으로 인터넷)와 신뢰할 수 있는 내부 네트워크 간의 장벽을 형성합니다. 방화벽은 승인된 트래픽은 통과시키고, 비승인된 트래픽은 차단함으로써 네트워크 보안을 강화합니다.  방화벽의 주요 기능 트래픽 필터링 방화벽은 패킷 필터링 기술을 사용하여 네트워크 트래픽을 검사하고, 사전 정의된 보안 규칙에 따라 트래픽을 허용하거나 ...

보안 / ATP - Advanced Threat Protection

Advanced Threat Protection(ATP)는 고급 사이버 위협으로부터 네트워크, 시스템 및 데이터를 보호하기 위한 일련의 보안 솔루션입니다. ATP 솔루션은 악성 공격을 탐지하고 차단하며, 위협에 대한 심층 분석과 대응을 제공하여 기업의 보안을 강화합니다. 주요 기능 실시간 모니터링 및 분석 네트워크 트래픽과 시스템 활동을 실시간으로 모니터링하여 이상 징후를 탐지합니다. 위협 탐지 및 차단 악성 소프트웨어, 피싱, 제로데이 공격 등 ...

IP 스푸핑, MAC 스푸핑, ARP 스푸핑

IP 스푸핑(IP Spoofing) IP 스푸핑은 네트워크 공격 기법 중 하나로, 공격자가 자신의 IP 주소를 위조하여 다른 컴퓨터나 네트워크 장치를 속이는 행위를 말합니다. 이 기법은 주로 권한 없는 접근, 데이터 도청, 서비스 거부(DoS) 공격 등을 수행하기 위해 사용됩니다. 작동 원리 IP 스푸핑은 IP 패킷 헤더에 있는 발신자 IP 주소(SRC IP)를 위조하여 공격 대상이 이를 ...

FTP와 SFTP 소개 및 비교

FTP(파일 전송 프로토콜)와 SFTP(SSH 파일 전송 프로토콜)는 네트워크를 통해 파일을 전송하는 두 가지 방법입니다. 이 두 프로토콜은 파일 전송을 위해 사용되지만, 보안, 인증 및 전송 방식에 있어서 차이점이 있습니다. FTP (File Transfer Protocol) FTP는 네트워크를 통해 파일을 전송하기 위해 사용되는 표준 프로토콜입니다. 클라이언트-서버 모델을 기반으로 하며, 주로 인터넷을 통해 파일을 업로드하거나 다운로드하는 ...