Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure...

23
Secure Shell #ssh

Transcript of Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure...

Page 1: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

Secure Shell

#ssh

Page 2: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

1

1: Secure Shell 2

2

2

Examples 2

2

2

DebianLinuxopenssh 2

RHEL / CentOSyum 3

Arch Linuxpacman 3

OSX openssh 3

WindowsTODO 3

3

3

SSH 4

SSH 5

6

6

6

SSH 7

2: ssh 9

Examples 9

PPKPuTTYOpenSSH 9

3: ssh 10

10

Examples 10

ssh 10

ssh 10

4: ssh 11

Examples 11

OpenSSH 11

Page 3: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

11

12

13

ssh_exchange_identificationread 13

ssh_exchange_identification 14

5: 16

Examples 16

OpenSSH 16

16

16

16

6: 18

Examples 18

18

18

7: SSH 19

19

Examples 19

SSH 19

20

Page 4: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

You can share this PDF with anyone you feel could benefit from it, downloaded the latest version from: secure-shell

It is an unofficial and free Secure Shell ebook created for educational purposes. All the content is extracted from Stack Overflow Documentation, which is written by many hardworking individuals at Stack Overflow. It is neither affiliated with Stack Overflow nor official Secure Shell.

The content is released under Creative Commons BY-SA, and the list of contributors to each chapter are provided in the credits section at the end of this book. Images may be copyright of their respective owners unless otherwise specified. All trademarks and registered trademarks are the property of their respective company owners.

Use the content presented in this book at your own risk; it is not guaranteed to be correct nor accurate, please send your feedback and corrections to [email protected]

https://riptutorial.com/ja/home 1

Page 5: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

1: Secure ShellをいめるSSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプロトコルです。これは、のいプロトコル rlogin 、 rsh 、 telnet をしました。

これは、データセンターやプライベートクラウドGoogle Compute Engine、AWSなどのリモートサーバー、マシン、コンテナにするによくされます。しかし、リポジトリへのアクセスとのためにgitとにされるのは、パスワードのわりにをしてかつにされます。

また、sshのきなテーマについてもし、するトピックにリンクするがあります。 sshのドキュメンテーションはしいので、これらのトピックのバージョンをするがあります。 TODO

バージョン

バージョン リリースノート

OpenSSH 7.3p1 バージョン 2016-08-01

OpenSSH 7.2p2 2016-03-09

OpenSSH 7.1p2 2016-01-14

OpenSSH 7.1 2015-08-21

OpenSSH 7.0 2015-11-08

OpenSSH 6.9 2015-07-01

OpenSSH 6.8 2015-03-18

Examples

インストールまたはセットアップ

SSHプロトコルのであるOpenSSHは、すべてのLinuxディストリビューションでです。これは、サーバーとクライアントのパッケージでされています。

インストール

DebianベースのLinuxでは、をしてopensshをインストールできます。

https://riptutorial.com/ja/home 2

Page 6: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

# apt-get install openssh-server openssh-client

RHEL / CentOSではyumをうがあります

# yum install openssh-server openssh-clients

のFedoraはyumわりにdnfをしています。

Arch Linuxでは、pacmanをしてください

# pacman -S openssh

OSXでは、 opensshがすでにインストールされているはずです。

よりしいバージョンをしたいは、brewからopensshをインストールするがあります

# brew install openssh --with-brewed-openssl --with-keychain-support

WindowsのTODO

セットアップopensshクライアントはなをとせず、インストールにするができています。あなたはssh remoteをしてみることができます。 remoteはssh serverをしているリモートホストです。

opensshサーバーは、インストールにされ、デフォルトがされます。もしそうでなければ、あなたはsystemdベースのシステムで

システムとDebianベースのLinuxで

# systemctl start ssh

RHEL / CentOS / FedoraとArch Linuxの

# systemctl start sshd

または、アップスタートシステムで

# service sshd start

opensshは/etc/ssh/にファイルをっています。クライアントは~/.ssh/configクライアントもみんで

https://riptutorial.com/ja/home 3

Page 7: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

います。サーバーはsshd_configというファイルをしています。このファイルには、ほとんどのデフォルトがまれ、なキーとのペアがまれています。

Protocol 2 PasswordAuthentication yes ChallengeResponseAuthentication no UsePAM yes AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY X11Forwarding yes Subsystem sftp /usr/libexec/openssh/sftp-server

