▼直近のブログ

2011年

10月

30日

Ubuntu10.4でFTPサーバ 備忘録

 vsftpdを使ってftpサーバを立てた際にハマったポイントをいくつか。

 

今回の目的はアノニマスではないダウンロード専用のFTPアカウントをひとつ作成すること。その上でダウンロード出来るディレクトリはメインで使っている自分のユーザのディレクトリを用いること。

 

vsftpdはゲスト用のFTPアカウントを作るにしても、サーバ自体のユーザーアカウントを別途追加しないといけないっぽいので、そこは諦めてユーザーを作りました。

 

 vsftpdの設定

 

vsftpdパッケージ導入後、まずは

/etc/vsftpd.conf

にてコンフィグ修正。

 

主な修正箇所

 

listen=NO

#↑xinetdを使ったスーパーデーモンからの起動にする場合、listenはNOにしないといけない(vsftpdをスタンドアローンで起動させないという設定)。なお、この設定は自宅サーバがDDNSを使った変動IPの場合にxinetdが必要になるという理由でやむなくNOにしているだけなので、固定IPの人やローカル運用しかしない人には無用の設定となります。詳細は後述。

 

connect_from_port_20=YES

#↑アクティブでのポートを20番に決め打ち

 

write_enable=NO

#↑今回はDL専用のFTPアカを発行するのでNO

 

ascii_upload_enable=YES

ascii_download_enable=YES

 

chroot_local_user=YES

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd.chroot_list

#↑ユーザ権限(local_user)でのアクセスを許可。許可リストについては、挙動が複雑なようなので、他の人の設定を参考にしつつ、chroot_list_enableをYESにしてリストを作成の上、空リストを指定のディレクトリに作成しました。

 

#↓以下はUbuntuパッケージのvsftpd.confには記述がなかったので追加した分。

# userlist setting

userlist_enable=YES

userlist_deny=NO

userlist_file=/etc/vsftpd.user_list

#↑ローカルユーザのアクセスリストの指定。

local_root=ftp_file

#↑ローカルユーザがchrootにてhomeディレクトリに移動後、さらにFTP専用のディレクトリに強制移動する指定。別途home直下に"ftp_file"というディレクトリを作りました。

 

# guest setting

guest_enable=YES

guest_username=sukesan

virtual_use_local_privs=YES

#↑すべてのローカルユーザが"sukesan"のhome/ftp_fileにアクセスに来るように設定。これで、ゲスト用に発行したFTPアカウントでも私のhomeの中にあるファイルをDL出来るようになります。ついでに一応/homeのパーミッションを755にしました。

 

 

#↓パッシブモード用の設定。

# pasv setting

pasv_enable=YES

pasv_min_port=60001

pasv_max_port=60005

pasv_addr_resolve=YES

pasv_address=****(自宅サーバのドメイン名)

#自宅サーバがルータを経由してつながっている場合、pasv_addr_resolveをYESの上、pasv_address=ドメインorIPアドレスにしないと、VSFTPDはデータ通信用のIPアドレスとポートをローカルIPで相手に伝えようとしやがります!

 

こんな感じ。

FTPクライアント上での接続履歴---------------------------------

サーバからフォルダ一覧 / を取得中です (LC_TIME=ja_JP.utf8)

PASV

227 Entering Passive Mode (192.168.0.15,234,98).

LIST -aL

150 Here comes the directory listing.

------------------------------------------------------------

※listing.の状態で固まり、いつまでたってもリストが取得出来なくなります。

 

すると、自宅内部(ローカル環境)でのテストは問題なく成功するのだが、外部からpasvモードでの接続テストだと、接続だけはするのにいつまでたってもリストが表示されない・・・・

という喜悲劇が発生します。activeモードでは外部からも問題なくリスト取得までいくのですが・・・。

pasvモードではデータ通信用のIP&ポートをサーバサイドからクライアントに報告、指定するので、pasvならではの現象と言えましょう。

 

なので、サーバに直接グローバルIPが付与されていない環境では

pasv_addr_resolve=YES

pasv_address=****(自宅サーバのドメイン名orIPアドレス)

の二つの記述は必須です。自宅サーバなんてまず確実にローカルIPでしょうから、ほとんどの人が書く必要がある事でしょう。

 

設定を変更したら、別途「/etc」直下に

vsftpd.chroot_list

vsftpd.user_list

の二つのファイルを用意いたします。「vsftpd.chroot_list」は空のファイルですが、 「vsftpd.user_list」の方は許可ユーザの名前を記入する必要ありです。

 

最後にvsftpdをリスタートしてconf設定はOKですね。

 

# /etc/init.d/vsftpd restart

 

続きを読む 1 コメント

▼更新履歴

7月23日

 

ちょこちょこBlogの更新をしてます。Linuxの備忘録ですが。

リンクはこちら。

Ubuntu10.04 カーネル再構築 備忘録

ubuntu 10.04 でアナログTV再生

ゆっくLinuxであそんでみた。

 

4月4日

 

うらないの話を少し書きました。結構すきなネタなので、誰も見ない事を前提に書き足していきたいものです。


占いの話

※うらないの話のトップです。易占いの話です。

 

雷沢帰妹

※とりあえず思い入れの深い「雷沢帰妹」という結果の話についてちょろっと書きました。

 

 

ピーマン

ピーマン
ピーマン

 

ピーマンが好きだ。

が、ピーマン料理は嫌いだ。

面倒くさいからだ。

 

 

とくにタネを掻き出そうとして失敗し、水洗いして流してそのまま拭き忘れ、炒めるときに爆発してしまうのが悲しいのだった。

トマト

トマト
トマト

トマトは毎日食べている。

最近ドレッシングが迷走中です。

すりおろしたまねぎをドレッシングに入れるのがすきなのだが、そのままだと苦味が出てしまうので、レンチンして苦味を飛ばしていたのですが、限度があるようで少し苦味が残ってしまう。そこでこの間なべにかけて弱火で煮込んだのだが(すりおろしたまねぎを、)、水気が飛んでしまい、ドレッシングがねばっこいものになってしまった。

 

要はたまねぎの苦味を飛ばしたいだけなのだが。

包丁

包丁
包丁

けっこう前の話ですが、池袋の東急ハンズで、伝説のあの「ダマスカス包丁」が、超割引価格の3000円で売ってました。(在庫一掃セールだったようです、人気がないな、ダマスカス)

かなりぐらりときましたが、どうせ錆びさせるのがオチなので購入を見送りました。

ステンレスの2万円くらいの牛刀がほしいです。

 

夢を夢のままで終わらせないために・・・!

produced by yuuki

written by sukesan

このページは、ユウキの指示の元、すけさんが作らされています

ページリンク