「接続できるユーザを制限する方法」
ということで、まず最初に認識しておく
べきことは、Fedora8には一般ユーザ
(Rinaとか)以外にもアカウントが多数
登録されているということ。


管理者のrootであったり、デーモン・
プログラムを制御するユーザである
deamon、メールの送受信を行うmail
などなど・・・。こういった一般ユーザ
以外のユーザを利用してFTPサーバ
にログインできてしまうのは問題!


悪意のあるユーザにログインを許して
しまったら何されるかわからないから。
特にroot権限でのログインはご法度ねビックリマーク





「vsftpd」ではそういったアクセスの可否
を「/etc/vsftpd/user_list」に登録できる
みたいょ。このユーザリストにはアクセス
を拒否したいユーザを書いておくんだよ。
デフォルトではこんな感じ。



Rina-chanのLinux =Fedora8=

Rina-chanのLinux =Fedora8=


もし、このユーザリストに書かれてるユーザ
のみ をアクセス許可したい場合には、この
ファイルに 【userlist_deny=NO】 と追加して
上書き保存&「vsftpd」再起動するよ。


再起動方法は「gedit」を終了させてから
【/etc/init.d/vsftpd restart】だったね。





ユーザリストに書かれたユーザを拒否
したい場合でも許可したい場合でも、
このユーザリストを有効にしないとダメ
なのね。 「/etc/vsftpd/vsftpd.conf
ファイル」に【userlist_enable=YES】って
入力してね。


じゃぁ、実際にやってみよ。


【su】
【gedit /etc/vsftpd/vsftpd.conf】



Rina-chanのLinux =Fedora8=

Rina-chanのLinux =Fedora8=

・・・!!

・・・!?


最初っから書いてあるじゃんむっ

(念の為、書かれてるか確認してくださいね。)


ちぇッむかっ



まぁいいやDASH!



「vsftpd」には、「/etc/vsftpd/user_list」
のほかにも、「/etc/vsftpd/ftpusers」が
あるよ。「/etc/vsftpd/ftpusers」も普通
はそのファイルに記載されたユーザから
のアクセスを拒否するょ。こんなヤツ↓



Rina-chanのLinux =Fedora8=

Rina-chanのLinux =Fedora8=


