こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

CentOS5.3 FTPサーバー

vsftpdで、FTPサーバーを構築しているんですけど、FTPで接続の構築をしているんですけどFTPサーバーのvsftpd.confの設定を終えてから接続するとアクセスが拒否されましたとでます。現在使っているクライアントFTPソフトはWinSCPを使っています。最終的にはホームページビルダーの付属ファイル転送ソフトで接続したいと思っています。
vsftpd.confの設定の中身です。
anonymous_enable=no
local_enable=YES
write_enable=YES
local_umask=011
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
idle_session_timeout=3600
data_connection_timeout=3600
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
listen=YES
追加した部分の設定は
pam_service_name=vsftpd
userlist_enable=NO
tcp_wrappers=YES
userlist_deny=NO
userlist_enable=NOです。
その他は/etc/vsftpd/chroot_listはユーザーアカウントで作成したのを入力しています。ここだけができなくて困っています。アドバイスをお願いします。Webサーバーは問題なくできました。FTPサーバーのポートは開放しています。よろしくお願いします。

投稿日時 - 2009-10-28 01:11:17

QNo.5402407

困ってます

質問者が選んだベストアンサー

>1~7まではやりましたが、そのあとどのようにすれば接続できますか?
本当に解かにくいのですが
上記では、LAN までの事が書いてあるので
PASV か そうでないにしろとにかく接続できたと解釈してしまいます。
1~7 の設定( 編集 ) なら、一時間もかからずに出来るではないですか。

pasv_enable=NO
#download_enable=YES
#ls_recurse_enable=YES
#port_enable=YES
#dirlist_enable=YES
cmds_allowed=LIST,CWD,PWD,TYPE,XPWD,PORT
は、direct mode のために実験したことですから書く必要はありません

>LANでもWANでも接続できません
LAN でも接続出来ませんでは応えようが有りません。
何故、LOG や 途中のmessage を書かないのですか。
FFFTP ならば、 表示 --> 処理内容を表示

下記の設定で動作しています。
ip_conntrack_ftp を 適用したので
pasv_min_port=
pasv_max_port=
は、書いてない。
PASV だから
pasv_enable=
も書いてない。
必要なものは追加して下さい。
------- ここから--------
anonymous_enable=no
listen=YES
local_enable=YES
write_enable=YES
#local_umask=011
local_umask=022
ascii_download_enable=YES
ascii_upload_enable=YES

dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
idle_session_timeout=3600 # ??
data_connection_timeout=3600
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

pam_service_name=vsftpd
tcp_wrappers=YES
userlist_enable=NO
userlist_deny=NO
------ ここまで ----------
$ su -
# service vsftpd status
動作中 であることを確認

vsftpd.conf を修正したら
# service vsftpd restart
//standalone mode になっているので

CentOS を
CUI か GUI かどちらで動作しているか解かりません
出来るなら、最初は GUI で やる
CUI は、見通しが悪い。
memory 1G ; HD 10G 有れば GUI で動作出来る。
vsftpd が 動作して CentOS をCUI で動作させたいなら
その後 runlevel を 3 にすれば良いだけ

Firewall を 適切に設定して下さい。
WAN は未だ先です。
DNS( BIND ) は動作しているのですか
syslog は、syslog-ng または rsyslog での設定は終わっていますか
loglotation の設定
logwatch
tripwire
簡単ではありません。

cisco みたいな 業務用の高価な router を使っているなら別だが
個人では、手間と勉強でカバーして、security をしなければ
なりません。

投稿日時 - 2009-11-02 11:08:45

補足

回答ありがとうございます。CentOSはCUIです。
log_ftp_protocol=YES を入力しても
LOGは中身はなにも記載されていませんでした。
messageはでてきました。中身です。
Oct 20 11:59:37 localhost kernel: 1141MB HIGHMEM available.
Oct 20 11:59:38 localhost kernel: 896MB LOWMEM available.
Oct 20 11:59:38 localhost kernel: found SMP MP-table at 000f51e0
Oct 20 11:59:38 localhost kernel: Memory for crash kernel (0x0 to 0x0) notwithin permissible range
Oct 20 11:59:39 localhost kernel: disabling kdump
Oct 20 11:59:39 localhost kernel: Using x86 segment limits to approximate NX protection
Oct 20 11:59:39 localhost rpc.statd[2389]: Version 1.0.9 Starting
Oct 20 11:59:42 localhost rpc.statd[2389]: statd running as root. chown /var/lib/nfs/statd/sm to choose different user
Oct 20 11:59:43 localhost kernel: DMI 2.4 present.
Oct 20 11:59:44 localhost kernel: Using APIC driver default
Oct 20 11:59:46 localhost hcid[2482]: Bluetooth HCI daemon
"/var/log/messages" 2020L, 165181C
# service vsftpd statusは実行中と出ました。

投稿日時 - 2009-11-03 14:39:14

このQ&Aは役に立ちましたか?

15人が「このQ&Aが役に立った」と投票しています

回答(17)

ANo.17

SELinux を
無効または、permmive にして下さい。
// 自分で調べて下さい。

server で install して
その後何も設定していないのではないですか。
人に聞くのも早すぎます。

GUI で どういう機能があるかをみて
それが、command で または、設定なのか勉強してください。
setup コマンドも多分知らないのでしょう?

投稿日時 - 2009-11-04 11:44:03

補足

SELinuxらへんをしないと接続はできないのでしょうか?
よくわからないので、調べてみます。

質問は締め切りさせていただきます。
最後まで回答ありがとうございました。。
感謝しています。。

投稿日時 - 2009-11-05 03:43:33

ANo.16

新しいuserを
例えば HPP2 としましょう。
TeraTerm から HPP2 で login して
su なり su - で 作業が可能という事ですね。

>FTPはログインはできませんでした
未だ HPP2 で ftp-client から login 出来ないのですか
password が 違っているとでるのですか

# 私はそろそろ降ります。疲れました。

投稿日時 - 2009-11-04 06:55:32

ANo.15

また、そもそもになりますが
TeraTerm からではなく
その server機 で HPP で login 出来ますか

また、sshd ( /etc/ssh/sshd.config ) の
設定で
PermitRootLogin yes
を そのままにして置けと説明している所が
有りました??
少しこの辺から自分で調べて整備して下さい。

投稿日時 - 2009-11-03 22:27:05

補足

Server機のキーボードで入力してログインしましたが、できなかったので、新しくアカウントを作りそのアカウントではTeraTerm側、Server機側ともログインができました。
sshd ( /etc/ssh/sshd.config ) の
設定で
PermitRootLogin no
にしてSSHを起動させましたが。
FTPはログインはできませんでした。

投稿日時 - 2009-11-04 02:06:29

ANo.14

そもそも
どういう環境で作業をされていたのですか

root で login しないで
user で login して
必要に応じて su なり su -
で作業すると習いませんでした。
// 別に 教わらなくてもよいが
最近のdistro では default では
root で login 出来なくなっています。

HPP というuser をつくったなら
HPP で login して作業するのが普通でしょう。

投稿日時 - 2009-11-03 19:38:00

補足

作業環境はCentOSを起動してTera Termからクライアントでrootでログイン、そこからFTPサーバの設定ファイル編集をしています。
su - HPPでrootからはHPPにログインすることはできますが、起動初回からHPPではログインできない状況です。
ユーザーで作ったHPPでどのような作業すればいいでしょうか?

投稿日時 - 2009-11-03 21:28:47

ANo.13

> 別のアカウントでログインはできませんでした。
> Tera Termというソフトで遠隔操作をクライアント側でしていてログインできるのはrootのみでした。

root以外のアカウントがまともに作成できていないだけでしょう、これ
ログインできるようにしないことには何も始まらない

> FTPサーバーのvsftpd.confの設定を終えてから接続するとアクセスが拒否されましたとでます

TELNET/SSHでログインできないならFTPでも拒否されて当然でしょう

投稿日時 - 2009-11-03 18:11:13

ANo.12

単純なミスは無いとして
/etc/pam.d/vsftpd
は、ありますか。

/*******
このスレッドが回答の多いで top になった。
少しみっともない。
******/

投稿日時 - 2009-11-03 14:33:20

補足

何度も回答申し訳ないです。。
vi /etc/pam.d/vsftpdで下記のようにでました。
/etc/pam.d/vsftpdだと許可がありませんと出ます。
#%PAM-1.0
session optional pam_keyinit.so force revoke
auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
auth required pam_shells.so
auth include system-auth
account include system-auth
session include system-auth
session required pam_loginuid.so

投稿日時 - 2009-11-03 15:08:12

ANo.11

・HPPというアカウントでFTP以外(TELNET/SSH等)でログインできますか?
 passwordが正しいことをまず確認してください

・HPPというユーザが使っているシェルは、/etc/shellsに記載されていますか?

投稿日時 - 2009-11-03 14:05:14

補足

別のアカウントでログインはできませんでした。
Tera Termというソフトで遠隔操作をクライアント側でしていてログインできるのはrootのみでした。

vi /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/tcsh
/bin/csh
/bin/ksh
とでました。

投稿日時 - 2009-11-03 16:15:15

ANo.10

とりあえず、
tcp_wrappers=NO
にしたらどうなりますか?

MS-DOSプロンプトからFTPでログインしようとしたときにどのようなエラーが出たのか正確に書いてください
コピー&ペーストできるはずなので

投稿日時 - 2009-11-03 00:19:25

補足

回答ありがとうございます。
C:\Documents and Settings\ユーザ>ftp
ftp> op
To 192.168.11.**
Connected to 192.168.11.**.
220 Welcome to blah FTP service.
User (192.168.11.**:(none)): HPP
331 Please specify the password.
Password:
530 Login incorrect.
Login failed.
ftp>
tcp_wrappers=NOした状態で、ログインできない状態になってしまいます。ToにはサーバのIPアドレスを入力しています。

投稿日時 - 2009-11-03 12:58:37

ANo.8

userlist_deny=NO
userlist_enable=NO
どちらでも良い。

>psv_enable=NOです
貴方が接続出来ていれば良いのだが
私は、出来ない。

「CentOS5.3のvsftpdパラメータのすべてを調べました」
http://batoton.blog73.fc2.com/blog-entry-264.html
を参照して
pasv_enable=NO
#download_enable=YES
#ls_recurse_enable=YES
#port_enable=YES
#dirlist_enable=YES
cmds_allowed=LIST,CWD,PWD,TYPE,XPWD,PORT
FFFTP の Log を みながら //他でも message
いろいろやってみたが、どうしても最後の
LIST の command が拒否される。
dos 窓の ftp でも consider using PASV
から進まない。

Linux(CentOS) から gFTP で接続すると
PASSIVE だろうがなかろうが、接続出来る。
そもそも、PASV モード だとの設定が無い。
やりとりを見ていると
Client が LIST が送る前に
Server が PASV を送っているように見える。
これが、Windows の log に表れないのだが
解釈出来ない様である。

Windows の ftp は何故か解からないが
無理をしている様な気がする。
間違っているかも知れない。

最後にします。
第一こだわる理由が解からない。
PASV でなく 運用している所はあるのでしょうか。
少なくとも大手は、PASV でしょう。

投稿日時 - 2009-11-02 00:57:52

補足

何度も回答ありがとうございます。
質問内容がややこしくて申し訳ないのですが、現在はCentOS5.3でFTPサーバを構築で設定をしていたんですけど、FTPD起動してFTPソフトから接続しても接続できない状態です。ホームページビルダー11から直接html、CGI、PHP、動画ファイルなどが送れればPASSIVEでも問題ありません。LANでもWANでも接続できません。
http://www.aconus.com/~oyaji/ftp/vsftpd_rpm.htm
1~7まではやりましたが、そのあとどのようにすれば接続できますか?
pasv_enable=NO
#download_enable=YES
#ls_recurse_enable=YES
#port_enable=YES
#dirlist_enable=YES
cmds_allowed=LIST,CWD,PWD,TYPE,XPWD,PORT
は追加コマンドとしてvsftpd.confに追加しますか?
vsftpd.confの一番最後のほうに追加に追加で記入するのでしょうか?

投稿日時 - 2009-11-02 03:33:09

ANo.7

どこまで出来ているのか良く解からないのですが
>サイトの基本設定の1~7はできたんですけど、
書き方から、LAN 内は 接続出来ていて
問題は、WAN という事になりますが
>クライアントソフトFFFTPを使いましたが、パスワードが違いますとでます。
WAN での事だと解釈出来ますが

userlist_deny=NO
userlist_enable=NO
疑問だが

投稿日時 - 2009-10-31 18:20:55

ANo.6

WinSCP で、PASV の設定が出来ないのか
探していたのですが、見つかりました

詳細設定にcheck を入れ
接続を左click すると

パッシブモードが出てきます。これにcheck を入れて
接続すると 接続出来ました。

接続
|__ プロキシ
となっていたので、プロキシの設定かと思い
見逃していました。

投稿日時 - 2009-10-30 23:37:43

ANo.5

ちなみに、WinSCP では
geocities に私の ID で接続出来ませんでした。
エラー 内容は、No.4 で書いたのと同じ。

他の ftp-client では、接続出来ています。

WinSCP は、ssh 転送の為に使っていますが
ftp 転送には使った事はありませんでした。