SSHの

ssh-keygenをしてsshをできます。これはsshインストールのであるプログラムです。これをするには、それをし、のにってください。

ここにがあります

$ ssh-keygen Generating public/private rsa key pair.

sshペアがされるデフォルトのディレクトリはホームディレクトリの.sshフォルダのにありますなパスをすることでできます。ペアのデフォルトはのid_rsaとid_rsa.pubです。

Enter file in which to save the key (/home/nasreddine/.ssh/id_rsa): /home/my_folder/my_ssh_key

あなたは、パスワードをすることによって、あなたのSSHをからすることができます。これはオプションですが、パスフレーズをすることをおめします。のコマンドプログラムとに、パスフレーズをすると、にはもされませんが、されていることにしてください。

Enter passphrase (empty for no passphrase): Enter same passphrase again:

パスフレーズをすると、ssh-keygenはをし、したパスにします。

Your identification has been saved in /home/my_folder/my_ssh_key. Your public key has been saved in /home/my_folder/my_ssh_key.pub.

もうわった。これでsshキーができるようになりました。

https://riptutorial.com/ja/home 4

Page 8: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

マシンにSSHをれる

SSHをしてマシンのユーザのアカウントにログインするには、 ssh username@ip_addressコマンドをできます。パスワードをねます。しいパスワードをすると、そのマシンのそのユーザーのシェルにされます。それのは、パスワードのをめられます。

えば

root@dev10:~# ssh [email protected] [email protected]'s password: Welcome to Ubuntu 16.04 LTS (GNU/Linux 4.4.0-31-generic x86_64) Last login: Fri Jul 22 18:33:27 2016 from 10.11.50.10 root@dev2:~#

のsshキーをしてマシンにするは、 ssh -i /path/to/ssh_secret_key username@host

めてマシンにすると、ターゲットマシンのをするようにめられます。これは、 をするためのセキュリティメカニズムです。ターゲットマシンでこのコマンドをすると、ターゲットマシンのフィンガープリントがされます。

ssh-keygen -l -E md5 -f /etc/ssh/ssh_host_ecdsa_key.pub

がじであれば "yes"とできます。パスワードプロンプトにみます。

root@dev10:~# ssh [email protected] The authenticity of host '10.11.50.3 (10.11.50.3)' can't be established. ECDSA key fingerprint is dd:a3:de:cd:5b:01:cd:0b:b6:bc:b3:09:c2:c8:1a:68. Are you sure you want to continue connecting (yes/no)? yes

https://riptutorial.com/ja/home 5

Page 9: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

Warning: Permanently added '10.11.50.3' (ECDSA) to the list of known hosts. [email protected]'s password: Last login: Fri Jul 22 17:45:09 2016 from 10.11.1.71 root@dev2:~#

サーバーユーザーのみキーのリストにキーをする

サーバーにsshするには、IDのをできるのリストにするがあります。もには、これはユーザーごとにわれます。

ssh-copy-id -i ~/.ssh/<identity>.pub <user>@<hostname>

どちらもでうことができます

cat ~/.ssh/<identity>.pub | ssh <user>@<hostname> 'cat >> ~/.ssh/authorized_keys'

これをしたで、 sshびしにIDファイルをすときにユーザーのパスワードをするなしにログインできるはずです。

パスワードをしたスクリプトからの

sshをにスクリプトするがある、パスワードをsshコマンドにすことはsshません echo passw0rd |

ssh host 。これは、パスワードがからみられるのではなく、TTYテレプリンタ、テレタイプライタ、テレタイプのなからからみられるためです。

しかし、このをsshpassためのsshpassツールがあります。パラメータ、ファイルまたはからパスワードをみることができます。しかし、これらのオプションのどれもがパスワードのセキュリティをたしていないことにしてください。

$ sshpass -p passw0rd ssh host $ sshpass -f /secret/filename ssh host $ SSHPASS=passw0rd sshpass -e ssh host

コマンドラインオプションはpsのユーザにもられますにはマスクされますが、にはできず、することはできません。

... 23624 6216 pts/5 Ss Aug30 0:00 \_ /bin/bash

... 12812 1988 pts/5 S+ 08:50 0:00 | \_ sshpass -p passw0rd ssh host

