サーチ…


前書き

セキュアシェルは、暗号化された接続を介してクライアントからサーバーにリモートアクセスするために使用されます。 OpenSSHは、リモートシェルアクセスを実現するが、暗号化されていないTelnet接続の代わりに使用されます。 OpenSSHクライアントは、デフォルトでほとんどのGNU / Linuxディストリビューションにインストールされ、サーバーに接続するために使用されます。これらの例は、SSH接続を受け入れて別のホストに接続するためにSSHスイートを使用する方法を示しています。

リモートサーバーに接続する

サーバーに接続するには、次のようにクライアント上でSSHを使用する必要があります。

# ssh -p port user@server-address
  • port - サーバのlistenしているsshポート(デフォルトのポート22)。
  • user - SSH特権を持つサーバー上の既存のユーザーでなければなりません。
  • サーバーアドレス - サーバーのIP /ドメイン。

実際の世界の例では、あなたがウェブサイトを作っていると見せかけます。サイトをホストする会社は、サーバーがWeb-servers.comのカスタムポート2020にあり、アカウント名usr1がSSH特権を持つサーバー上にユーザーを作成するように選択されていることを示しています。この場合、使用されるSSHコマンドはそのようになります

# ssh -p 2020 [email protected]

リモートシステムのアカウント名がローカルクライアントのアカウント名と同じ場合は、ユーザー名を省略することができます。あなたがいるのであればusr1その後、両方のシステム上で、あなたは私だけで使用web-servers.com代わりに[email protected]

接続先のサーバーに直接アクセスできない場合は、ProxyJumpスイッチを使用してアクセス可能な別のサーバーを介して接続し、目的のサーバーに接続できます。

# ssh -J [email protected]:2020 [email protected] -p 2222

これにより、10.0.0.1のサーバ(ポート2020上のsshを実行中)を通してサーバ10.0.0.2(ポート2222上のsshを実行中)に接続できます。もちろん、両方のサーバにアカウントを持っている必要があります。また、-JスイッチはOpenSSHバージョン7.3で導入されています。

OpenSSHスイートのインストール

SSHサーバーを削除してSSH接続を受け入れるには、 opensshインストールする必要があります

Debian:

# apt-get install openssh

アーチLinux:

# pacman -S openssh

Yum:

# yum install openssh

公開鍵と秘密鍵を生成する

SSHクライアントの鍵を生成するには:

ssh-keygen [-t rsa | rsa1 | dsa ] [-C <comment>] [-b bits]

例えば:

ssh-keygen -t rsa -b 4096 - C [email protected]

デフォルトの場所は、プライベートの場合は~/.ssh/id_rsa 、公開鍵の場合は~/.ssh/id_rsa.pubです。

詳細は、 man.openbsd.orgをご覧ください

接続を受け入れるようにSSHサーバを設定する

最初に、SSHデーモン設定ファイルを編集する必要があります。異なるLinuxディストリビューションの下では、これは異なるディレクトリに置かれるかもしれませんが、通常は/etc/ssh/sshd_config

このファイルに設定されている値を変更するには、テキストエディタを使用してください。#で始まる行はすべてコメントアウトされています。推奨事項のリストはそのように続きます。

Port (chose a number between 0 - 65535, normaly greater than four digits)
PasswordAuthentication yes
AllowUsers    user1 user2 ...etc

この文書で説明するように、セキュリティを強化するために、すべてのパスワードログインを無効にしてSSH鍵を使用することが望ましいことに注意してください。

sshサービスを無効にする

これにより、必要に応じてクライアントがssh経由で接続できないようにSSHサーバ側のサービスが無効になります

Ubuntu

sudo service ssh stop

Debian

sudo /etc/init.d/ssh stop

アーチLinux

sudo killall sshd

パスワードのない接続(鍵のペアを使用)

まず第一に、鍵のペアが必要です。まだ持っていない場合は、「パブリックキーとプライベートキーを生成する」トピックをご覧ください。

鍵ペアは、秘密鍵(id_rsa)と公開鍵(id_rsa.pub)で構成されます。公開鍵をリモートホストにコピーし、内容を~/.ssh/authorized_keysファイルに追加~/.ssh/authorized_keysです。

これを行う簡単な方法の1つは次のとおりです。

ssh <user>@<ssh-server> 'cat >> ~/.ssh/authorized_keys' < id_rsa.pub

公開鍵がユーザーのホームディレクトリに適切に配置されたら、それぞれの秘密鍵を使用してログインする必要があります。

ssh <user>@<ssh-server> -i id_rsa



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow