logo

SSH를 사용하여 Linux에서 원격 서버에 연결하는 방법 | SSH 명령

일반적으로 SSH로 알려진 Secure Shell은 서버라고 하는 멀리 있는 컴퓨터와 통신하는 매우 안전한 방법과 같습니다. 이는 대화를 안전하게 비공개로 유지하는 인터넷의 비밀 터널과 같습니다. 당신이 편지를 보낸다고 상상해 보세요. 공개적으로 보내는 대신 당신과 당신이 보내는 사람만이 열 수 있는 마법의 봉투에 편지를 넣습니다. 이것이 컴퓨터 대화를 위해 SSH가 하는 일입니다.

이 기사는 초보자, 이제 막 이 일을 시작한 사람들이 SSH 사용 방법을 이해하는 데 도움을 주기 위해 작성되었습니다. 특별한 명령(비밀 핸드셰이크처럼 생각)을 사용하여 컴퓨터를 Linux 세계의 멀리 있는 서버에 연결하는 단계를 보여 드리겠습니다. 이 가이드가 끝나면 SSH를 사용하여 원격 서버를 처리할 때 컴퓨터가 안전하게 통신하도록 하는 데 더 자신감을 갖게 될 것입니다.



SSH란 무엇입니까?

SSH(Secure Shell)는 안전하지 않을 수 있는 네트워크를 통해 두 시스템 간의 보안 통신을 가능하게 하도록 설계된 암호화 네트워크 프로토콜을 구성합니다. 이 프로토콜은 서버에 대한 원격 액세스와 컴퓨터 간의 파일 보안 전송에 널리 사용됩니다. 본질적으로 SSH는 네트워크가 보안 위험을 초래할 수 있는 시나리오에서 통신을 위한 기밀 채널을 설정하는 보안 통로 역할을 합니다. 이 기술은 제어되고 보호되는 방식으로 서버를 관리하고 중요한 데이터를 컴퓨터 간에 전송하는 안정적이고 안전한 방법을 찾는 전문가에게 중요한 도구입니다. ssh는 TCP/IP 포트 22에서 실행됩니다.

Linux의 SSH 명령 구문

SSH 명령을 사용하기 위한 기본 구문은 다음과 같습니다.



ssh [username]@[hostname or IP address]>

여기,

바꾸다[> username> ]>원격 서버 사용자 이름으로[> hostname or IP address> ]>서버의 호스트 이름 또는 IP 주소로.

csv 자바에서 읽기

전제 조건

SSH의 세계를 탐구하기 전에 특정 전제 조건이 충족되었는지 확인하는 것이 중요합니다. 원활한 연결을 보장하기 위한 체크리스트는 다음과 같습니다.



  1. 원격 컴퓨터 상태:
    • 원격 컴퓨터가 켜져 있고 활성 네트워크 연결이 있는지 확인하십시오. SSH는 네트워크 연결에 의존하며 원격 서버에 액세스할 수 있어야 합니다.
  2. 식별 정보:
    • 원격 시스템의 IP 주소 또는 이름을 얻습니다. 이 정보는 SSH 연결을 올바른 서버로 연결하는 데 중요합니다.
  3. 접근 권한:
    • 원격 컴퓨터에 액세스하는 데 필요한 권한이 있는지 확인하십시오. 여기에는 일반적으로 원격 서버에 대한 유효한 사용자 이름과 비밀번호가 포함됩니다.
  4. 방화벽 설정:
    • 로컬 컴퓨터와 원격 서버 모두에서 방화벽 설정을 확인하세요. SSH 연결은 특정 포트(일반적으로 포트 22)를 사용하므로 방화벽이 SSH 트래픽을 허용하는지 확인하는 것이 중요합니다. 보안 통신을 허용하려면 조정이 필요할 수 있습니다.

Linux에 SSH 구성 요소 설치

일부 배포판에는 SSH가 사전 설치되어 있지 않으므로 Linux에서 SSH를 설정해야 할 수도 있습니다. 널리 사용되는 SSH 구현인 OpenSSH를 설치하거나 Ubuntu용 PuTTY 클라이언트와 같은 그래픽 사용자 인터페이스(GUI) 솔루션을 선택하면 이 문제를 해결할 수 있습니다. 다음은 클라이언트 측과 서버 측 모두에서 OpenSSH를 설치하고 구성하는 방법에 대한 단계별 가이드입니다.

클라이언트와 서버 모두에 설치

Debian/Ubuntu 기반 시스템의 경우 터미널을 열고 다음을 실행합니다.

sudo apt install openssh-client openssh-server>

CentOS 또는 Fedora와 같은 Red Hat 기반 시스템의 경우 다음 명령 중 하나를 사용하십시오.

sudo dnf install openssh-clients openssh-server>

또는

sudo yum install openssh-clients openssh-server>

