« Linuxでよく使われるrpmコマンドとインストール済みアプリ | トップページ | unicodeは何が標準か? »

2014.08.17

vsftpを利用可能にする

ほったらかしのVSPを久しぶりに触るシリーズ。
とりあえずtelnetはできる状態なので、続けてftpをできるようにしたい。

ftpデーモンは特にこだわりはないので、vsftpdでいいんでないかと思う。
インストールされているか調べると

#rpm -qa |gerp vsftpd
vsftpd-2.2.2-11.el6_4.1.x86_64
ということでVer2.2.2がrpmでインストールされているので、これを使うこととする。

設定ファイルの変更


設定ファイル(vsftpd.conf)は/etc/vsftpdにあることがわかっているので、こちらを修正。初期値は下記の状態。
# Example config file /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to FTP service.
chroot_local_user=YES
chroot_list_enable=YES
ls_recurse_enable=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
use_localtime=YES
pasv_addr_resolve=YES
pasv_min_port=60000
pasv_max_port=60030
この手の設定ファイルにありがちな大量のコメントアウト状態である。
設定したい内容は「anonymousの接続禁止」「ホームディレクトリより上位にはアクセス不可」くらいのものである。
その場合見なくてはいけないパラメータはanonymous_enable=NOとchroot_local_user=YESである。

なーんだ、デフォルトでそうなってるじゃないか。最近のソフトはほんとにデフォルト値がよく使う設定になっていて手がかからないよい子たちだ。

で、あとはサービスを起動しないといけない。
これは/etc/rc.d/init.dにあるバイナリを起動する。

/etc/rc.d/init.d/vsftpd start
これでOKである。

よし、これでFTPクライアントを立ち上げてアクセスをするぞ!
……あれ? ログインできない。
FTPクライアントのログをよく見てみると……

----------------------------
ホスト xxx.xxx.xxx.xxx (21) に接続しています.
接続しました.
220 Welcome to FTP service.
>USER hogehoge
331 Please specify the password.
>PASS [xxxxxx]
500 OOPS: could not read chroot() list file:/etc/vsftpd/chroot_list
>USER hogehoge
500 OOPS: priv_sock_get_result
ログインできません.
ん? そうか、アクセス許可リストにhogehogeさんが入ってないじゃないか(^^;
そんなわけで/etc/vsftpd/chroot_listをエディタで開いてhogehogeという行を追加した。

よし、これで大丈夫なはず。

----------------------------
ホスト xxx.xxx.xxx.xxx (21) に接続しています.
接続しました.
220 Welcome to FTP service.
>USER hogehoge
331 Please specify the password.
>PASS [xxxxxx]
230 Login successful.
>XPWD
257 "/home/hogehoge"
>TYPE A
200 Switching to ASCII mode.
>PASV
227 Entering Passive Mode (xxx,xxx,xxx,xxx,234,109).
ダウンロードのためにホスト xxx.xxx.xxx.xxx (60013) に接続しています.
接続しました.
>LIST
150 Here comes the directory listing.
226 Directory send OK.
ファイル一覧の取得は正常終了しました. (0 Bytes)
というわけで、今度は無事に接続成功。
やれやれであるw

|

« Linuxでよく使われるrpmコマンドとインストール済みアプリ | トップページ | unicodeは何が標準か? »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: vsftpを利用可能にする:

« Linuxでよく使われるrpmコマンドとインストール済みアプリ | トップページ | unicodeは何が標準か? »