Linux

[리눅스] ssh 명령어 완벽 가이드 사용법

인생아 2024. 9. 29. 10:14
반응형

ssh (Secure Shell)는 네트워크 상의 다른 컴퓨터에 안전하게 접속하기 위한 프로토콜이자 명령어입니다. 서버 관리, 원격 파일 전송 등 다양한 작업을 안전하게 수행할 수 있으며, 통신 내용은 암호화되어 해킹에 대한 위험을 최소화합니다. 주로 원격 서버에 접속하여 터미널을 통해 명령을 실행하거나 서버의 파일 시스템에 접근할 때 사용됩니다.

ssh 명령어의 기본 구조

ssh [옵션] 사용자이름@서버주소
  • 사용자이름: 원격 서버의 사용자 계정
  • 서버주소: IP 주소 또는 도메인 이름
  • 옵션: 추가적인 설정을 위한 다양한 옵션

ssh 명령어 사용 예제

기본적인 원격 서버 접속

user@linux:~$ ssh john@192.168.1.10

실행 결과 (예시):

The authenticity of host '192.168.1.10 (192.168.1.10)' can't be established.
ECDSA key fingerprint is SHA256:abcdef1234567890.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.1.10' (ECDSA) to the list of known hosts.
john@192.168.1.10's password:

이 명령어는 192.168.1.10 IP 주소를 가진 원격 서버에 john 계정으로 접속을 시도합니다. 처음 접속 시 해당 서버의 공개 키를 신뢰할 것인지 묻는 메시지가 출력되며, "yes"를 입력하면 연결이 완료되고 비밀번호 입력을 요구합니다.

다른 포트를 이용한 접속

기본적으로 ssh는 포트 22를 사용하지만, 만약 서버가 다른 포트를 사용할 경우 -p 옵션으로 지정할 수 있습니다:

user@linux:~$ ssh -p 2222 john@192.168.1.10

여기서 2222 포트를 통해 접속하는 것을 의미합니다.

암호 없이 SSH 키를 이용한 로그인

  1. SSH 키 생성:
user@linux:~$ ssh-keygen -t rsa -b 4096

실행 결과 (예시):

Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa):

SSH 키를 생성하면, 기본 경로인 /home/user/.ssh/id_rsa에 개인 키가 저장됩니다.

  1. 원격 서버에 공개 키 복사:
user@linux:~$ ssh-copy-id john@192.168.1.10

실행 결과 (예시):

john@192.168.1.10's password: 
Now try logging into the machine, with "ssh 'john@192.168.1.10'", and check to make sure that only the key(s) you wanted were added.

이제 비밀번호 없이 원격 서버에 SSH 키를 사용하여 로그인할 수 있습니다.

원격 명령 실행

SSH를 통해 원격 서버에서 특정 명령을 실행하고 결과를 확인할 수 있습니다. 예를 들어, 원격 서버의 디렉토리 목록을 확인하려면 다음과 같이 명령어를 사용할 수 있습니다:

user@linux:~$ ssh john@192.168.1.10 'ls -l /home/john'

실행 결과 (예시):

total 4
drwxr-xr-x 2 john john 4096 Sep 27 12:00 documents

SSH 연결 끊기

원격 서버에서 작업을 완료한 후에는 exit 명령어를 통해 연결을 종료할 수 있습니다:

john@server:~$ exit
logout
Connection to 192.168.1.10 closed.

추가 옵션

  • -i: 특정 키 파일을 지정하여 로그인할 때 사용합니다.
  • -L: 로컬 포트 포워딩을 설정하여 네트워크 트래픽을 터널링할 수 있습니다.
  • -C: 데이터를 압축하여 전송, 속도를 향상시킬 수 있습니다.

참고 사이트

반응형