proftpdで anonymous loginを拒否する設定。
sorry Japanese only
最終更新日 2005/08/16
page size = Mbyte

proftpdで anonymous loginを拒否する設定。

/etc/proftpd.confを開く。
<anonymous ~ftp>の行から </anonymous>の行を全て #を付けてコメントアウトとする。
これで anonymousログインは働かなくなる。

proftpdにて login拒否する user名を設定

proftpdにて login拒否するユーザー名を書き連ねるファイルは /etc/ftpusers
loginをさせたくないユーザー名を、viエディターで追加すれば良い。

proftpdを inetd経由のアクセスへ変更

chkconfig --list
にて proftpdの列が 3,4,5:onなのを確認。
chkconfig --del proftpd
その後 chkconfig --listを行い、proftpdの列が 1,2,3,4,5,6:offになったのを確認。
これにて linux再起動後に proftpdがデーモンで起動しなくなる。

vinelinux.orgの FAQを見ると、スタートアップスクリプト本体は /etc/rc.d/init.d/以下に置き、RUN Level-1で ONにしたいんだったら /etc/rc.d/rc1.d/以下にスクリプト本体のリンクを張る。
と言うのを chkconfigコマンドは自動でやってくれているんでしょう。

ftpデーモンが必要無いのだったらここまでで OK。

/etc/proftpd.confを開く
ServerType StandAlone を
ServerType inetd に変更

/etc/inetd.confを開く。
ftp     stream  tcp     nowait  root    /usr/sbin/tcpd  in.proftpd
telnet  stream  tcp     nowait  root    /usr/sbin/tcpd  in.telnetd

の様に書き換えて行頭の #を外すことにより、proftpdは tcpd経由でアクセスのある度に起動することになる。

また、tcpd経由でアクセスすると言うことは、/etc/hosts.allowと /etc/hosts.denyが有効となる。
hosts.allow -- tcpd経由でアクセスを許可する IPアドレスを記述する。
hosts.deny -- tcpd経由でアクセスさせない IPアドレスを記述する。

hosts.allowの例

ALL : 192.168.0.0/255.255.255.0 127.0.0.1
tcpd経由のアクセスを 192.168.0.xxx及び 127.0.0.1からのみにする。

ALL : ALL
tcpd経由のアクセスを全てのアドレスに許可する。

ftp : 192.168.0.77
tcpd経由の ftpのアクセスは 192.168.0.77のみに許可する。

hosts.denyの例

ALL : ALL
tcpd経由の、全てのアクセスを全てのアドレスで拒否する。

処理する順番は hosts.deny => hosts.allowの順番のようです。

apache httpdは tcpd経由のアクセスではなく /etc/rc.d/rc.localに記述して起動しているので、hosts.allow及び hosts.denyの記述には影響されません。

19849
戻る