메모 : 설치 후 실행 중인 서버의 상태를 확인하려면 systemctl status sshd 명령을 사용할 수 있습니다.

서비스가 실행되고 있지 않은 경우 다음 명령을 사용하여 실행합니다.

sudo systemctl start sshd>

이 명령은 출력을 인쇄하지 않습니다.

맘타 쿨카르니 배우

부팅 시 서비스가 자동으로 시작되게 하려면 다음을 실행하세요.

sudo systemctl enable sshd>

활성화 SSHD 서비스는 부팅 프로세스 중에 시작됩니다.

SSH를 사용하여 Linux에서 원격 서버에 연결하는 방법

이 예에서는 액세스합니다. 우분투 또는 레드햇 리눅스 `ssh`를 사용하여 Windows 명령 프롬프트를 통해 머신

문자열 분할 bash

예: IP 주소가 10.143.90.2이고 사용자 이름이 Jayesh인 경우

SSH를 사용하여 원격 서버에 연결하는 구문:

ssh [email protected]>

Jayesh 대신 사용자 이름을 추가하고 IP 주소 10.143.90.2 대신

Windows에서 Linux 시스템으로 SSH

명령은 세 가지 부분으로 구성됩니다.

  • SSH 명령 호스트 시스템과 암호화된 보안 연결을 설정하도록 시스템에 지시합니다.
  • 사용자 이름 호스트에서 액세스 중인 계정을 나타냅니다.
  • 주인 액세스되는 컴퓨터나 라우터일 수 있는 기계를 나타냅니다. IP 주소(예: 192.168.1.24) 또는 도메인(예: www.domainname.com)일 수 있습니다.

메모: 호스트 컴퓨터에 로그인한 후 명령은 호스트 터미널에 직접 작성된 것처럼 작동합니다. 공개-개인 키 쌍 또는 SSH 키 쌍을 사용하여 원격 호스트에 로그인하는 것이 비밀번호를 사용하는 것보다 더 안전합니다.

공개-개인 키를 만드는 방법은 무엇입니까?

생성을 위해 공개-개인 키 다음 명령을 사용하십시오.

ssh-keygen>
ssh-keygen

ssh-keygen

공개 키를 원격 호스트에 복사해야 하는 동안 개인 키는 숨겨진 상태로 유지되어야 합니다. 공개 키를 원격 호스트에 복사한 후에는 비밀번호가 아닌 SSH 키를 사용하여 연결이 설정됩니다.

SSH에서 사용 가능한 옵션

메모: 여기에 사용자 및 호스트 대신 연결하려는 사용자 이름과 IP 주소를 추가하세요. 그리고 localhost는 로컬 시스템의 IP입니다.

옵션 설명 통사론
-1 ssh가 프로토콜 SSH-1만 사용하도록 강제합니다.
  ssh -1 user@host>
-2 ssh가 프로토콜 SSH-2만 사용하도록 강제합니다.
  ssh -2 user@host>
-4 IPv4 주소만 허용합니다.
  ssh -4 user@host>
-6 IPv6 주소만 허용합니다.
  ssh -6 user@host>
-ㅏ 인증 에이전트 연결 전달이 활성화되었습니다.
  ssh -A user@host>
-ㅏ 인증 에이전트 연결 전달이 비활성화되었습니다.
  ssh -a user@host>
-씨 더 빠른 데이터 전송을 위해 모든 데이터(stdin, stdout, stderr 및 전달된 X11 및 TCP 연결용 데이터 포함)를 압축합니다.
  ssh -C user@host>
-씨 세션을 암호화하기 위한 암호 사양을 선택합니다. 특정 암호화 알고리즘은 클라이언트와 서버가 모두 지원하는 경우에만 선택됩니다.
  ssh -c aes256-cbc user@host>
-에프 명령 실행 직전에 ssh에 백그라운드로 이동하도록 요청합니다.
  ssh -f user@host command>
-g 원격 호스트가 로컬 전달 포트에 연결할 수 있도록 허용합니다.
  ssh -g -L 8080:localhost:80 user@host>
-N stdin에서 읽는 것을 방지합니다.
  ssh -n user@host command>
-피 원격 호스트에 연결할 포트입니다.
  ssh -p 2222 user@host>
-큐 모든 오류 및 경고를 억제합니다.
  ssh -q user@host>
-안에 버전 번호를 표시합니다.
  ssh -V>
-안에 자세한 모드. 연결을 설정하는 동안 수행 중인 모든 작업을 에코합니다. 연결 실패를 디버깅하는 데 매우 유용합니다.
  ssh -v user@host>
-엑스 X11 전달(GUI 전달)을 활성화합니다.
  ssh -X user@host>

T 세 가지 주요 암호화 기술 SSH에서 사용됩니다.

