投稿日: | 最終更新日:
ConoHaのSSH接続
VPSの一つであるConoHaをレンタルしました。ユーザ追加などの初期設定を行います。
VPSの初期設定
ConoHaをレンタルして、さっそく以下の初期設定を行います。
- root以外のユーザを作る
- SSH接続(公開鍵認証で接続)
- パスワード認証をできなくする
- rootからログインできないようにする
- SSH接続するportを22から変更
今回は、SSH接続を設定します。
準備
以下の準備を行います。
①ConoHaをレンタルします。
②ConoHaにroot以外のユーザを作ります。
ConoHaVPSの環境
OS | CentOS7.4 |
---|
クライアントPC
操作開発用のクライアントPCを用意します。windowsでもmacでも可能ですが、今回はubuntuを利用します。
OS | Ubuntu 16.04.1 LTS 64bit |
---|
クライアントからリモートログイン
クライアントPCから、ConoHaのサーバーにリモートログインします。
①クライアントPC(Ubuntu)の端末を起動し、以下のコマンドを入力します。「newuser」は、前回作成した新しいuserです。rootでssh接続している場合はログアウトしてこの「newuser」で再ログインして下さい。
ssh newuser@xxx.xx.xx.xx -p 22
②以下のようなメッセージが表示されますので「yes」と入力してEnterを押します。
Are you sure you want to continue connecting (yes/no)? yes
③rootパスワードを要求されますので、申し込み時に入力したrootpasswordを入力します。
ログインできました。
[root@xxx-xx-xxx-xx ~]#
④前回あたらしく作ったユーザでログインします。
ログインできました。
su ユーザ名
openssh-clientsインストール確認
①openssh-clients がインストールされていることを確認します。
sudo yum list installed | grep ssh
以下のような結果が表示されます。
libssh2.x86_64 1.4.3-10.el7_2.1 @xxxxxxx openssh.x86_64 7.4p1-12.el7_4 @updates openssh-clients.x86_64 7.4p1-12.el7_4 @updates openssh-server.x86_64 7.4p1-12.el7_4 @updates
なければ、以下のコマンドでインストールします。
sudo yum -y install openssh-clients
SSHログインを許可
①「sshd_config」を編集します。
sudo vi /etc/ssh/sshd_config
以下のように変更します。
PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys
「PubkeyAuthentication」は、”#”を取り除くだけです。
※ConoHaではAuthorizedKeysFile は既に「.ssh/authorized_keys」設定になっています。
RSAAuthenticationオプションは、”This option applies to protocol version 1 only.” となっています。「sshd_config」に 「RSAAuthentication no」を設定する必要はありません。
②サービスを再起動します。
sudo service sshd restart
SSH鍵を生成
作成したユーザでSSH鍵を生成します。rootユーザではやらないで下さい。
①SSH鍵を置くディレクトリを作成します。
cd ~ mkdir .ssh chmod 700 .ssh cd .ssh
②以下のコマンドで秘密鍵と公開鍵(.pub)を生成します。秘密鍵が漏洩する可能性を考えるのならパスフレーズを指定しましょう。
ssh-keygen -t ecdsa -b 521
以下のように鍵が生成されます。
-rw------- 1 username username 444 xx月 xx 0x:xx 鍵名 -rw-r--r-- 1 username username 287 xx月 xx 0x:xx 鍵名.pub
③公開鍵(.pub)をAuthorizedKeysFileの設定値に指定されているファイルパスに設置します。
mkdir authorized_keys mv 鍵名.pub authorized_keys/ chmod 600 authorized_keys
④秘密鍵の内容を表示します。
cat 鍵名
⑤【クライアントPCの作業】表示された秘密鍵の内容をクライアントPC(ubuntu)のメモ帳などにコピーして、ファイル名を同じ「鍵名」にして保存します。この秘密鍵を、「~/.ssh/」に移動します。
mv 鍵名 ~/.ssh/ chmod 600 ~/.ssh/鍵名
コピーした秘密鍵のパーミッションを600に設定します。この設定を行わないと、以下のようなエラーが発生します。
Permissions 0664 for '/home/username/.ssh/鍵名' are too open. It is required that your private key files are NOT accessible by others. This private key will be ignored. Load key "home/username/.ssh/鍵名": bad permissions
⑥「config」というファイルを作ります。ある場合は作らなくて良いです。
cd ~/.ssh touch config
⑦「config」に設定を追加します。
cd ~/.ssh touch config
以下のように記述します。
Host 任意のホスト名 HostName VPSのIPアドレス User 新しく作成したユーザ名 Port 22 IdentityFile ~/.ssh/鍵名
クライアントからSSH鍵でログインできるかチェック
①【VPSの作業】一旦接続を閉じます。
exit
②【クライアントPCの作業】以下のコマンドでVPSにSSH接続します。
ssh 任意のホスト名
※鍵の生成時にパスフレーズを指定していた場合は入力が必要です。
次回
ConoHaVPSにSSH接続し、rootからのログインを禁止します。
- Python 114
- 制作 54
- RaspberryPi 41
- Django 40
- WordPress 40
- Linux 27
- VPS 22
- JavaScript 21
- PHP 20
- HTML・CSS 19
- AWS 16
- 仮想環境 15
- レスポンシブデザイン 13
- マイコン 11
- WEB全般 11
- 動画製作 9
- Webサービス 8
- 統合開発環境 8
- 機械学習 8
- PyCharm 7
- jQuery 7
- AfterEffects 7
- 起業・設立 7
- Django REST framework 6
- C# 6
- デザイン 6
- SEO 6
- pydata 6
- Visual Studio 5
- 数学 5
- 携帯サイト 5
- heroku 5
- Mac 5
- illustrator 5
- node.js 5
- Anaconda 5
- Nginx 4
- Jupyter Notebook 4
- インフラ 4
- Google Colaboratory 4
- symfony 4
- Webスクレイピング 3
- photoshop 3
- Go言語 3
- PC 3
- ツール 3
- Docker 3
- facebook 3
- 作業効率化 3
- データベース 3
- Cloud9 3
- コマンド 2
- micro:bit 2
- Kali Linux 2
- Webサーバー 2
- MariaDB 2
- ドローン 2
- コンテナ 2
- DaVinci Resolve 2
- ネットワーク 2
- Java 2
- movie 2
- PCDJ 2
- 音楽 2
- XSERVER 2
- Ansible 1
- Vue.js 1
- JSON 1
- Bootstrap 1
- バージョン管理システム 1
- SSL 1
- S3 1
- ムームードメイン 1
- ネットワーク 1
- アニメーション 1
- D3.js 1
- Rhino 1
- アニメ 1
- git 1
- windows 1
- アクセス解析 1
- スマートフォン 1
- アフィリエイトノウハウ 1
- 知識 1
- TypeScript 1
- 役立つ本・書籍 1
- データサイエンス 1
- ESP32 1
- AI 1
- ownCloud 1
- API 1