じゃぁ、さっきの「user_list」と「ftpusers」と
どう違うのさ ヾ(。`Д´。)ノ ってトコなんだ

けど、これは言葉で説明するよりも下の

イラストを見てもらった方が早いかな。



Rina-chanのLinux =Fedora8=


要は、「user_list」はユーザ名で判断。
「ftpusers」はパスワードを受け取ったあと
の認証で拒否するってコト。


明日は「匿名でもFTPサーバにアクセス

可能にする方法」について書こうかな。


それじゃ、今日はここまで!


Bye, Bye音譜



ペタしてね

FTPサーバについて「アクティブモード」と
「パッシブモード」があるっていうのは、以前
『#033 FTPサーバでのやりとり』の時に少し
触れたね。念の為、その時のを転載するね。



ダウン転載ここからダウン


▽▲▽▲▽▲▽▲▽▲
※1 アクティブ・モード
FTPサーバには、アクティブモードとパッシブモード
というものがあります。違いはポートの使い方です。
クライアントからの接続要求は両方とも21番ポート
ですが、データ転送やファイル一覧の取得について
は、サーバ側から「●番ポートを使いなさい」と指示
が出来ます。その指示に従ってクライアントからFTP
サーバに接続します。パッシブモードの利用について
は、ファイアウォール等で守られたクライアントからの
利用に便利だそうです。


アップ転載ここまでアップ



↑を踏まえて、じゃぁ、どういう時に「パッシブモード」
が必要かっていうと、自宅にクライアントがあって、
インターネット上にFTPサーバがある場合。自宅の
「ファイアウォール」がサーバ側からのコネクション
要求を通さないってワケ。最近のブロードバンド
ルータに搭載されている「ファイアウォール機能」は
初期設定ではほとんどのポートが閉塞してるのが
一般的みたいだから。






「パッシブモード」でだと、FTPデータの転送に使う
コネクションを張る要求を、クライアントから発する
から正常にデータの転送が可能になるの。

イラストにするとこんな感じ↓
(使いまわし&簡略化でごめんなさい。)



Rina-chanのLinux =Fedora8=



Rina-chanのLinux =Fedora8=





さてさて、「パッシブモード」の概念が大体分かった
ところで、サーバ側の設定で「パッシブモード」を
受け付けるようにしてあげないと意味がありませんね。




まず最初に覚えておいてほしいのは、この設定に
限らずサーバ側での設定をしたい場合に、「vsftpd」
には3種類の設定ファイルがあるってコト。


これらのファイルは「gedit」で開くと便利だよ。


1/etc/vsftpd/vsftpd.conf
→vsftpdの基本設定を行うファイル
2/etc/vsftpd/ftpusers
→ログインを禁止するユーザを列挙する
3/etc/vsftpd/user_list
→制限するユーザを列挙する



次に覚えてほしいのは、これら3つのファイルを編集
した場合、有効にするには、そのファイルを上書き
保存(?)して画面を閉じた後、コマンドで
【/etc/init.d/vsftpd restart】と「vsftpdサービス」を
再起動してあげなきゃいけないってコト。




じゃぁ、実際に、「パッシブモード」を受け付けるよう
設定をしてみよ。


【su】
【gedit /etc/vsftpd/vsftpd.conf】


Rina-chanのLinux =Fedora8=


すると画面が表示されるよ。
画面が表示されたら、一番下の行に
【pasv_enable=YES】と付け加えてね。


Rina-chanのLinux =Fedora8=


そのまま画面を閉じようとするとWindowsのアプリ
ケーション同様「上書きしないの?」みたいに警告
メッセージが表示されるよ。


Rina-chanのLinux =Fedora8=


画面を閉じ終えたら、「端末」に戻って、
【/etc/init.d/vsftpd restart】コマンドで「vsftpd」
サービスを再起動してあげてね。


Rina-chanのLinux =Fedora8=


(Rinaは「gedit」を閉じる前にコマンドを打とうと
二回ほどEnterキー押しちゃったから、少し変な
表示になってしまってるけど気にしないでね。)


ちゃんと「vsftpdを停止中:[OK]」と「vsftpd用の
vsftpdを起動中:[OK]」って表示されたかな?


ちゃんと表示されてればOKグッド!


もし、[OK]と表示されなかった場合には、もう一度
「gedit」での編集が間違えてないか確認してみてね。






今日は、まだ続くょDASH!


Rinaも少し疲れてきたけどね得意げ


でも、あともうちょっと、お付き合いをドキドキ



「パッシブモード」を利用してファイル転送を行う
場合は、FTPクライアントでもパッシブモードを利用
するように設定しないといけないんだ。



例えば、Windowsで動作する「FFFTP」っていう
フリーソフトの場合、「ホストの設定」の「拡張」タブ
にある「PASVモードを使う」にチェックを入れておく
といいんだよ。「FFFTP」に関してはまた今度説明
する予定。頭の片隅にでもいれといてね。



あと、余談になっちゃうけど、今回説明した「gedit」
での編集について、Rinaは実際に試してないけど、
「パッシブモード」で利用するデータ転送用のポート
番号の範囲を【pasv_max_port】と【pasv_min_port】
で設定できるみたい。値を設定しない場合には、
「vsftpd」が毎回ランダムな値を算出し、それを
ポート番号として利用するみたい。



ふぅ・・・天使



とりあえず、今日はここまでラブラブ



明日は「接続できるユーザを制限する方法」に
ついて書こうと思ってます。


Bye, Bye音譜


ペタしてね


前回の『#038 「ファイアウォール」の設定
の最後で「これだけじゃ、外部からちゃんと
アクセスできないみたい」って書いたと思う
けど、「ちゃんと」っていうところがポイント(σ・∀・)σ


何が言いたいかというと・・・

「ファイル転送はできないよ」っていう意味ひらめき電球



Fedora8に搭載されている「SELinux」って
いうのが有効になってると、「SELinux」が
アクセスの制限を行うからね (^_-)☆


初期設定だと「vsftpd」がユーザのホーム
ディレクトリを一覧することを禁止してるんだ。


だから認証が正常に行われても、ユーザの
ホームディレクトリの情報を閲覧できず、
アクセスに失敗した状態になってしまう…
ってコト。


じゃぁ、その「SELinux」の設定を変更して
「vsftpd」がユーザのホームディレクトリに
アクセスできるようにしてみよ。


いつも通り、【su】コマンドで管理者権限に。

そのあと、少し長いコマンドになっちゃうけど
【/usr/sbin/setsebool -P ftp_home_dir true】
って入力してね。



Rina-chanのLinux =Fedora8=


「ftp_home_dir」はFTPサーバがユーザのホーム
ディレクトリにアクセスするのを制限したり許可
したりできる設定項目で、「true」と指定すると
アクセスを許可して、「false」と指定するとアクセス
を禁止するよ。「-P」というのはシステムを再起動
してもこの設定を有効するオプションね。



これで再度、FTPクライアントを利用してサーバに
アクセスすると、ユーザのホームディレクトリにある
ファイルが正常に一覧されるハズ。



明日は「パッシブモード」について。

少し長いブログになっちゃうかもしんない。


今日はここまで。 Bye, Bye音譜


ペタしてね