컴퓨터에 원격으로 연결하려는 경우 가장 안전하고 안전한 방법 중 하나는 SSH ( Secure Shell ) 연결을 사용하는 것입니다. 이렇게 하면 사용자와 원격 호스트 간에 암호화된 연결이 생성되어 전송 중인 데이터가 어떤 식으로든 가로채거나 모니터링되지 않도록 합니다.
SSH를 통한 보안 VNC 연결(secure VNC connection over SSH) 과 같은 다른 트래픽에 대한 터널로도 SSH 를 사용할 수 있습니다 . SSH 연결을 더욱 안전하게 만드는 한 가지 방법 은 잠재적으로 크랙이 쉬운 암호를 617자리 암호화 키로 대체 하는 SSH 키를 사용하는 것입니다. (SSH)Windows , Mac 및 Linux 컴퓨터 에서 새 SSH 키 를 생성하는 방법은 다음과 같습니다.
SSH 키란 무엇입니까?(What Are SSH Keys?)
SSH 키를 사용하면 Secure Shell 프로토콜을 사용하여 암호를 사용하지 않고도 원격 서버 또는 PC에 대한 보안 연결을 생성할 수 있습니다. SSH 키는 연결된 상태로 유지되는 개인 키와 공개 키로 쌍으로 생성됩니다. 하나는 다른 하나 없이는 사용할 수 없습니다.
대부분의 경우 공개 키는 연결을 암호화하기 위해 원격 PC 또는 서버에 남아 있습니다. 그런 다음 개인 키는 해당 원격 장치를 인증하는 데 사용되므로 암호를 제공하지 않고도 연결하여 사용할 수 있습니다.
공개(Public) 및 개인 SSH 키는 동일한 전체의 두 부분입니다. 개인 키가 없으면 공개 키로 인증하고 연결을 설정할 수 없으며 공개 키가 없으면 개인 키는 쓸모가 없습니다. Windows , Mac 및 Linux 에서 새 SSH 키를 생성한 다음 공개(public ) 키를 원격 장치 로 전송할 수 있습니다.
그러면 개인(private) 키는 PC 또는 Mac 에 안전하게 저장됩니다 . 이 키의 복사본을 안전하게 저장하는 것이 중요합니다(예: 암호 관리자(password manager) 사용 ). 잃어버리면 원격 연결을 다시 설정하지 못할 수 있습니다.
공개 키나 개인 키를 다른 사람과 공유하지 않는 것도 중요하지만 특히 개인 키(또는 암호를 해독할 수 있는 암호)를 공유하지 않는 것이 중요합니다. 개인 키를 마음대로 사용할 수 있는 불량 사용자는 추가 인증 없이 원격 장치에 연결할 수 있습니다.
Windows를 사용하여 SSH 키를 생성하는 방법(How to Use Windows to Generate SSH Keys)
Windows 에서 기본 제공 (Windows)OpenSSH 클라이언트 또는 널리 사용되는 타사 PuTTY 클라이언트를 사용하여 (PuTTY)SSH 키 를 생성 할 수 있습니다 . GUI (그래픽 사용자 인터페이스 )를 사용하여 새 SSH 키 를 생성하려는 경우 PuTTY 가 가장 좋은 옵션입니다. 기본 제공 소프트웨어를 사용하려면 대신 OpenSSH ( Windows PowerShell 사용 )를 사용하세요.
Windows PowerShell을 통해 OpenSSH 사용(Using OpenSSH via Windows PowerShell)
- OpenSSH 를 사용 하려면 먼저 활성화되어 있는지 먼저 확인해야 합니다. 이렇게 하려면 시작(Start) 메뉴를 마우스 오른쪽 버튼으로 클릭하고 설정(Settings) 을 선택합니다 .
- 설정(Settings) 메뉴에서 앱 >(Apps ) 앱 및 기능(Apps & features ) > 선택적 기능(Optional features) 을 선택합니다 .
- OpenSSH 클라이언트(OpenSSH Client) 항목 에 대한 선택적 기능(Optional features) 메뉴를 살펴보십시오 . 없는 경우 기능 추가(Add a feature) 를 선택합니다 .
- OpenSSH 클라이언트(OpenSSH Client ) 옵션을 선택한 다음 설치(Install) 를 선택 하여 설치합니다. Windows 에서 필요한 소프트웨어를 설치할 때까지 잠시 기다리 십시오. SSH 를 사용 하여 Windows PC에 연결하려면 OpenSSH 서버(OpenSSH Server ) 옵션도 선택해야 합니다.
- OpenSSH 가 설치된 상태 에서 시작(Start) 메뉴를 마우스 오른쪽 버튼으로 클릭하고 Windows PowerShell(관리자)(Windows PowerShell (Admin)) 을 선택 합니다.
- 새 Windows PowerShell 창에서 ssh-keygen 을 입력하고 (ssh-keygen)Enter 키 를 선택합니다 . 이 시점에서 키에 대한 새 저장 위치와 파일 이름을 입력(enter) 하거나 간단히 Enter 키를 두 번 눌러 C:\Users\user\.ssh\ 사용자(user) 를 고유한 사용자 디렉터리로 대체 ).
ssh-keygen 도구는 기본적으로 RSA 암호화를 사용하지만 대신 ssh (dsa, ecdsa, ed25519, rsa)-keygen (ssh-keygen) -t 방법(method ) 을 입력하여 다른 형식의 암호화로 전환할 수(method) 있습니다 .
- 다음으로 암호를 입력해야 합니다. 이렇게 하면 PC의 개인 키가 암호화되며 필수는 아니지만 일반적으로 권장됩니다. 기억에 남는 단어나 구문을 사용할 수 있지만 여기 에서 보안 암호(use a secure password) 를 대신 사용할 수도 있습니다. 암호를 입력하고 Enter를 선택 하여 (Type)확인(enter) 하거나 단순히 비워두고 Enter 를 선택하여 공백으로 둡니다.
- 암호를 추가하면 Windows 에서 (Windows)C:\Users\user\.ssh\ 폴더 에 필요한 키를 생성 합니다( 사용자(user) 를 고유한 사용자 폴더 이름으로 교체 ). 기본 파일 이름을 사용하도록 선택하면 id_rsa.pub 파일이 공개 키이고 id_rsa (확장자 없음)가 개인 키입니다. 키를 생성한 후에는 공개 키를 이동해야 합니다. 키( id_rsa.pub )를 원격 PC, Mac 또는 서버 의 .ssh 디렉토리에 추가합니다.(.ssh)
PuTTY 사용(Using PuTTY)
잘 알려진 PuTTY SSH 클라이언트는 대부분의 Windows 사용자를 위한 기본 클라이언트입니다. 여기에는 새 SSH 키 를 생성하기 위한 도구인 PuTTYgen 을 포함하여 (PuTTYgen)SSH 연결 을 설정하기 위한 몇 가지 다른 도구가 포함됩니다.
- PuTTY 를 사용하여 (PuTTY)SSH 키 를 생성 하려면 PC용 PuTTY를 다운로드하여(download PuTTY for your PC) 설치하십시오. 설치가 완료되면 시작(Start) 메뉴 에서 PuTTYgen (포함된 SSH 생성기 도구)을 시작하고 옵션 을 생성할 키 유형 에서 (Type of key to generate)RSA 를 선택한 다음 생성(Generate) 을 선택 합니다. 대체 암호화 옵션 중 하나를 선택할 수도 있지만 아래 단계는 다를 수 있습니다.
- 키를 생성하는 과정의 일부는 마우스를 무작위로 움직이는 것입니다. 키 쌍이 생성될 때까지 진행률 표시줄 바로 아래 영역에서 마우스 또는 트랙패드를 사용하여 이 작업을 수행합니다.
- 키에 암호를 추가하려면 키 암호(Key passphrase ) 및 암호 확인(Confirm passphrase) 상자에 이를 입력한 다음 공개 키(Save public key) 저장 및 개인 키 저장(Save private key) 을 선택 하여 키를 저장합니다. OpenSSH Authorized_keys에 붙여넣기 위한 공개 키(Public key for pasting into OpenSSH authorized_keys ) 상자 에서 텍스트를 선택한 다음 마우스 오른쪽 버튼을 클릭하고 복사(Copy) 를 선택하여 수동으로 복사하여 파일에 붙여넣을 수도 있습니다.
- 키를 저장하면 공개 키(public key ) 를 원격 PC, Mac 또는 서버 로 이동할 수 있습니다 . 개인 키(private key) 의 경우 선호하는 SSH 클라이언트 와 함께 사용하려면 이를 C:\Users\user\.ssh\사용자(user ) 를 올바른 사용자 디렉토리로 교체 ) 로 옮겨야 할 수 있습니다 .
Linux 또는 Mac에서 SSH 키를 생성하는 방법(How to Generate SSH Keys on Linux or Mac)
OpenSSH 는 (OpenSSH)SSH 관리 를 위한 최고의 표준 도구 세트이며 Windows 버전과 마찬가지로 ssh-keygen 도구는 Mac 또는 Linux 컴퓨터 에서 새 SSH 키 를 생성하는 가장 좋은 방법으로 남아 있습니다.
결과적으로 SSH 키 생성을 위한 (SSH)GUI 도구 는 드물고 일반적으로 권장되지 않습니다. OpenSSH 도구는 모든 Mac 컴퓨터와 거의 모든 Linux 배포판(all Linux distributions) 에 포함되어 있으므로 아래 단계는 두 플랫폼 모두에서 작동해야 합니다.
- 시작하려면 Linux PC 또는 Mac 에서 새 터미널 창을 엽니다 . Mac 을 사용하여 (Mac)SSH 키 를 생성 하려는 경우 런치패드 를 사용하여 (Launchpad)터미널(Terminal) 앱을 실행할 수 있습니다 . Linux PC 에서 새 터미널을 여는 단계는 배포판에 따라 다릅니다.
- Linux PC 또는 Mac 의 새 터미널 창에서 (Mac)ssh-keygen 을 입력 하고 Enter 키 를 선택합니다 . Windows 의 ssh-keygen 과 마찬가지로 Linux 및 Mac 버전은 기본적으로 RSA 암호화를 사용합니다. 다른 형식의 암호화를 사용하려면 ssh-keygen -t 메서드를 입력하고 (ssh-keygen -t method, )메서드(method) 를 사용하려는 암호화 형식(예: dsa, ecdsa , ed25519, rsa(dsa, ecdsa, ed25519, rsa) )으로 바꿉니다.
- 다음으로 새 SSH 키를 저장할 위치를 결정해야 합니다. 기본 파일 이름과 위치는 터미널 창에서 둥근 괄호 안에 표시됩니다. 다른 위치에 다른 파일 이름으로 키를 저장하려면 여기에 새 위치와 파일 이름을 입력한 다음 Enter 키를 선택하십시오.
- 다음으로 개인 키를 암호화하기 위해 암호를 입력해야 합니다(사용하려는 경우). 암호를 두 번 입력하거나 Enter(enter) 두 번을 선택 하여 암호를 비워 둡니다(권장되지는 않음).
- 이 시점에서 SSH 키가 RSA 암호화를 위한 기본 id_rsa 파일 이름( 공개 키의 경우 id_rsa.pub 및 개인 키의 경우 id_rsa ) 을 사용하여 지정한 저장 위치에 생성됩니다 . SSH 를 사용하여 연결을 설정하려면 공개 키( id_rsa.pub )를 원격 PC, Mac 또는 서버로 이동해야 합니다 .
SSH를 사용하여 보안 연결 만들기(Making Secure Connections Using SSH)
SSH 키를 생성했으면 공개 키를 원격 PC, Mac 또는 서버에 복사해야 합니다. 이것은 개인 키와 연결되어 선호하는 SSH 클라이언트가 일반 암호 없이 보안 SSH 연결을 설정할 수 있도록 합니다. (SSH)예를 들어 SSH를 사용하여 다른 Mac에 원격으로 연결할 수 있습니다(use SSH to connect to another Mac remotely) .
보안 SSH(Secure SSH) 연결은 또한 SSH 터널 을 사용하여 학교 또는 직장 방화벽 을 우회하는 데 도움이 될 수 있습니다. (get around a school or workplace firewall)또한 SSH 를 사용하여 Raspberry Pi 또는 기타 Linux 기반 PC 및 서버 에 연결(및 업데이트)할 수 있습니다. (connect to (and update) a Raspberry Pi)그러나 Windows 10 에서 이 작업을 수행하려면 (Windows 10)OpenSSH 서버 를 활성화해야 합니다 .
How to Generate SSH Keys on Windows, Mac and Linux
If you’re lоoking to connect remotely to a computer, one of the best and mоst secure methоds is to use a Secure Shell (SSH) connection. This creates an encrypted connection between you and the remote host, ensurіng that the data being sent can’t be intercepted or monitored in any wаy.
You can use SSH as a tunnel for other traffic, too, such as a secure VNC connection over SSH. One way you can make your SSH connections even safer is to use SSH keys, which replaces potentially easy-to-crack passwords with a 617-digit encryption key. Here’s how to generate new SSH keys on Windows, Mac, and Linux computers.
What Are SSH Keys?
SSH keys allow you to create secure connections to remote servers or PCs without using a password using the Secure Shell protocol. SSH keys are created in pairs, with a private key and a public key that remain connected—one can’t be used without the other.
In most cases, the public key remains on the remote PC or server to encrypt the connection. The private key is then used to authenticate with that remote device, allowing you to connect and use it without supplying a password.
Public and private SSH keys are two parts of the same whole—without the private key, you can’t authenticate with the public key and establish a connection, and without the public key, the private key is useless. You can generate new SSH keys on Windows, Mac, and Linux, then transfer the public key to the remote device.
The private key is then stored safely on your PC or Mac. It’s important to save a copy of this key securely (for instance, using a password manager). If you lose it, you may not be able to re-establish your remote connections.
It’s also important not to share either your public or private key with others, but especially your private key (or the passphrase that may decrypt it). With the private key at their disposal, a rogue user will be able to establish a connection to your remote device without requiring any additional authentication.
How to Use Windows to Generate SSH Keys
You can use Windows to generate SSH keys using the built-in OpenSSH client or the popular, third-party PuTTY client. If you’d prefer to use a graphical user interface (GUI) to create new SSH keys, PuTTY is the best option. If you’d rather use built-in software, then use OpenSSH (via the Windows PowerShell) instead.
Using OpenSSH via Windows PowerShell
- If you want to use OpenSSH, you’ll need to first check that it’s enabled first. To do this, right-click the Start menu and select Settings.
- In the Settings menu, select Apps > Apps & features > Optional features.
- Look through the Optional features menu for the OpenSSH Client entry. If it isn’t there, select Add a feature.
- Select the OpenSSH Client option, then select Install to install it. Allow a few moments for Windows to install the required software. If you want to use SSH to connect to your Windows PC, make sure to select the OpenSSH Server option, too.
- With OpenSSH installed, right-click the Start menu and select Windows PowerShell (Admin).
- In the new Windows PowerShell window, type ssh-keygen and select the enter key. You can type a new save location and filename for your key at this point, or simply press enter a second time to save your files in the C:\Users\user\.ssh\ folder (replacing user with your own user directory).
The ssh-keygen tool will use RSA encryption by default, but you can switch to another form of encryption by typing ssh-keygen -t method instead, replacing method with one of the available encryption options (dsa, ecdsa, ed25519, rsa).
- Next, you’ll be required to enter a passphrase. This encrypts your private key on your PC and is typically recommended, although it isn’t required. You can use a memorable word or phrase, but you can also use a secure password here instead. Type in your passphrase and select enter to confirm, or simply leave it blank and select enter to leave it blank.
- Once you’ve added your passphrase, Windows will generate the required keys in the C:\Users\user\.ssh\ folder (replacing user with your own user folder name). If you select to use the default filename, the id_rsa.pub file is your public key, while id_rsa (with no extension) is your private key. Once you’ve generated your keys, you’ll need to move your public key (id_rsa.pub) to the .ssh directory on your remote PC, Mac, or server.
Using PuTTY
The well-known PuTTY SSH client is the default client for most Windows users. It includes several other tools for establishing SSH connections, including PuTTYgen, a tool for generating new SSH keys.
- To use PuTTY to generate your SSH keys, download PuTTY for your PC and install it. Once installed, launch PuTTYgen (the included SSH generator tool) from the Start menu, select RSA from the Type of key to generate options, then select Generate. You can also select one of the alternative encryption options, but the steps below may vary.
- Part of the process of generating your keys is to move your mouse randomly. Use your mouse or trackpad to do this in the area immediately below the progress bar until the key pair is generated.
- If you want to add a passphrase to your keys, type this in the Key passphrase and Confirm passphrase boxes, then select Save public key and Save private key to save your keys. You can also select the text in the Public key for pasting into OpenSSH authorized_keys box, then right-click and select Copy to copy and paste it into a file manually.
- With your keys saved, you can then move the public key to your remote PC, Mac, or server. For your private key, you may need to move this into your C:\Users\user\.ssh\ folder (replacing user with your correct user directory) to use it with your preferred SSH client.
How to Generate SSH Keys on Linux or Mac
OpenSSH is the gold standard set of tools for SSH management and, just like the Windows version, the ssh-keygen tool remains the best way to generate new SSH keys on Mac or Linux computers.
As a consequence, GUI tools for generating SSH keys are rare and not typically recommended. As the OpenSSH tools are included with all Mac computers and with almost all Linux distributions, the steps below should work for both platforms.
- To begin, open a new terminal window on your Linux PC or Mac. If you want to use your Mac to generate SSH keys, you can launch the Terminal app using the Launchpad. The steps for opening a new terminal on a Linux PC will vary, depending on your distribution.
- In the new terminal window on your Linux PC or Mac, type ssh-keygen and select the enter key. As with ssh-keygen on Windows, the Linux and Mac version defaults to using RSA encryption. If you’d prefer to use another form of encryption, type ssh-keygen -t method, replacing method with the form of encryption you wish to use (eg. dsa, ecdsa, ed25519, rsa).
- You’ll next need to determine where you’d like to save the new SSH keys—the default file name and location will be shown in round brackets in the terminal window. If you want to save your keys somewhere else and with a different filename, type a new location and file name here, then select the enter key.
- Next, you’ll need to type a passphrase to encrypt your private key (if you’d like to use one). Type your passphrase twice, or select enter twice to leave the passphrase blank (although this isn’t recommended).
- At this point, your SSH keys will be generated in the save location you specified and using the default id_rsa filename for RSA encryption (id_rsa.pub for the public key and id_rsa for the private key). You’ll need to move your public key (id_rsa.pub) to your remote PC, Mac, or server to be able to establish your connection using SSH.
Making Secure Connections Using SSH
Once you’ve generated your SSH keys, you’ll need to make sure to copy the public key to your remote PC, Mac, or server. This links with your private key, which allows your preferred SSH client to establish secure SSH connections without a typical password. For instance, you could use SSH to connect to another Mac remotely.
Secure SSH connections can also help you get around a school or workplace firewall using an SSH tunnel. You can also use SSH to connect to (and update) a Raspberry Pi or other Linux-based PCs and servers. You’ll need to make sure you enable the OpenSSH server if you want to do this on Windows 10, however.