... 45008 5796 pts/15 Ss+ 08:50 0:00 | \_ ssh host

プロセスのは、 /proc/PID/environファイルをするシステムののプロセスからもアクセスであることにしてください。

に、ファイルにパスワードをするのがのえにえるかもしれませんが、のでしたようにキーをしても、 sshをするのがましいです。

https://riptutorial.com/ja/home 6

Page 10: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

ファイル

OpenSSHファイルは、sshクライアントがされるたびにされるにされます。ほとんどのコマンドラインオプションは、ファイルにれることができます。

OpenSSHは、のソースのをにします。

コマンドラインオプション1. ユーザーのファイル~/.ssh/config2. システムのファイル/etc/ssh/ssh_config3.

オプションは、ファイルに1つずつされます。

# This is a comment. # Parameter can be specified like this, separated with white space. StrictHostKeyChecking ask # Or parameter key and value may be separated with white space and =. ForwardX11 = yes # The parameter value can be quoted if it contains white space. IdentityFile "/file system/path with/white space"

なパラメータのなリストはここでできます 。

ファイルのもなの1つは、ホストまたはアドレスにづいてセクションすることができることです。このようにして、ホストごとになるをうことができます。

# Based on host name. Host host1.domain.com User user1 Host host2.domain.com User user2 # Or wildcard matching name or ip. Host *elastic-cloud.com 10.201.4.? User user3

SSHエージェント

いパスフレーズをしていて、サーバにするたびにパスワードをしたくないは、コンピュータにログインしているにSSH-Agentをしてパスフレーズをできます。

バックグラウンドでssh-agentをします

eval "$(ssh-agent -s)" # Agent pid 59566

https://riptutorial.com/ja/home 7

Page 11: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

ssh-agentにをすると、パスフレーズのをめられます

ssh-add ~/.ssh/matrix.ac # Enter passphrase for /home/osaka/.ssh/matrix.ac: # Identity added: /home/osaka/.ssh/matrix.ac (/home/osaka/.ssh/matrix.ac)

しました。すぐssh [email protected]して、パスフレーズをするはありません。 gnome-keyring /

seahorse、keychainなどのプログラムをしてこれをすることができます。

オンラインでSecure Shellをいめるをむ https://riptutorial.com/ja/ssh/topic/2070/secure-shellをいめる

https://riptutorial.com/ja/home 8

Page 12: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

2: sshキーの

Examples

PPKPuTTYキーをOpenSSHにする

あなたはPPKのピアプライベートキーからけるかもしれません。これはOpenSSHコマンドラインssh ではしないようです。 OpenSSHのバグのため、クライアントはパスフレーズをします。

$ ssh -i mykey.ppk example.com Enter passphrase for mykey.ppk:

PuTTYgenコマンドラインバージョンをして、キーをOpenSSHにするがあります。

puttygen mykey.ppk -o mykey.key -O private-openssh

または、GUIバージョン

Open PuttyGen•をクリックします。•をロードする•コンバージョンに - > OpenSSHをエクスポートし、をエクスポートする•

を~/.ssh/id_rsaコピーする•

SOえ 、 Unix SEえ

オンラインでsshキーのをむ https://riptutorial.com/ja/ssh/topic/7861/sshキーの

https://riptutorial.com/ja/home 9

Page 13: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

3: sshによるリモートファイルの

このトピックでは、sshをリモートマシンのファイルをにするためのさまざまなについてします

Examples

sshをってリモートディレクトリをマウントする

sshでリモートディレクトリをマウントすることができます。 SshfsはUbuntuではデフォルトではないので、まずsudo apt-get install sshfsをってインストールするがあります。このように、ローカルディレクトリにリモートディレクトリをマウントすることができます

sshfs [email protected]:/remotedir /localdir

remotedirをマウントするにlocaldirがするがあることにしてください。 localdirがでない、sshfsはエラーをしてします。あなたはこのようなでないディレクトリをでないオプションをってマウントするようすることができます

sshfs -o nonempty [email protected]:/remotedir /localdir

localdirをアンマウントすると、ローカルファイルがびされます。

sshをしてサーバでファイルをする

サーバでファイルをするの1つは、 scpコマンドをすることです。なコピーコマンドはsshをしてデータをします。ローカルサーバーからリモートサーバーにファイルをコピーするためのsimple

