#author("2021-11-09T06:07:05+00:00","default:sagasite","sagasite")
[[さくらのVPS]]

サーバで[[SSH]]の設定をおこない、SCPや[[SSHクライアント]]によるリモート操作を可能とします。

#contents

*SSHとは? [#r3a4e753]

→ [[SSH]]

[[Secure Shell - Wikipedia>http://ja.wikipedia.org/wiki/Secure_Shell]]
>Secure Shell(セキュアシェル、SSH)は、暗号や認証の技術を利用して、安全にリモートコンピュータと通信するためのプロトコル。パスワードなどの認証部分を含むすべてのネットワーク上の通信が暗号化される。

*SSHの設定 [#t9c146d6]
(参考)
http://www.studio-kingdom.com/centos/486

**ローカルPC上で「鍵」データを作る [#d2f0a5b0]
SSHで通信をするには、通信途上のデータを暗号化するために、暗号化に必要な「鍵」データを用意します。
以下、WindowsパソコンでSSHの鍵を作る方法です。

- PuTTYgenで鍵ペア(公開鍵と秘密鍵)を作る。
- 秘密鍵のファイル名:「vps-rsa-key.ppk]」等で保存する。
- 公開鍵のファイル名:「vps-rsa-key.pub]」等で保存する。

** 公開鍵をサーバに設置 [#iab79d09]
(参考)「~」(チルダ)=ホームディレクトリのパス。(「独習Linux」p.139)

 % cd /home/pcuser		← (ユーザーディレクトリに移動)
 % mkdir ~/.ssh			← (.sshディレクトリを作成)
 % chmod 700 ~/.ssh		← (.sshディレクトリの権限を所有者だけに限定)
 % chown -R pcuser:pcuser .ssh	← (所有者をrootからユーザに変更)
 % vi ~/.ssh/authorized_keys	← (公開鍵ファイルを作成、編集)

** 公開鍵の文字列をコピペして保存する。 [#k96766d8]

SSHの公開鍵は以下のような文字列としてコピーできる。
(表示の都合上、ここでは改行を入れてますが、本来は1行の長い文字列です。)

>ssh-rsa ABCDEFGtesttestABCDEFGAAAIBaXhogevzZASBtv1234Vd7Y5678
e3MX1234CvLw5678ymoaHXcZF3SuiopJy/3zXrbBhjlkluu+8uuIHDvbmnJ4Q
y3R4i75rtyiug8rvLt9FztMCghkjrkPis6p46KoChEfDVa5PI9FvoasdfErEB
qwerrkpNYBnzhogehogeXYZ== sakura-vps-rsa-key

 % chmod 600 ~/.ssh/authorized_keys

** SSHのアクセス制限を設定 [#kcd71f26]
- rootのログイン禁止
- パスワード方式のログイン禁止
- 鍵認証方式のログインOK
- 秘密鍵と公開鍵の作成と設置
- SSHのポート番号変更

(参考)SSHのアクセスポリシー
http://www.studio-kingdom.com/centos/486
http://akabeko.sakura.ne.jp/blog/2010/09/%E3%81%95%E3%81%8F%E3%82%89%E3%81%AEvps-%E3%82%92%E4%BD%BF%E3%81%84%E3%81%AF%E3%81%98%E3%82%81%E3%82%8B-2/

ここでは、以下のように設定してみます。

 # cd /etc/ssh/
 # sudo vi /etc/ssh/sshd_config

↓
 #Port 22
 Port 12345

 #PermitRootLogin yes
 PermitRootLogin no

 #RSAAuthentication yes
 RSAAuthentication yes

 #PubkeyAuthentication yes
 PubkeyAuthentication yes

 #AuthorizedKeysFile      .ssh/authorized_keys
 AuthorizedKeysFile      .ssh/authorized_keys

 #RhostsRSAAuthentication no
 RhostsRSAAuthentication no

 #PasswordAuthentication yes
 PasswordAuthentication no

 #PermitEmptyPasswords no
 PermitEmptyPasswords no

 #UsePAM yes
 UsePAM no

* SSH再起動 [#o62c2ecc]
 % sudo /etc/init.d/sshd restart

*** PAM(一括認証)とは? [#ace050db]
(参考)
http://kazmax.zpp.jp/linux/lin_pam.html
http://www.geocities.co.jp/sugachan1973/doc/funto47.html

*** 鍵形式の互換性問題 [#d438d835]
「poderosa 鍵 putty」 - google検索

(参考)
http://blog.livedoor.jp/sasata299/archives/51173838.html
http://d.hatena.ne.jp/slywalker/20080925/1222309382
http://d.hatena.ne.jp/ablabo/20070725/1185291299
http://animemo.seesaa.net/article/119488771.html

※注意点 公開鍵のコピペが間違っていると、ログインできないので注意!
公開鍵のコピペで、先頭部分の「ssh-rsa」が「sh-rsa」(=「s」が一文字足りない)状態だった等。

* Poderosa [#madc1e80]
Poderosaは、Windows用のSSHクライアントソフト。
タブとか使えて便利。メンテナンスが終了しているみたいなので、ちょっと古くなってる?

(参考)
http://ja.poderosa.org/
http://ja.wikipedia.org/wiki/Poderosa

- PuTTyで作成した秘密鍵をPoderosaで使える形式に変換する。

(参考)
http://d.hatena.ne.jp/ablabo/20070725/1185291299
http://animemo.seesaa.net/article/119488771.html

* denyhosts [#v02b5610]
- SSHの防御

(参考)
http://epidemic.jp/2010/09/25/denyhosts-on-sakura-vps/
>denyhostsいわゆるSSHの総当り攻撃を防御するためのソフトウェアです。
メカニズムとしてはデーモンとして常駐しながら/var/log/secureというアクセスログを監視します。
その後一定回数以上のアクセス失敗があったら自動的に/etc/hosts.denyに接続を失敗したIPアドレスの書き込みを行います。

 # yum -y install denyhosts
 # /etc/init.d/denyhosts start
 # chkconfig denyhosts on
 # chkconfig --list denyhosts

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS