CentOS4.4でサーバ構築しています。「CentOSで自宅サーバー構築」を参考に進めています。

現在、FTPサーバの構築で躓いています。

http://centossrv.com/rpmforge.shtml
yum-prioritiesプラグイン導入まではうまくいきますが、
RPMforgeリポジトリ導入のところで
[root@localhost /]# rpm -ivh http://dag.wieers.com/packages/rpmforge-release/rpmforge-release-0.3.6-
1.el4.rf.i386.rp
http://dag.wieers.com/packages/rpmforge-release/rpmforge-release-0.3.6-1.el4.rf.i386.rp を取得しています
エラー: skipping http://dag.wieers.com/packages/rpmforge-release/rpmforge-release-0.3.6-1.el4.rf.i386.rp - transfer failed - Unknown or unexpected error
というエラーが出ます。

http://centossrv.com/proftpd.shtml
ProFTPDインストールにも失敗します。
[root@localhost /]# yum -y install proftpd
Loading "priorities" plugin
Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
0 packages excluded due to repository priority protections
Parsing package install arguments
No Match for argument: proftpd
Nothing to do

[root@localhost /]#vi /etc/proftpd.conf
も空ファイルとなっています。

よろしくお願いします。

回答の条件
  • 1人10回まで
  • 登録:2009/03/03 12:40:29
  • 終了:2009/03/03 16:44:21

ベストアンサー

id:Marin_MTB No.2

Marin_MTB回答回数40ベストアンサー獲得回数52009/03/03 13:40:57

ポイント100pt

うーん、古いrpmforge 0.2.2があるようですね。

この場合は、rpmのオプションをアップグレードに設定して試してみてください。

# rpm -Uvh rpmforge-release-0.3.6-1.el4.rf.i386.rpm

これでもダメな場合、既存のrpmforgeを一旦削除して、

# rpm -q rpmforge-release

# rpm -ev <上で表示されたパッケージ名>

再度最新版を追加してみてください。

# rpm -ivh rpmforge-release-0.3.6-1.el4.rf.i386.rpm

id:ikazuo

うまくいきました。

Installed: proftpd.i386 0:1.3.1-1.el4.rf
Complete!

ありがとうございました!

またよろしくお願いします。

2009/03/03 13:46:37

その他の回答(1件)

id:Marin_MTB No.1

Marin_MTB回答回数40ベストアンサー獲得回数52009/03/03 13:02:14

RPMforgeのURLが間違っていませんか?正確には以下ではないですか?

http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-rel...

proftpdのインストールについても上が原因と思われます。

id:ikazuo

一旦wgetでhttp://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-rel...をDLし、サーバ上でrmp -ivhとしました。

[root@localhost /]# rpm -ivh rpmforge-release-0.3.6-1.el4.rf.i386.rpm
Preparing...                ########################################### [100%]
        file /etc/apt/sources.list.d/rpmforge.list from install of rpmforge-release-0.3.6-1.el4.rf conflicts with file from package rpmforge-release-0.2-2.2.el4.rf
        file /etc/smart/channels/rpmforge.channel from install of rpmforge-release-0.3.6-1.el4.rf conflicts with file from package rpmforge-release-0.2-2.2.el4.rf
        file /etc/sysconfig/rhn/sources.rpmforge.txt from install of rpmforge-release-0.3.6-1.el4.rf conflicts with file from package rpmforge-release-0.2-2.2.el4.rf
        file /etc/yum.repos.d/mirrors-rpmforge from install of rpmforge-release-0.3.6-1.el4.rf conflicts with file from package rpmforge-release-0.2-2.2.el4.rf
        file /etc/yum.repos.d/rpmforge.repo from install of rpmforge-release-0.3.6-1.el4.rf conflicts with file from package rpmforge-release-0.2-2.2.el4.rf

     ●●●

ですが、それでもyum -install install proftpdはうまくいかないようです。

[root@localhost /]# yum -y install proftpd
Loading "priorities" plugin
Setting up Install Process
Setting up repositories
update                    100% |=========================|  951 B    00:00
base                      100% |=========================| 1.1 kB    00:00
addons                    100% |=========================|  951 B    00:00
extras                    100% |=========================| 1.1 kB    00:00
Reading repository metadata in from local files
0 packages excluded due to repository priority protections
Parsing package install arguments
No Match for argument: proftpd
Nothing to do
2009/03/03 13:22:17
id:Marin_MTB No.2

Marin_MTB回答回数40ベストアンサー獲得回数52009/03/03 13:40:57ここでベストアンサー