のは、のとおりです。

scp /localdir/localfile [email protected]:/remotedir/remotefile

に、リモートからローカルサーバにファイルをコピーするには

scp [email protected]:/remotedir/remotefile /localdir/localfile

オンラインでsshによるリモートファイルのをむ https://riptutorial.com/ja/ssh/topic/9693/sshによるリモートファイルの

https://riptutorial.com/ja/home 10

Page 14: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

4: sshののデバッグ

Examples

はけれられませんOpenSSHクライアントのデバッグ

デフォルトでは、ほとんどのはユーザーからされています。 -vスイッチをしてのなログをすることができます。これは、がのをすことによってをします。

ssh またはsftpやscpようなのOpenSSHクライアントをしてexample.comしていて、がサーバによってけれられておらず、サーバがパスワードをねるまたはをした

$ ssh example.com [email protected]'s password:

-vvvスイッチでsshをして、すべてのデバッグメッセージをきします。それはくのになりますが、しばらくしてから、それをするのはかなりです

$ ssh -vvv example.com

もなは、キーがされたにないことです。のがされ、ファイルがつからないとをうのをすることができます。あなたのファイルがにみまれたことをすることはいスタートです

debug1: identity file /home/username/.ssh/id_dsa type -1 debug1: key_load_public: No such file or directory debug1: identity file /home/username/.ssh/id_dsa-cert type -1

たちはにむことができます。サーバーにがあるため、キーがされるがありますが、サーバーによってされます。ログはこのようにえるかもしれません

debug3: preferred publickey,keyboard-interactive,password debug3: authmethod_lookup publickey debug3: remaining preferred: keyboard-interactive,password debug3: authmethod_is_enabled publickey debug1: Next authentication method: publickey debug1: Offering RSA public key: username@localhost debug3: send_pubkey_test debug3: send packet: type 50 debug2: we sent a publickey packet, wait for reply debug3: receive packet: type 51 debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password

ホストのがされました

sshをするなエラーはのようなエラーをすることです

https://riptutorial.com/ja/home 11

Page 15: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key has just been changed. The fingerprint for the RSA key sent by the remote host is SHA256:L5ri/Xdgpuals893ej1z5F1wlg1n2YNeBf/tsABX+QQ. Please contact your system administrator. Add correct host key in /Users/username/.ssh/known_hosts to get rid of this message. Offending RSA key in /Users/username/.ssh/known_hosts:12 RSA host key for *IP address* has changed and you have requested strict checking. Host key verification failed.

これははじサーバーにし、のホストキーをしてされたことをします。サーバーのキーをしたことがわかっているは、サーバーをインストールするか、サーバーがをしましたが、はいキーをしてsshにしいキーをさせてもsshません。

いは、 ssh-keygenをってにすることができます

ssh-keygen -R *IP address*

のでしいをするようめられます。

ssh192.168.0.128 The authenticity of host '192.168.0.128 (192.168.0.128)' can't be established. ECDSA key fingerprint is SHA256:L5ri/Xdgpuals893ej1z5F1wlg1n2YNeBf/tsABX+QQ. Are you sure you want to continue connecting (yes/no)?

のいずれかがわからないは、サーバーにしてすべてがであることをしてください。そうでない、なはとされたすべてのデータをできます。

クライアントがリモートサーバーホストにをし、リモートホストがのけれをしたとすると、「がされました」というエラーがします。 「がされました」というエラーは、に、コンピュータがされたIPアドレスとポートへのをけれていないことをします。

をブロックしているファイアウォールによって「Connection refused」がすることがあります。のエンドポイントへのをブロックするようにされたファイアウォールは、をするようにできます。この、クライアントはしてをず、にタイムアウトします。または、ファイアウォールは、でにできます。

ファイアウォールとはに、SSHの、「がされました」にはいくつかのがえられます。

にったポートをしているがあります。 SSHのポートは22ですが、のないアクセスをするためにのポートでsshサービスをするもいます。

ったコンピュータにしようとしているがあります。ホストまたはIPアドレスをってしたがあります。または、コンピュータがされたにりてられたアドレスをしているがあります。

sshサーバープロセスがされていないがあります。•

https://riptutorial.com/ja/home 12

Page 16: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

システムがの、まだされていないがあります。○

