($title_img_alt)

こちらからの投稿は、先頭に表示されているコメントへの返信になります。
V6R1からの SFTP について KDM さん [ 8月1日(月) 13時9分 ]
System i V6R1を使用しています。
取引先とFTPでデータの受け渡しをしてますが、今後はSFTPを
使用を要求されています。

試しに自分のwindowsPCにSSHサーバーを構築して、iseriesの
QShell のコマンドから sftp で接続しようとしていますが
うまくいきません。

コマンドラインから、
QSH CMD ('/QOpenSys/bin/sftp -i /home/ssh_host_rsa_key PCのUser@192.168.xxx.
.xxx')
として実行しても、
Host key verification failed.
となります。

何か記述方法が間違っているのでしょうか。
RE:V6R1からの SFTP について IKD さん [ 8月2日(火) 8時41分 ]
IBM i を SFTPクライアントにするということでしょうか ?

WRKLNKで確認すればわかることですが '/QOpenSys/bin’ には sftp は
ありません。(on i5/OS Ver.6.1)
つまり SFTPのクライアントPGM は用意されていないので
面倒ですが自作ということになります。

SFTP は PORT=24なので(データPORTはまた別) i5/OS の FTPコマンドは
使えません。
FTPクライアントは Java か C/400で慣れている人なら半日もあれば
開発できますが SSH なので経験がないと面倒です。

SFTPの動作を確認したいのであればまず Windowsの DOS窓から
SFTPコマンドを Ftpと同じように叩けば確認することができます。

参考までに IBM i の STRTCPSVR には *SFTP というオプションはありませんので
IBM i が SFTPサーバーになれることもないようです。。
RE:V6R1からの SFTP について 桃色ぐま さん [ 8月2日(火) 14時2分 ]
QSH CMD('/QOpenSys/bin/sftp -vvv -i /home/ssh_host_rsa_key PCの
User@192.168.xxx.
.xxx')

のように -vvv をつけると、もっと詳しいログが出ると思いますので、
まずそちらでエラーの原因を見て下さい。
RE:V6R1からの SFTP について KDM さん [ 8月2日(火) 21時36分 ]
桃色ぐま様ありがとうございます。
-vvvをつけていろいろ対応しながらたりました。
結構よいところまで進んだのですがパスフレーズの部分で
妙なエラーがでてきました。


debug1: sending SSH2_MSG_KEX_ECDH_INIT                                   
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY                                
debug1: Server host key: ECDSA 37:e6:f6:e8:e3:a5:20:7c:16:68:c1:41:dd:58:
0                                                                        
debug1: read_passphrase: can't open /dev/tty: No such device or address  
debug2: readpassphrase: not a 5250 return ENOTTY                         
Host key verification failed.                                            
Connection closed                 
下から3行目あたりでパスフレーズを入力する画面が開けずにエラーとなっているような
気がします。
でも、本当は入力なんてせずにそのまま接続したいのです。

sftp -b をつけて外部ファイルにしてしまえばよいのでしょうか・・・。

                                       
RE:V6R1からの SFTP について 桃色ぐま さん [ 8月3日(水) 10時11分 ]
それならばまず、画面が開ける状態では正しく接続できるのか試したらどうで
しょう?

STRQSH

でQSHコマンド入力画面を開き、

ssh -vvv ...

を入力。
接続できますか?画面で何か聞かれましたか?
RE:V6R1からの SFTP について 桃色ぐま さん [ 8月3日(水) 10時12分 ]
sftp -vvv ...

でした。すみません。
RE:V6R1からの SFTP について KDM さん [ 8月3日(水) 12時49分 ]
桃色ぐまさん。本当にありがとうございます。
QSHで手打ちで試したんです。
sftp -vvv -i xxxx ABC@HOSTA

そしたら
debug1: sending SSH2_MSG_KEX_ECDH_INIT                                   
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY                                
debug1: Server host key: ECDSA 37:e6:f6:e8:e3:a5:20:7c:16:68:c1:41:dd:58:
0                                                                        
★debug1: read_passphrase: can't open /dev/tty: No such device or address  
★debug2: readpassphrase: not a 5250 return ENOTTY                         
Host key verification failed.                                            
Connection closed                                                        
★の部分がパスフレーズのことを言っているっぽいのですが内容がはっきりしないんです。
sshサーバーはwindowsで自分のPCです。OPenSSHをインストールしてたててます。
自分のPCからTeraTermではきちんと接続(windowsのユーザーとパスをきいてくる)
できるんです、でもSystem i からだとこんなになるんです。
RE:V6R1からの SFTP について 桃色ぐま さん [ 8月3日(水) 18時0分 ]
うちのASで試してみたのですが、sftpだと常にcan't open /dev/ttyになるみたいですね…。

STRQSHしたあと、

  ssh -vvv -i ...

してみてください。これなら、画面で何の入力を求められているかわかると思います。

あと、あてずっぽうになるのですが、
sftpを実行したときのログの最初の方に、

  Could not create directory '/home/xxxx/.ssh'.

みたいなエラーが出ていませんか?
RE:V6R1からの SFTP について KDM さん [ 8月4日(木) 10時24分 ]
桃色ぐま様、ありがとうございます。
ssh -vvv -i ...
をすると、接続する方のPassPhraseを求められ、
そのあと接続先のPassPhraseを求められていました。
入力していき、無事接続されたように思います。

windowsへ接続されたので、dirなどを実行しては
みたものの反応はありませんが…。
抜けることができないので F3 でqshを終了してます。
exitでも反応がないのではたして接続されているのか
不安にはなりますが、
ユーザー@ホスト C:\Users\ユーザー>
とでてくるのでおそらくつながったと思います。



RE:V6R1からの SFTP について 桃色ぐま さん [ 8月4日(木) 16時14分 ]
■1
> をすると、接続する方のPassPhraseを求められ、

これは、秘密鍵 /home/ssh_host_rsa_key のパスフレーズということですか?
この秘密鍵は、ssh-keygen で作ったかと思いますが、
ssh-keygen での作成の際にパスフレーズなしにすれば、パスフレーズを聞か
れなくなると思います。

■2
> そのあと接続先のPassPhraseを求められていました。

これはおかしいです。

-i /home/ssh_host_rsa_key を指定したという事は、
公開鍵暗号方式によるログインを行おうとしているのだと思いますが、
この方式でのログインがうまくいったなら、
接続先のパスワードを聞かれることはありません。

ssh-keygen で公開鍵・秘密鍵のペアを作成したあと、
公開鍵をwindowsのopensshに登録したかと思いますが、
その手順が正しく行われたかもう一度見直すと良いと思います。
また、windowsのほうのsshdのログも見てみると良いかと思います。

RE:V6R1からの SFTP について KDM さん [ 8月5日(金) 15時21分 ]
桃色ぐま様、ありがとうございます。
IBM iの方で、鍵をパスフレーズなしで再作成してみました。そして
QSHで /OpenSys/bin/ssh -vvv guest@192.168.192.xxx
すると以下のようになってしまいました。
debug2: we sent a keyboard-interactive packet, wait for reply              
debug1: Authentications that can continue: publickey,password,keyboard-intera
ractive                                                                    de
debug3: userauth_kbdint: disable: no info_req_seen                         
debug2: we did not send a packet, disable method                           d
debug1: No more authentication methods to try.                             
Permission denied (publickey,password,keyboard-interactive).    
懸命に訳してみましたが、英語の壁があるようで…。
3行目あたりで鍵認証、パス、キーボード?が認証できますよ!と きて
いきなり no info_req_seen が無い、と。
それで、もう試せません!
アクセス拒否!
という感じかと思います。

回答をもらってもう一度やってみたのですが、ここあたりで返事をだしておこうかと
思いました。
RE:V6R1からの SFTP について IKD さん [ 8月2日(火) 15時56分 ]
Ver7.1からは SFTPが導入されてますが Ver6.1 では PTFが必要です。
SFTP の場合は 事前に SSHの認証局の設定が必要となります。
先のエラー・メッセージは認証に失敗したメッセージのようです。。

お名前

パスワード

メールアドレス

タイトル

ホームページ

アドレス

項目