LoginSignup
0

More than 3 years have passed since last update.

【さくらVPS CENTOS7】TERATERM で公開鍵/秘密鍵によるSSH接続を設定し WINSCPで権限を強めたSFTP接続を10分で実装する事で、サーバーへのログインを”安全”に、強い権限によりファイル操作を”簡単に”閲覧する方法

Last updated at Posted at 2019-11-28

0前準備

teratermで最初にIDとパスワードを入力してサーバにログインしてください。

1TERATERM上でSSH鍵生成します。

「設定」をクリック後、「SSH鍵生成」を選択します。

image.png

2鍵の種類を設定します。

「鍵の種類」選択後、「生成」をクリックします。※ここでは、「RSA」を選択します。

image.png

3鍵のパスフレーズを入力します。

「鍵を生成しました。」と表示後、「鍵のパスフレーズ」「パスフレーズの確認」を入力します。
※このパスフレーズは、ログイン時に利用します。このパスフレーズがないと楽ではありますがセキュリティ上よろしくないのでパスフレーズは必ず設定しましょう。その代わりWINSCPのページェントを利用する事で毎回パス入力をしないよう設定します。後述に記述しました。

image.png

4「公開鍵の保存」「秘密鍵の保存」をそれぞれクリックしてください。

image.png

「公開鍵の保存」「秘密鍵の保存」をそれぞれクリック後、事前に作成した鍵を格納するフォルダに保存します。※以下の名前で保存されます

公開鍵     秘密鍵
id_rsa.pub id_rsa

保存が完了後、TeraTermの画面は一度閉じます。

5普通に再度ログインします。

image.png

6「公開鍵」のファイルをドラック&ドロップします。

サーバにログイン完了後、事前に作成した「公開鍵」のファイルをドラック&ドロップします
image.png

7SCPで転送

何もしないでエンターでOKです。
「ファイル転送を行いますか?」と表示後、「SCP」をクリックします。
※「SCP」クリックすると、ユーザのホームディレクトリに転送されます。
image.png

8公開鍵認証の設定

ユーザのホームディレクトりに移動後、公開鍵認証の設定を行います。

$ mkdir .ssh
$ chmod 700 .ssh
$ cat id_rsa.pub > .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys
$ rm -f id_rsa.pub

9rootでSSH接続の設定変更

AuthLoginをオフってる人はさくらであればコンソールでもOKです。
「@」より前が「root」に切り替われば、「root」に変更されています。
image.png

10 SSH接続の設定を変更します。

# nano /etc/ssh/sshd_config

11 3か所を編集します。

ポート番号を変更しましょう。

#Port 22
→Port ****

ルートログインをNGに

#PermitRootLogin yes
→PermitRootLogin no

パスワード承認をNGに

PasswordAuthentication yes
→PasswordAuthentication no

12 SSH接続の変更内容を読込みます。

systemctl restart sshd.service

13 TERATERMのショートカットを開いてリンク赤字部分を設定する

名称未設定-1.png

例えば以下のような設定だったとするとリンク赤字部分は以下です。

IP 1.1.1.1
ポート 12345
ユーザー名 hoge
パスワード naga
キーファイル is_rsaの場所をディレクトリで指定する 最後はid_rsa

"C:\Program Files (x86)\teraterm\ttermpro.exe" 1.1.1.1:12345 /auth=publickey /user=hoge /passwd=naga /keyfile="C:\Users\hoge\hoge\hoge\id_rsa"

14 ログインします。

15 続いてWINSCPの設定を行います

以下を参考に設定してください。

0001.png

ポイントはSSHの公開鍵を設定した時は、以下のようにSSHから認証を選択し秘密鍵にディレクトリを入れてください。rsa.ppkというファイルは自動で変換してくれます。※丁寧にメッセージが出ます!

0002.png

16 WINSCPで秘密鍵で正常にログインできる事を確認します。

WINSCPで正常にログインする事ができました。しかし現在の状況ですと権限が弱く自分のディレクトリ配下以外は閲覧やコピーができません。具体的に自分がhogeAだったとしましょう。その場合、権限がありませんのでhogeBにはアクセスできません。
home
--hogeA
--hogeB
--hogeC

そこで無理やりこじあけましょう。

17 続いてTERATERMでサーバーにログインして以下コマンドを打ちます。最下部に以下コマンドを書きましょう。

※WinSCPで使用するユーザーを「hogehoge」とした場合、以下のようになります。接続先サーバーはCentOS7想定です。

visudo

hogehoge ALL=NOPASSWD: /usr/libexec/openssh/sftp-server

18 WinSCPのSFTPサーバー設定を入力します。

赤字の部分をコピーペーストしてください。

sudo /usr/libexec/openssh/sftp-server

image.png

19 ファイル権限が強くなっているか確認します。

home
 hogeA
 hogeB
 hogeC

どれでも閲覧できますね。以上です。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0