それはにされているがあります。システムがシングルユーザーモードのなどです。○

がっているため、にするがあります。○

コンピュータにSSHサーバーがされていないがあります。 MS Windowsシステムには、SSHサーバーはまれていません。のLinuxシステムでは、SSHサーバーはオプションのコンポーネントです。 OS XにはSSHサーバーがまれていますが、デフォルトではになっています。

SSHサーバープロセスは、しようとしているのIPインターフェイスのをリッスンしていないがあります。ほとんどのコンピュータには、なくとも2つのIPインタフェース「localhost」インタフェースと1つのネットワークインタフェースがあります。アクティブなインターフェイスには、けられたIPアドレスがりてられます。 SSHサーバーは、どのIPインターフェイスでもをけれるようにされています。ただし、のインターフェイスでのみをけれるようにできます。その、にしいポートがあっても、SSHサーバーがリッスンしていないIPアドレスへのはされます。

サーバーは、じポートへののバックログをつがあります。これはまれではありませんが、ホストができるよりもくをしている、ホストはにしいのをします。

ファイアウォールはとして、「がされました」とは、リモートコンピュータとしていることをします。をけれないだけです。

がタイムアウトしました

「タイムアウト」エラーは、リモートシステムがTCP / IPをくクライアントのにしないにします。もなはのとおりです。

ファイアウォールが、しているポートのをブロックしていますファイアウォールは、クライアントで、アウトバウンドをブロックしたり、サーバーで、インバウンドをブロックしたり、パスののにあるがあります。

ルートのは 、ったポートをしているがあります。○

しようとしているホストがオフラインになっているがあります。•クライアントとサーバーのネットワークのがまたはするがあります。•ネットワークルーティングのがするがあります。•

タイムアウトのをすることはです。

ssh_exchange_identificationreadピアによるリセット

このエラーメッセージは、OpenSSH sshクライアントによってされるがあります。これは、クライアントとサーバーののTCPが、けれられたにサーバーによってにじられたことをします。このメッセージのなはのとおりです。

SSHサーバープロセスがしています。たとえば、クラッシュしました。•

クライアントとサーバーのファイアウォール、ルーター、またはそののネットワークデバイ•

https://riptutorial.com/ja/home 13

Page 17: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

スがSSHをしています。

エラーメッセージのフレーズは、にがこったのかをします。

ssh_exchange_identification 1. SSHクライアントがSSHサーバーにした、SSHプロトコルをするのステップは、サーバーがソフトウェアバージョンをクライアントにすることです。 「ssh_exchange_identification」をむエラーは、クライアントがサーバからソフトウェアバージョンをっているに、TCPをったにエラーがにしたことをします。

リセットのリセットは、TCPが「にじた」ことをします。 TCPのクラッシュの1つをつソフトウェアプロセスがクラッシュした、これをることができます。ネットワークファイアウォールは、TCPをブロックするとしてのリセットをするようにできます。

by peerは、TCPがの「」からじられたことをします。この、「」はリモートSSHサーバーです。

このエラーは、にしたことをすものではありません。サーバーはTCPをけけたにTCPをじました。クライアントとサーバーはまだデータをしていません。サーバーはまだホストをクライアントにしておらず、クライアントはまだサーバーでをみていません。

ssh_exchange_identificationリモートホストによってじられた

このエラーメッセージは、OpenSSH sshクライアントによってされるがあります。これは、クライアントとサーバーののTCPが、けれられたにサーバーによってじられたことをします。このメッセージは、、らかのでSSHサーバがクライアントからのをけけないようにされていることをしています。

サーバーは、クライアントのIPアドレスからのをするようにされているがあります。•

サーバーには、アクティブなSSHのにがされているがあります。•

クライアントがSSHサーバーではないものにしているがあります。•

エラーメッセージのフレーズは、にがこったのかをします。

ssh_exchange_identification 1. SSHクライアントがSSHサーバーにした、SSHプロトコルをするのステップは、サーバーがソフトウェアバージョンをクライアントにすることです。 「ssh_exchange_identification」をむエラーは、クライアントがサーバからソフトウェアバージョンをっているに、TCPをったにエラーがしたことをします。

Connection closedこれは、TCPがのでじられたことをします。これは、SSHサーバーがにをしたことをします。これは、「リセット」とはです。これは、SSHサーバーがクラッシュしたか、またはしているがあります。