ポイント100pt

うーん、古いrpmforge 0.2.2があるようですね。

この場合は、rpmのオプションをアップグレードに設定して試してみてください。

# rpm -Uvh rpmforge-release-0.3.6-1.el4.rf.i386.rpm

これでもダメな場合、既存のrpmforgeを一旦削除して、

# rpm -q rpmforge-release

# rpm -ev <上で表示されたパッケージ名>

再度最新版を追加してみてください。

# rpm -ivh rpmforge-release-0.3.6-1.el4.rf.i386.rpm

id:ikazuo

うまくいきました。

Installed: proftpd.i386 0:1.3.1-1.el4.rf
Complete!

ありがとうございました!

またよろしくお願いします。

2009/03/03 13:46:37
  • id:JULY
    >rpm -ivh http://dag.wieers.com/packages/rpmforge-release/rpmforge-release-0.3.6-
    1.el4.rf.i386.rp

    URL の最後に m が抜けているだけ、というオチではない?
  • id:ikazuo
    [root@localhost /]# rpm -ivh http://dag.wieers.com/packages/rpmforge-release/rpmforge-release-0.3.6-1.el4.rf.i386.rpm
    http://dag.wieers.com/packages/rpmforge-release/rpmforge-release-0.3.6-1.el4.rf.i386.rpm を取得しています
    エラー: skipping http://dag.wieers.com/packages/rpmforge-release/rpmforge-release-0.3.6-1.el4.rf.i386.rpm - transfer failed - Unknown or unexpected error
  • id:ikazuo
    http://centossrv.com/proftpd.shtmlの通りに進め、ProFTPD起動まで進みました。ポートチェック【外部からポート開放確認】も問題ありませんが、

    WindowsクライアントからサーバへFTP接続しようとするとできない原因がわかりません。アクセス制限は全部チェックし、問題ないです。

    TLS対応FTPクライアント導入をしていないためでしょうか。


  • id:Marin_MTB
    まず、ftpクライアントは何でしょうか。
    Windows付属のftpクライアントであればTLSは未対応です。
    それと、TLSじゃない認証でも入れないのでしょうか。
    つまり、proftpd.confの
    > TLSRequired on
    をoffにしてもダメですか?

    ちなみに、今後できれば、『エラーが出る』とか『接続出来ない』だけではなく、何を、どこまでしたか、エラーが出ているのであれば、具体的なエラーメッセージなどを付記していただけると余分なやりとりが減ってスムーズになりますよ。
  • id:ikazuo
    ftpクライアントはFFFTPを使用しています。

    【FFFTPの設定】
    接続設定はPASVモードをoffにし、ユーザ名及びパスワードは、Linux上のユーザ名・パスワードを設定しています。

    http://vine-linux.ddo.jp/linux/ftp/ffftp.phpを参考にしました。
    サーバ側の/etc/proftpd.confに何かFFFTP用の設定が必要になるのでしょうか。

    --

    >> TLSRequired on
    > をoffにしてもダメですか?

    offにしてみましたが、接続できない状態です。

    --

    /etc/ftpusersにWindowsからftpアクセスするときに使用するLinux上のユーザ名を追加しましたが状況は変わらずです。

    --

    コマンドプロンプトからもアクセス不可です。
    C:ftp 192.168.1.3
    192.168.1.3 に接続しました。
    接続がリモート ホストによって閉じられました。

    --
  • id:Marin_MTB
    TLSを使わなければFFFTPの設定は変える必要はないはずです。
    では、Windows上からコマンドプロンプトを開き、
    C:\> telnet <問題のホスト> 21
    として、まずはtelnetでつながるか試していただけますか?
    通常はバナーが表示されます。
    バナーが表示されたら、そのまま以下のように入力して、どういうリアクションになるか、確認してください。
    USER <ユーザ名>
    PASS <パスワード>
    QUIT

    正常にやりとり出来ていれば以下のようになるはずです。(以下はSolaris付属のftpdでの例なのでメッセージは多少変わります)
    > C:\> telnet <問題のホスト> 21
    > 220 <問題のホスト> FTP server ready.
    > USER test
    > 331 Password required for test.
    > PASS ****
    > 230 User test logged in.
    > QUIT
    > 221-You have transferred 0 bytes in 0 files.
    > 221-Total traffic for this session was 204 bytes in 0 transfers.
    > 221-Thank you for using the FTP service on <問題のホスト>.
    > 221 Goodbye.
    > ホストとの接続が切断されました。
    > C:\>
  • id:Marin_MTB
    おっと、回答が前後してしまいましたね。
    その状態ですと、xinetdの設定に問題がありそうです。
    以下3点を確認してみてください。
    ・proftpd.confの以下のディレクティブはinetdになっていますか?
    > ServerType inetd
    ・/etc/xinetd.d/xproftpdの設定で、
    > server = /usr/local/sbin/in.proftpd
    の設定内容、特にパスは正しく設定されていますか?
    ・hosts.allowの設定内容は?
    デフォルトだとTCP-Wrappersが有効なので、/etc/hosts.allowに
    > in.proftpd : <アクセスを許可したいホストまたはIP> : allow
     のような感じで設定をしないとつながらないようです。
     試しに、Linuxサーバ側で
     # tail /var/log/messages
     をしてxinetdの挙動を確認してみると良いかもしれません。
  • id:Marin_MTB
    もう一点。
    > # chkconfig --list xproftpd
    > xproftpd on
    これは大丈夫ですか?offのままであれば、
    > # chkconfig xproftpd on
    してxinetdからの起動を有効化してください。
  • id:Marin_MTB
    あら?
    > ServerType standalone
    だと、proftpdをDaemonモードで起動していると言うことですか?
    それで、PortをListenしているとなると、messagesまたはproftpd.confに何かエラーメッセージが出ていませんか?
  • id:ikazuo
    仰る通り、Fatalのエラーが出ていました。

    [root@localhost conf]# tail /var/log/messages
    Mar 3 15:40:04 localhost xinetd[32018]: readjusting service ftp
    Mar 3 15:40:04 localhost xinetd[32018]: Reconfigured: new=0 old=1 dropped=0 (services)
    Mar 3 15:40:28 localhost xinetd[32018]: Exiting...
    Mar 3 15:40:28 localhost xinetd: xinetd 停止 succeeded
    Mar 3 15:40:28 localhost xinetd[32059]: xinetd Version 2.3.13 started with libwrap loadavg options compiled in.
    Mar 3 15:40:28 localhost xinetd[32059]: Started working: 1 available service
    Mar 3 15:40:28 localhost xinetd: xinetd 起動 succeeded
    Mar 3 15:40:36 localhost proftpd[32062]: Fatal: TLSRequired: bad parameter on line 95 of '/etc/proftpd.conf'
    Mar 3 15:41:07 localhost proftpd[32063]: Fatal: TLSRequired: bad parameter on line 95 of '/etc/proftpd.conf'
    Mar 3 15:41:17 localhost proftpd[32064]: Fatal: TLSRequired: bad parameter on line 95 of '/etc/proftpd.conf'


    --

    95行目をoffにしてみましたが、特に変わった様子はないです。

    [root@localhost conf]# tail /var/log/messages
    Mar 3 15:41:07 localhost proftpd[32063]: Fatal: TLSRequired: bad parameter on line 95 of '/etc/proftpd.conf'
    Mar 3 15:41:17 localhost proftpd[32064]: Fatal: TLSRequired: bad parameter on line 95 of '/etc/proftpd.conf'
    Mar 3 15:44:59 localhost xinetd[32059]: Exiting...
    Mar 3 15:44:59 localhost xinetd: xinetd 停止 succeeded
    Mar 3 15:44:59 localhost xinetd[32078]: xinetd Version 2.3.13 started with libwrap loadavg options compiled in.
    Mar 3 15:44:59 localhost xinetd[32078]: Started working: 1 available service
    Mar 3 15:44:59 localhost xinetd: xinetd 起動 succeeded
    Mar 3 15:45:07 localhost proftpd[32081]: warning: unable to determine IP address of 'localhost.localdomain'
    Mar 3 15:45:07 localhost proftpd[32081]: error: no valid servers configured
    Mar 3 15:45:07 localhost proftpd[32081]: Fatal: error processing configuration file '/etc/proftpd.conf'
  • id:Marin_MTB
    もうひとつ、載せていただいた設定ファイルを見ると、
    TLSRequired off
    TLSRequired on
    と、二重に設定がされていますね。
  • id:Marin_MTB
    やっぱり…。
    まずはproftpdをどのモードで起動したいのかをご自身で明確にしてください。
    ・xinetd経由でproftpdを起動するの場合
     今のproftpd.confのServerTypeをstandardからinetdに書き換えてください。
     それと、必要に応じてhosts.allowの設定も忘れずに。
    ・Daemonとして直接起動をする場合
     まず、xinetdの設定を切ります。
     # chkconfig xproftpd off
     次にproftpdの起動スクリプトを作成して、proftpdをDaemonとして起動するようにしてください。
  • id:ikazuo
    修正しました。

    -略-

    #ServerType standalone
    ServerType inetd

    -略-

    TLSEngine on
    TLSRequired off # ← TLS接続のみ許可※offにすると通常接続も許可
    TLSRSACertificateFile /usr/share/ssl/certs/proftpd.pem
    TLSRSACertificateKeyFile /usr/share/ssl/certs/proftpd.pem
    TLSCipherSuite ALL:!ADH:!DES
    TLSOptions NoCertRequest
    TLSVerifyClient off
    TLSLog /var/log/proftpd/tls.log

    -略-
  • id:Marin_MTB
    その設定であれば接続出来るはずです。
    出来ない場合、
    # ps -ef | grep proftpd
    でDaemonモードとして起動しっぱなしのプロセスがないか確認。かつ、
    # tail -100 /var/log/messages
    で、エラーメッセージを確認してください。
  • id:ikazuo

    [root@localhost conf]# ps -ef | grep proftpd
    root 32175 4074 0 16:07 pts/0 00:00:00 grep proftpd
    [root@localhost conf]#

    --
    設定ファイルに誤りがあるようです...

    [root@localhost conf]# tail -100 /var/log/messages
    -略-
    Mar 3 16:05:56 localhost proftpd[32169]: warning: unable to determine IP address of 'localhost.localdomain'
    Mar 3 16:05:56 localhost proftpd[32169]: error: no valid servers configured
    Mar 3 16:05:56 localhost proftpd[32169]: Fatal: error processing configuration file '/etc/proftpd.conf'
    [root@localhost conf]#
  • id:Marin_MTB
    いよいよ大詰めですね。
    > unable to determine IP address of 'localhost.localdomain'
    と言っているので、Listenする「localhost.localdomain」のIPアドレスを特定出来ないようです。
    /etc/hostsに
    127.0.0.1 localhost.localdomain localhost
    のような記述はありますか?
    ない場合は追加してください。
  • id:ikazuo
    /etc/hostsの設定を上記のように変更しました。
    以下はログです。

    [root@localhost conf]# tail -100 /var/log/messages
    -略-
    Mar 3 16:16:45 localhost proftpd[32204]: localhost.localdomain - 127.0.0.1:21 masquerading as 210.131.50.127
    Mar 3 16:16:45 localhost proftpd[32204]: localhost.localdomain (192.168.1.2[192.168.1.2]) - FTP session opened.
    Mar 3 16:16:45 localhost proftpd: PAM-listfile: Refused user XXXXX for service proftpd
    Mar 3 16:16:56 localhost last message repeated 2 times
    Mar 3 16:17:07 localhost proftpd[32205]: localhost.localdomain - 127.0.0.1:21 masquerading as 210.131.50.127
    Mar 3 16:17:07 localhost proftpd[32205]: localhost.localdomain (192.168.1.2[192.168.1.2]) - FTP session opened.
    Mar 3 16:17:07 localhost proftpd: PAM-listfile: Refused user XXXXX for service proftpd
    Mar 3 16:17:19 localhost proftpd[32206]: localhost.localdomain - 127.0.0.1:21 masquerading as 210.131.50.127
    Mar 3 16:17:19 localhost proftpd[32206]: localhost.localdomain (192.168.1.2[192.168.1.2]) - FTP session opened.
    Mar 3 16:17:19 localhost proftpd: PAM-listfile: Refused user XXXXX for service proftpd

    パスワードではじかれます。
    何度も確認し、Linuxのuser名に対応するパスワードを入力しているのですが...
    どこかに別にFTP用のパスワードなどを書き込む必要があるのでしょうか。

    PASVモードをon/offのどちらにしても状況は同じです。
  • id:Marin_MTB
    うーん、過去の投稿に
    > /etc/ftpusersにWindowsからftpアクセスするときに使用するLinux上のユーザ名を追加しましたが状況は変わらずです。
    とありましたが、ftpusersはftpログインを『許可しない』ユーザを列挙するファイルなので、もし該当ユーザをftpusersに追加していたら、削除して試してみてください。
  • id:ikazuo
    ftpusersから当該ユーザ名を削除で接続できるようになりました<(_ _*)>
    長々とお付き合いいただきまして、ありがとうございました。
    外部からの接続はまだ試していませんので、今後試してみたいと思います。
    ありがとうございました!

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません