proftp mysqlでユーザ管理(インストール編)
8 月 15, 2008 2:16 pm FTP, FreeBSD今回はproftpでmysqlを利用したFTPユーザーの管理を行っていきます。自分が管理しているサーバでの、基本的なユーザ管理ポリシーは
1 システムユーザは管理者のみに発行して一般ユーザのアカウントは発行しない。
2 メールやFTPを利用する一般ユーザのアカウントはmysqlで管理する
です。最近はOpenLDAPを使用したユーザ管理が浸透しつつあり、認証サーバを別に持っておいてアカウントの一元管理を行っていってもよいとは思うのですがFreeBSDではシステムユーザとして未対応なことと自分が主に使用しているproftpdとvpopmailはmysqlによる仮想ユーザ管理が可能で、かつmysqlによる一元管理が可能、クラスタリングもOKで慣れているsqlでユーザ管理が出来るし今まで使用してきてパフォーマンス的にも問題なく、特に不自由なく利用できてますので、まだまだ(個人的には)有用な管理方法ではないかと考えています。
では今回もportsを利用してさくっとインストールを行っていきましょう。あ、その前にFFFTPで使用するオプション付きの「NLST」コマンドをサポート出来るようにパッチをダウンロードすることから始めます。パッチはhttp://www.hayasoft.com/haya/で公開されています。使用するバージョンにあわせてパッチを取得して利用していくこととします。今回proftpdは1.3.1ですので1.3.1用のパッチを取得して利用していきます。
Hayasoftの主管理人、Haya様 パッチの公開ありがとうございます。感謝しつつ利用させて頂きましょう。
では、いつも通りrootユーザにスイッチしてからインストールを始めます。パッチを落とすディレクトリの作成から始めましょう。
% mkdir /root/proftpd
% cd /root/proftpd
% fetch http://www.hayasoft.com/haya/linux/proftpd-nlst-patch/proftpd-1.3.1-nlst-ffftp.patch
次にportsを利用してインストールしていきます。パッチを適応していきますので「make patch」コマンドにてソースコードを取得、展開したところでいったん処理を中断させます。
% cd /usr/ports/ftp/proftpd-mysql/
% make patch
「make patch」を実行するとオプション選択画面が表示されますので、mysqlが選択されていることを確認してください。確認できたら「OK」を選択してソースコードを取得、展開していきましょう。展開したらパッチ当てを行います。
% cd /usr/ports/ftp/proftpd-mysql/work/proftpd-1.3.1/
% patch -p1 < /root/proftpd/proftpd-1.3.1-nlst-ffftp.patch
% cd ../..
パッチ当てでエラーが発生しないことを確認してください。確認できたらコンパイル&インストールを行っていきます。
% make install clean
以上でproftpdのインストールは完了しました。
[2009/05/23追記:proftpd1.3.2でも1.3.1用のパッチがそのまま利用可能でした]