リモートホストによって 、TCPがの「」からじられたことをします。この、「」はリモートSSH

サーバーです。

このエラーは、にしたことをすものではありません。サーバーはTCPをけけたにTCPをじました

https://riptutorial.com/ja/home 14

Page 19: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

5: リバーストンネル

Examples

OpenSSH

sshトンネルをするには、のコマンドに-Rをつけるだけです。

コマンドラインコマンドssh [email protected]をしてexample.comユーザーguestとしてしているとしexample.com 。トンネルをくと、のようになります。

ssh -R 2222:localhost:22 [email protected]

これは、リモートサーバのポート2222 ループバックインタフェースのみをき、このポートへのすべてのは、ローカルコンピュータのsshサーバポート22 にされます。

これはまた、オプションしていることをとしてAllowTcpForwarding yesし、 PermitOpen anyあなたのにsshd_configサーバーに。それのはエラーがしてします

open failed: administratively prohibited: open failed

されたポートにのネットワークアドレス localhostでアクセスできるようにするには、さらにGatewayPorts yesをし、IPアドレスまたはホストまたはIPをするがあります。

ssh -R 2222:example.com:22 [email protected]

さらに、するたびにじをしないように、 ~/.ssh/configでリモートポートをすることもできます。にホストにし、ポートをしたくない、このをうホストにをすることをおめします。

Host example.com-R Hostname example.com User guest RemoteForward 2222 localhost:22

にssh example.com-Rをしてリモートポートをしssh example.com-R

バックグラウンドで

https://riptutorial.com/ja/home 16

Page 20: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

ポートはスイッチ-N リモートコマンドをせず、のみ、- -f バックグラウンド、- -T リモートTTY

りりをにするをしてバックグラウンドでにできます。すべてをにれて

ssh -NTfR 2222:localhost:22 [email protected]

オンラインでリバーストンネルをむ https://riptutorial.com/ja/ssh/topic/5689/リバーストンネル

https://riptutorial.com/ja/home 17

Page 21: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

6: リモートコマンド

Examples

こんにちは

SSHでリモートコマンドをするにはSSHサーバーがリモートホストでされているがあります、 user @ machineのにコマンドをくだけです。

ssh [email protected] echo 'Hello World'

こんにちは

リモートホストでされ、にをします。

インタラクティブおよびスクリーンベースのコマンド

リモートのくのコマンドやプログラムはスクリーンベース mc で、パスワードえばsudo をするがあります。これらのプログラムをするには-tオプションをできます。

ssh -t [email protected] sudo ls /

アリスの[sudo]パスワード

binのルートdevのdevのホームlib mntのopt procのルートののusr var

オンラインでリモートコマンドをむ https://riptutorial.com/ja/ssh/topic/3297/リモートコマンド

https://riptutorial.com/ja/home 18

Page 22: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

7: のSSHセッションを

SSHセッションがをすることがあります。あなたはのトリックをってそのセッションからにることができます。

Examples

エスケープをしてSSHセッションをする

デフォルトでは、エスケープは~です。

ちょうどにみ、 ~.かれたSSHセッションで

Enterをすと、セッションはちにします。

どんなセッションでもしてみてください。セッションのになくします。

オンラインでのSSHセッションををむ https://riptutorial.com/ja/ssh/topic/8797/のsshセッションを

https://riptutorial.com/ja/home 19

Page 23: Secure Shell - RIP Tutorial1: Secure Shellをいめる SSHSecure Shellは、でないネットワークインターネットでのポイントツーポイントのためのプ ロトコルです。これは、のいプロトコル

クレジット

S. No

Contributors

1Secure Shellをいめる

Community, dreftymac, Harikrishnan, Jakuje, jalanb, Joe Block, jPlatte, Lernkurve, Marek Skiba, mszymborski, Nasreddine, Osaka, Piotr Dobrysiak, ygram

2 sshキーの Jakuje

3sshによるリモートファイルの

user

4 sshののデバッグ Jakuje, Joe Block, Kenster, Martin Prikryl, Stephen C

5 リバーストンネル Jakuje

6 リモートコマンド deepmax, Jakuje

7 のSSHセッションを leifg

https://riptutorial.com/ja/home 20