投稿日時 - 2009-10-30 22:39:36

ANo.4

>FTPサーバーのvsftpd.confの設定を終えてから接続するとアクセスが
>拒否されましたとでます。
>その他は/etc/vsftpd/chroot_listはユーザーアカウントで
>作成したのを入力しています。ここだけができなくて困っています
確認しますが接続出来ないのですよね
「ここだけができなくて」--上記との関係が良く解かりません。

接続が出来ないので少し変えました。
userlist_deny=NO
userlist_enable=NO --> YES
http://www.aconus.com/~oyaji/ftp/vsftpd_rpm.htm
に従うと
「userlist_file を使用した制御は行われず、
ローカルユーザはログイン可能。」 なので変更した。
userlist_file を作り、例えば hogehoge を許可した。
// hogehoge は、server での user

「デフォルトで PASV モードが有効になっているので、
敢えて設定は不要だが PASV は使用したくないなら、NO に設定」
なのでPASV が有効と考える
それに伴う変更
pasv_min_port=4000
pasv_max_port=4029
Firewall の 4000 ~ 4029 TCP を開けた。

tcp_wrappers=YES
なので、/etc/hosts.aalow , /etc/hosts.deny
を元々設定したあったので vsftpd を追加した。

chroot_list_enable=YES
chroot_local_user=YES
「特権ユーザがいなくても、空でもいいので /etc/vsftpd/chroot_list
を用意しておかないと一切ログインできないので注意が必要である。」
chroot_list を作り、hogehoge を追加した。

以上 Server は、CentOS5.4( 64bit )

ftp-client WindowsXp/home SP3 上
最初、
FFFTP : 接続出来た。
WinSCP( Ver4.19 ) : 接続出来ない
ディレクトリィ の 一覧をを取得出来ません・
port command successful : consider using PASV
ディレクトリィ /home/hogehoge のリスト取得エラー
FileZilla-client : 取得出来た。
FireFTP ( FireFox の addon ) : 接続出来た。
ホームページビルダ Ver11 の FTP tool : 接続出来た。

以上です。

投稿日時 - 2009-10-30 22:21:13

補足

回答ありがとうございます。
接続ができなくて困っています。設定ですが、サイトの基本設定の1~7はできたんですけど、
NATルータ越えでPASVモードでインターネット公開する場合の設定
からの設定ですが、これはvsftpd.confの設定で入力で現在追加した設定の一番したに入力すればいいのでしょうか?
追加した部分の設定は
pam_service_name=vsftpd
userlist_enable=NO
tcp_wrappers=YES
userlist_deny=NO
userlist_enable=NO
今回入力したのはpsv_enable=NOです。vsftpd.confの中でこれが一番したです。
PASVモードは使わないので、オフにしています。
クライアントソフトFFFTPを使いましたが、パスワードが違いますとでます。ユーザーアカウントをCentOS上、作成して、接続しましたが、接続出ませんと出ました。userlist_file も作成し、作成したユーザーアカウントを入力して、保存しています。ファイアーウォールはモジュールを追加しています。ip_conntrack_ftp
ほかはファイアーウォールは弄っていません。

投稿日時 - 2009-10-31 14:42:17

ANo.3

失礼しました。
よくみると
ftp プロトコル の選択がありました。

私は、以前ここを参考にしました。
http://www.aconus.com/~oyaji/ftp/vsftpd_rpm.htm
週末までに解決出来ていませんでしたら
まじめにみます。

投稿日時 - 2009-10-29 01:37:37

ANo.2

自分も以前勘違いしてたことがあるんですが、WinSCPってFTPクライアントでもあるんですよね
http://winscp.net/eng/docs/lang:jp

とりあえず、MS-DOSプロンプトからコマンドラインでFTPを実行してログインできるかどうかを確認し、FTPサーバ側が悪いのかクライアント側が悪いのかの問題切り分けを行うべきでしょう
コマンドラインでもNGならサーバ側の問題でしょうし、OKならクライアント側の問題でしょう

投稿日時 - 2009-10-29 01:08:02

補足

回答ありがとうござます。WindowsXPSP3HOMEで
MS-DOSプロンプトをしたところLogin failedがでたので、
ログインできていないことがわかりました。

投稿日時 - 2009-10-31 12:34:26

ANo.1

WinSCP は、SSH で動作します。
FFFTP などの、ftp client で行って下さい。
悪いけどこれまで。

投稿日時 - 2009-10-28 13:52:57

あなたにオススメの質問