SSH는 데이터 암호화로 인해 텔넷과 같은 다른 프로토콜보다 훨씬 더 안전합니다. 있다 세 가지 주요 암호화 기술 SSH에서 사용:

  • 대칭 암호화: 이 암호화는 데이터 암호화 및 해독을 위한 단일 키 생성 원칙에 따라 작동합니다. 생성된 비밀 키는 보안 연결을 위해 클라이언트와 호스트 간에 배포됩니다. 대칭 암호화는 가장 기본적인 암호화이며 단일 시스템에서 데이터를 암호화하고 해독할 때 가장 잘 수행됩니다.
  • 비대칭 암호화: 이 암호화는 공개 키와 개인 키라는 두 가지 키를 생성하므로 더욱 안전합니다. 공개 키는 다른 호스트 시스템에 배포되는 반면 개인 키는 클라이언트 시스템에 안전하게 보관됩니다. 이 공개-개인 키 쌍을 사용하여 보안 연결이 설정됩니다.
  • 해싱: 단방향 해싱은 수신된 데이터가 변경되지 않았으며 실제 보낸 사람이 보낸 것인지 확인하는 인증 기술입니다. 해시 함수는 데이터에서 해시 코드를 생성하는 데 사용됩니다. 해시 값에서 데이터를 다시 생성하는 것은 불가능합니다. 해시 값은 발신자 측과 수신자 측에서 계산됩니다. 해시 값이 일치하면 데이터가 진짜입니다.

Linux의 `ssh` 명령에 대해 자주 묻는 질문입니다.

1) SSH는 무엇을 의미합니까?

SSH는 Secure Shell을 의미합니다.

2) SSH는 어떤 용도로 사용되나요?

SSH는 원격 시스템이나 서버에 안전하게 연결하는 데 사용됩니다. 연결된 두 시스템 간에 데이터를 전송하는 데 사용할 수 있습니다.

널 포인터 예외

3) SSH는 어떤 포트에서 실행되나요?

SSH는 TCP/IP 포트 22에서 실행됩니다.

4) SSH를 사용하여 Windows 명령 프롬프트를 통해 Linux 시스템에 어떻게 액세스할 수 있습니까?

SSH를 사용하여 Windows 명령을 통해 Linux 시스템에 액세스할 수 있습니다.

통사론:

자바 목록
  ssh user_name@host(IP/Domaimn_name)>

5) SSH를 사용하여 공개-개인 키를 어떻게 생성할 수 있나요?

명령을 사용하여 SSH를 사용하여

  ssh-keygen>

6) SSH에서 사용하는 세 가지 주요 암호화 기술은 무엇입니까?

SSH에서 사용되는 세 가지 주요 암호화 기술은 다음과 같습니다.

  • 대칭 암호화
  • 비대칭 암호화
  • 해싱

(위의 맥락에서 설명)

7) SSH를 사용하여 Linux에서 원격 서버에 어떻게 연결합니까?

` 교체 username`> 실제 사용자 이름과 ` remote_server_ip`> 원격 서버의 IP 주소 또는 도메인으로.

ssh username@remote_server_ip>

8) 특정 포트를 사용하여 서버에 연결하기 위한 SSH 명령은 무엇입니까?

이 명령은 포트 2222를 사용하여 원격 서버에 연결합니다. 필요에 따라 포트 번호를 조정합니다.

ssh -p 2222 username@remote_server_ip>

9) 어떻게 c 내 로컬 컴퓨터와 원격 서버 간에 파일을 전송하기 위해 SSH를 사용합니까?

파일 전송에 SCP를 사용합니다. 이 명령은 로컬 파일을 원격 서버의 지정된 대상에 안전하게 복사합니다. 이에 따라 파일 경로와 이름을 조정하십시오.

scp local_file.txt username@remote_server_ip:/path/to/destination/>

결론

이 기사에서는 컴퓨터가 인터넷을 통해 안전하게 통신할 수 있는 비밀스럽고 안전한 터널과 같은 SSH(Secure Shell)에 대해 논의했습니다. 이 가이드는 초보자를 위한 것이며 SSH를 사용하여 컴퓨터를 Linux 세계의 멀리 있는 서버에 연결하는 데 도움이 됩니다. 기본 SSH 명령부터 인터넷 연결 확인 및 올바른 권한 부여와 같은 전제 조건까지 모든 것을 다룹니다. Linux에 SSH를 설치하고, 보안 키를 생성하고, 보다 안전한 로그인을 위해 이를 사용하는 방법을 배우게 됩니다. 또한 이 기사에는 간단한 답변과 함께 자주 묻는 질문(FAQ)도 포함되어 있어 Linux에서 SSH를 사용하여 원격 서버를 확실하고 안전하게 관리할 수 있습니다. 이는 인터넷에서 안전하게 대화하기 위해 컴퓨터에 비밀 코드를 제공하는 것과 같습니다!