投稿日:2002年11月20日 作成鷹の巣

No.6433 SSHのFTP転送について



SSHのFTP転送について

No.6433 投稿時間:2002年11月20日(Wed) 00:36 投稿者名:カイナン URL:http://yaguma.ath.cx

こんにちはカイナンです.最近はsshで遊んでいます.
まずはサーバ(Vine linux)でsshd(OpenSSH-3.4)を起動.
/etc/ssh/ssh_configは以下のように設定.

PasswordAuthentication no <- RSA秘密鍵 identityを必須にする
PermitRootLogin no <- rootでのログインを禁止する
PermitEmptyPasswords no <- パスワード無しのログインを許すか
RhostsRSAAuthentication no <- .rhosts等を信用するかどうか(RSA認証付き)
AllowUsers User-Name <- ユーザUser-Nameのみ接続許可をする

クライアントはWindows機からTera Term Pro(TTP)を使用.
TTPはTTSSHを使用してSSHが使えるようにしてあります.
とりあえずssh1のRSA認証でログインできるようにしました.
これでTelnetは必要なくなったというわけです.
この次にTTPのSSH転送機能を使ってメールの送受信に挑戦.
TTSSHのポート転送設定でsmtpとpop3を設定.
いつも使っているメールクライアントのbeckyでサーバの指定をlocalhostにしました.
するといとも簡単にSSH経由でメールの送受信が成功.お~簡単じゃんか.これならAPOPもいらないわ.と思いました.が.
ならばFTPも同じようにすればと思い(いろんなウェブページでも確認しましたが)ポート転送設定でftpとftp-dataを設定.
FTPクライアントでホストの指定をlocalhostにして試してみました.
ここでつまづきました.ログインはできるのですが途中で止まってしまいます.
以下はそのlogです.

ホストを探しています - localhost
ホストに接続しています - localhost (127.0.0.1)
220 ProFTPD *** Server (ProFTPD Basic Configuration) [sav.localdomain]
>USER *****
331 Password required for *****.
>PASS ******
230 User ***** logged in.
>XPWD
257 "/" is current directory.
ファイルリストを取得しています...
>TYPE A
200 Type set to A.
>PORT 127,0,0,1,4,40
200 PORT command successful.
>LIST
425 Can't build data connection: Connection refused
>PASV
227 Entering Passive Mode (61,213,97,34,128,89).
>LIST

ここで止まります.ようするにポートモードでだめだったからPASVモードにクライアントはしたんですけどそれでもだめだったということです.
どうして425 Can't build data connection: Connection refusedのようになってしまうんでしょうか?ほかに足りないデータがあればすぐにアップしますのでよろしく御教授お願いします.


SSHのポート転送でのFTPはできない方が正常だったと記憶。

No.6435 投稿時間:2002年11月20日(Wed) 02:00 投稿者名:水芹 URL:http://www.dream-seed.com

こんばんは。

うろ覚えで申し訳ないのですが、SSHのポート転送でのFTPはできない方が正常だったと記憶しています。
そもそもポートモードでは出来ません。
passiveモードでもおそらくVineデフォルト設定のFTPでは出来ないかと思います。

出来るようにする方法ですが、FTPサーバーの設定を変更して第三者へのFTP転送を許可する(すいません、具体的な設定項目がわかりません)しかないのではないかと思います。

エラーになる原因
FTPサーバー側からみれば、自分で動いているSSHから接続されているように見えます。FTPでは認証後のやり取りはデータポートを使いますが、これはサーバー側からセッションを張るのでポート転送できません。この問題はpassiveモードで解決できますが、データの転送先は自分以外です。なのでセキュリティ上好ましくないという理由で最近のFTPサーバーはデフォルトでこういう転送を許さないという設定になってた気がします。

FTPサーバーの設定でpassiveモードで使うポートを制限して、そのポートすべてを転送するようにttssh側で設定すればいけるかもしれませんが。


FTPはPASVでしか動かないようです。

No.6441 投稿時間:2002年11月20日(Wed) 22:36 投稿者名:カイナン URL:http://yaguma.ath.cx

ご返答ありがとうございます.
いろいろなウェブページで調べましたがFTPはPASVでしか動かないようです.
Vine標準のProFTPではなくてほかのFTPDaemonなら動くのかどうかもう少し調べてみます.


SSHのFTP転送について その後

No.6487 投稿時間:2002年11月23日(Sat) 18:33 投稿者名:カイナン URL:http://yaguma.ath.cx

SSHのその後です.
とりあえず分かったことはFTP転送はSSHではあまりうまく動かないということです.
理由はFTPは使用するポート番号が毎回変わる(PASV)のでOpenSSHがサポートしている単純なポート転送機能では代用できないということです.もちろんポートモードでの転送もできません.そのためSFTPという新しいプロトコルが採用されています.
クライアントのSFTPソフトとしてはSSHSecureShellCliant-3.2.0.exeがあり本家sshからダウンロードできます.このクライアントソフトを少し使ってみましたがffftpのような操作感で好感が持てました.しばらく使ってみるつもりです.


|目次|掲示板|過去ログ目次|▲頁先頭|