2021-10-27に更新

OCIやAWS上のサーバの環境構築

1.公開鍵認証方式でssh接続

1-1.キーの作成(おまけ)

Windowsのコマンドプロンプトで,

>ssh-keygen -b 4096

(4096は任意鍵長)と打つと,~/.sshに公開鍵と秘密鍵が作成される.例えばユーザー名がTanakaさんなら.C:\Users\Tanaka\.sshに作成される.
秘密鍵のファイル名がid_rsaで,公開鍵がid_rsa.pubとなる.

以降の話ではこの節はあまり関係ない.

1-2.OCIでインスタンス作成

sshキーにスポットをあてて話を進める.
image.png

1-2-1.キーペアを持っていない場合

[ SSHキーの追加 ]欄で,[キー・ペアを自動で生成 ]を選択し,
[公開キーの保存]→[秘密キーの保存]をクリックすることでキーペア取得できる.
この2つのファイルは大切に保管しましょう.(今後も使いまわせるので)

保存された2つのファイルは,
公開鍵が~.key.pub
秘密鍵が~.key
となっている.

この2つのファイルはどこか好きなディレクトリに格納しとこう.
例:C:\Users\Tanaka\Documents\Oracle

インスタンスを作成.

1-2-2.キーペアを持っている場合

OCIでインスタンスを作成する際,[sshキーの追加]欄がある.
ここで,[公開キー・ファイル(.pub)のアップロード]を選択し,
自身の公開鍵のファイル(~.key.pub)をドラッグ&ドロップでアップロード.
インスタンスを作成.

1-3.ssh接続

sshクライアントを起動してssh接続を試みる.

1-3-1.TeraTermの場合

TeraTermを起動させたら[ ホスト(T) ]にIPアドレスを書いて,
その下の[ TCPポート ]欄に22と書く※1.
[ ok ]ボタンを押す.

[ ユーザ名 ]に指定されたユーザ名を記入.
OCIのCentOSの初期ユーザ名はopc※2.

[ 認証方式 ]で,[ RSA/DSA/ECDSA/ED25119鍵を使う]を選択し,
1-1節で作成した秘密鍵のパスを指定.
例:
C:\Users\Tanaka\Documents\Oracle\~.key
これで接続できる.

※1:sshのデフォルトのport番号が22.これは後で利用できるport番号内で任意番号に変更可能
※2:AWSのRHEL8の場合はec2-user

1-3-2.PowerShellの場合

これだけ.

> ssh -i [秘密鍵のパス] [ユーザ名]@[IPアドレス]

2. 環境設定

2-1.パスワード設定

ログインできたら,rootユーザとログインユーザ(今回であればopc)のPassを任意に設定しとく.
まずはroot

$sudo passwd root
(パスワード聞かれるので適当に打つ)
(切り替わるか確かめる)
$ su -

次は別のユーザ

#passwd opc

2-2.ssh接続のconfファイル書き換え

セキュリティの観点から,ssh接続のconfigファイルを書き換える.

$ sudo vi /etc/ssh/sshd_config

とやるといろいろ書き換えられる.
英語読めば何の設定なのか想像つくと思うのでてきとーにやっとく.

Port 11326  (←port番号を22から変更)
PermitRootLogin no (←Rootユーザでログインできないようにする)
PubkeyAuthentication yes  (←公開鍵認証方式)
PasswordAuthentication no (←パスワード認証を無効化)
などなど

これではまだ反映されないので,reloadしてメモリの設定を読み込ませる.
(restartじゃないよ)

$ sudo systemctl reload sshd.service

2-3.タイムゾーンを変更

タイムゾーンを東京に変更しとく.

$ sudo timedatectl set-timezone Asia/Tokyo

2-4.変更確かめ

Windows端末のPowerShellでPortして疎通確認.

> Test-NetConnection [ IPアドレス ] -Port [ Port番号 ]

3.yumの準備

参考:https://access.redhat.com/ja/articles/3221791

4.踏み台サーバの準備

4-1.キーペアの準備

4-2.scpでファイル転送

4-3.公開鍵認証の読み込みパス指定

https://crieit.net/posts/OCI-CentOS

5. Port ForwardingでRDP接続

5.1 sshトンネリング

6.Pythonインストール

7.OCI CLIのインストール

8.Ansibleのインストール

9.BlockVolumeのパーティション切りとマウント

10.コンテナ

ツイッターでシェア
みんなに共有、忘れないようにメモ

kawai_mizugorou

社会人1年目.自分用のメモとして使ってます.

Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。

また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!

有料記事を販売できるようになりました!

こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?

コメント