LoginSignup
2
1

More than 1 year has passed since last update.

PowerVS IBM i 日記(30): PowerVS IBM i 初期設定まとめ - ssh 鍵認証と日本語環境

Last updated at Posted at 2020-11-19

PowerVS IBM i 初期設定まとめ - ssh 鍵認証と日本語環境

これまで、試行錯誤で環境を作ってきました。
手順をあちらこちらに書き散らしているので、自分でも新規インスタンスを作成するのに、困っていました。

そこで、今回は新規インスタンスを作成後に、環境を日本語化するまでの手順をまとめることとしました。

パブリックネットワークを持つ PowerVS IBM i のインスタンスを作成し、SRC が 0000-0000 になって起動していることを前提としています。

クライアントで ssh のキーベアを作成する

クライアント側はユーザーのホームディレクトリーでの実行を想定しています。
Windows であれば、通常「C:\Users\ユーザー名」です。
現在の Windows 10 では ssh-keygen、ssh や scp が標準で利用できます。

ssh-keygen で ssh のキーベアを作成します。
ホームディレクトリーの「.ssh」に鍵ペアが作成されます。

ssh-keygen -t rsa -b 4096

IBM i コンソールからユーザー作成と sshd の起動

ポータルからコンソールに接続します。

QSECOFR/QSECOFR で接続します。
QSECOFR のパスワードを変更します。
ライセンス条項を許諾します。

9 文字や 10 文字のユーザー名で ssh 接続したい場合は、下記を sshd の開始前に実行します。

ADDENVVAR ENVVAR(PASE_USRGRP_LIMITED) VALUE('N') LEVEL(*SYS)

ssh 接続用のユーザーを作成します。

CRTUSRPRF USRPRF(yourUser) PASSWORD(yourPssword) HOMEDIR('/home/yourUser')
MKDIR DIR('/home/yourUser')
CHGOWN OBJ('/home/yourUser') NEWOWN(yourUser)

sshd を起動します

STRTCPSVR SERVER(*SSHD)

クライアントから鍵認証の設定

公開鍵を scp で IBM i にコピーします。パスワードで認証します。
この scp は Windows 10 標準のものです。

scp .ssh\id_rsa.pub yourUser@[パブリックIP]:/home/yourUser/id_rsa.pub

ssh で接続します。パスワードで認証します。
この ssh も Windows 10 標準のものです。

ssh yourUser@[パブリックIP]

接続した ssh のセッションで鍵認証の設定をします。
「pwd」ではホームディレクトリーが正しく「/home/yourUser」か確認します。

pwd
mkdir .ssh
cat id_rsa.pub >> .ssh/authorized_keys
chmod 700 .
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
exit

再度、ssh で接続します。パスワード無しで接続されることを確認します。

ssh yourUser@[パブリックIP]

IBM i コンソールから ssh のパスワード認証を除外

現在 ssh はパスワード認証が可能になっています。
ssh のパスワード認証を除外します。

設定ファイルを開きます。

EDTF '/QOpenSys/QIBM/UserData/SC1/OpenSSH/etc/sshd_config' 

設定ファイル内に「PasswordAuthentication no」を設定します。

PasswordAuthentication no

sshd を再起動します。

ENDTCPSVR SERVER(*SSHD)
STRTCPSVR SERVER(*SSHD)

これでパスワードでの認証ができなくなり、安全になりました。

IBM i コンソールから Telnet の接続準備

Telnet 5250 で接続できるように、IBM i 側の設定をします。

端末の自動構成を可能にし、*SECOFR レベルの接続を可能にします。

CHGSYSVAL SYSVAL(QAUTOCFG) VALUE('1') 
CHGSYSVAL SYSVAL(QAUTOVRT) VALUE(10)
CHGSYSVAL SYSVAL(QLMTSECOFR) VALUE('0')

--- 2023/03/26 追記 ここから---
7.4 のストックイメージからデプロイしたところ上記の CHGSYSVAL は「CPF18C0 System value &1 cannot be changed.」のエラーで実行できませんでした。
実行するためには DST/SST での設定変更が必要です。
詳しくは「PowerVS IBM i 日記(51): 新しいポータル GUI での PowerVS IBM i のデプロイ-8-コンソールへのアクセス・外部からのアクセス」をご覧ください。
--- 2023/03/26 追記 ここまで---

Telnet サーバーを起動します。

STRTCPSVR SERVER(*TELNET)

クライアントから ssh トンネル接続 (ACS の場合)

Windows 標準の ssh は 1024 以下のポートからのトンネルができないので Putty や Tera Term で ssh トンネル接続を設定します。

今回は、Tera Term を使います。

ユーザー名を指定し、秘密鍵にはホームディレクトリーの「.ssh\id_rsa」を指定します。

image.png

ACS で Telnet 接続する場合、下記の 5 つのポートに対して ssh トンネルの設定をします。

Telnet のポート 23 には任意のローカルポートを、それ以外はそのままのポートを指定します。

23 - Telnet
449 - Server Mapper
8470 - License Management
8475 - Remote Command
8476 - Signon Verification

image.png

ACS で localhost のポート 23 に対応付けたポートに接続します。

image.png

5250 画面が表示されました。これでコンソールを使わずに作業ができます。

image.png

クライアントからssh トンネル接続 (PCOMM の場合)

ACS ではなく PCOMM の場合は、ポート 23 へのトンネルのみで接続できます。
Windows 標準の ssh コマンドで Telnet のポート 23 に任意のローカルポートからの転送を指定するだけです。
Tera Term や Putty を使う必要はありません。

ssh yourUser@[パブリックIP] -L 50000:localhost:23

PCOMM では localhost ポート 23 に対応付けたポートに接続します。

image.png

接続されました。

image.png

日本語環境用システム値の変更

日本語環境用にシステム値を変更します。

CHGSYSVAL SYSVAL(QCCSID) VALUE(1399)
CHGSYSVAL SYSVAL(QCNTRYID) VALUE(JP)
CHGSYSVAL SYSVAL(QDATFMT) VALUE(YMD)
CHGSYSVAL SYSVAL(QTIMZON) VALUE(QP0900JST)

QINTER を 2次言語 2930 日本語に設定

コンソールは 1 次言語 2924 英語のまま、それ以外は 2930 日本語で接続出来るように設定します。

QINTER のサインオン画面は英語のままにしてありますが、お好みで QSYS2930/QDSINGON にしてもよいでしょう。

CHGSYSVAL SYSVAL(QCTLSBSD) VALUE('QCTL QSYS') 
CHGSBSD SBSD(QINTER) SYSLIBLE(QSYS2930)

sshd と Telnet サーバーの自動起動

IPL 時に sshd と Telnet サーバーが自動起動するように設定します。

RUNSQL SQL('update QUSRSYS/QATOCSTART set AUTOSTART = ''*YES'' where SERVER in (''*TELNET'',''*SSHD'')') COMMIT(*NONE)

再起動して確認

再起動します。

PWRDWNSYS OPTION(*IMMED) RESTART(*YES) CONFIRM(*NO) 

サインオン後、メインメニューが日本語であることが確認できました。

image.png

ここまで実行したらブートイメージにしておくとよいでしょう。


当日記のIndexはこちらです。


許可の無い転載を禁じます。
この記事は筆者の個人的な責任で無保証で提供しています。
当記事に関してIBMやビジネスパートナーに問い合わせることは、固くお断りします。

2
1
0

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
2
1