purazumakoiの[はてなブログ]

技術メモから最近はライフログも増えてきてます。

proftpdでSFTPサーバ構築時でLoadModule: error loading module 'mod_sftp.c'エラー

最初に結論

yumリポジトリがrpmforgeのだとmod_sftp入ってないよ。

成功例 構築ログ↓
CentOS6 ProFTPDでSFTPサーバを構築 - purazumakoiの[はてなブログ]

こっからログ

エラーがでました。

ちなみに文法チェックコマンド

# proftpd -t

Fatal: LoadModule: error loading module 'mod_sftp.c': Operation not permitted on line 168 of '/etc/proftpd.conf'

どうもmod_sftpに問題があるような

ということで色々調べた結果、元々のyumでインストールしたやつのコンパイルオプションで指定されてないんじゃないかと疑い↓のようにしらべたら
rpm からspecファイルを抜き出す - purazumakoiの[はてなブログ]

proftpd.specから引用

%build
if pkg-config openssl; then
    export CFLAGS="%{optflags} $(pkg-config --cflags openssl)"
    export LDFLAGS="$LDFLAGS $(pkg-config --libs-only-L openssl)"
fi
%configure \
    --localstatedir="/var/run/proftpd" \
    --libexecdir="%{_libexecdir}/proftpd" \
    --enable-ctrls \
    --enable-dso \
%{!?_without_acl:--enable-facl} \
    --enable-ipv6 \
    --enable-openssl \
    --with-includes="%{_includedir}/mysql" \
    --with-libraries="%{_libdir}/mysql" \
    --with-modules="mod_readme:mod_auth_pam:mod_tls" \
    --with-shared="mod_ldap:mod_sql:mod_sql_mysql:%{!?_without_postgresql:mod_sql_postgres:}mod_quotatab:mod_quotatab_file:mod_quotatab_ldap:mod_quotatab_sql"
%{__make} %{?_smp_mflags}

%install

mod_sftp の記述がないけどもいらないのかな。その他ソース内にmod_sftp の文字がない

公式にはなんか

  ./configure --enable-openssl --with-modules=mod_sftp ...

って書けってかいてあるけども?

こっちのrpmは--with-modulesにはないけど、ソース内にmod_sftp の文字はいくつかみられる
RPM Mageia Cauldron proftpd-mod_autohost 1.3.5 x86_64 rpm

で多分これが答え

yumでrpm版ProFTPDをインストールする際の注意点メモ « FLAMA技術Blog

細かい話をすると、rpmforge版にはDSOモジュールが
mod_quotatab
mod_quotatab_file
mod_sql
しか入っていません。

(゚д゚)!!

epelかCentALT版を入れましょうということでした。 ※自分はchroot機能を入れたかったのでCentALT版にしました。