BLOG主に自分用の備忘録としてこの広告は、90日以上更新していないブログに表示しています。「SFTPでいいじゃん。」と思って立ててなかったFTPサーバを立てることにしました。平文FTPではやはりアレなので、FTPSを有効にします。※訳あってSFTPは使えません。以下、今回の環境です。6.6vsftpd-3.0.3FTPS有効PASV有効せっかくなのでvsftpd-3.0.3をソースからコンパイルします。SSL用の秘密鍵と証明書は別件でオレオレのものを生成済みです。※以下各作業を行う場合は自己責任でお願いします。以下のサイトを参考にさせて頂きました。この場を借りて御礼申し上げます。diaryでは、やっていきましょう。shでルートのパスワードを入力すれば、以降ルートのシェル環境で作業できます。入っているvsftpdをアンインストール入っていれば。vsftpdちなみに私はビビリなので、常に「-y」は付けません。ソースを取得・展開ソースを展開するディレクトリに移動してwgetで取得、tarで展開します。今回はhttps://security.appspot.com/downloads/vsftpd-3.0.3.tar.gzから取得できました。vsftpd-3.3.3.tar.gz展開して出来たディレクトリを丸ごとchownしておきます。今回は一か所にまとめたかったので/opt/配下に専用ディレクトリを作成しました。/opt/vsftpd/workbuilddefs.hを編集コンパイル時の設定ファイルを編集してSSLとtcp_wrappersを有効にします。←変更#endifnobodyユーザがいるかvsftpd-3.0.3ではnobodyユーザが必要とのことで、いなければ作っておきます。/usr/share/emptyディレクトリがあるかこちらも必要なようなので、無ければ作成。ちなみに今回はどちらもデフォルトで有りました。依存パッケージのインストールここまで来て今更ですが、vsftpdのインストールに必要なパッケージを予め入れておきます。1.0.1e-48.el6_8.3openssl-devel.x86_64opensslですが、私の場合既に入っていたものではダメでした。makeが失敗します。yumでアップデートして比較的新しいものにして下さい。(セキュリティを考えれば当然最新のものが良いです)なお、CentOSのyumでインストールした場合、バージョン番号はアップストリームとは一致しません。以下のコマンドで更新履歴が見れるので、そちらでチェックします。openssl今回は、履歴の最も新しい日付が「2016/9/22」だったので、まぁいいでしょう。インストール先を/opt/vsftp配下に集約するためです。必要なファイルをインストール用ディレクトリにcpmakeが成功したら実行バイナリと設定ファイル、マニュアルをインストール用ディレクトリにコピーします。/opt/vsftpd/confファイアウォールの設定FTP接続用のポートを開けておきます。ACCEPT...(省略)...下2つはPASVモード用です。iptablesにモジュールをロードさせるiptables関連でもう一つ。iptablesの設定ファイルを編集してFTP用のモジュールをロードさせます。ip_nat_ftp"...(省略)...書き終えたらiptablesを再起動しておきます。restartvsftpdの設定を編集vsftpdの設定を変更します。※1chroot_local_userの値によって、chroot_list_fileで指定したファイルの扱いが変わります。chroot_local_user=YESの場合、chrootされないユーザのリストになり、chroot_local_user=NOの場合、chrootされるユーザのリストになります。※2証明書のみ、または秘密鍵のみのファイルではNGです。証明書と秘密鍵が併記されたpemファイルが必要です。無ければ作成して下さい。※それぞれのファイルの生成は割愛します。/path/to/cert/file.pemchroot_listを作成しておく今回の設定ではchroot_listはchrootされないユーザのリストです。FTPで接続するユーザは全てchrootしておきたいので、今回は空にしておきました。/opt/vsftpd/conf/vsftpd.chroot_list起動スクリプトの設置ソースからコンパイルしたので、起動スクリプトも作成しなければなりません。これについては、前述の参考サイト様を大いに参考にさせて頂きました。いうかほぼまんまです。$RETVAL※上記はあくまで参考として、コピペでそのまま使用することは避けて下さい。環境によっては動作しないかもしれないので。※繰り返しますが設定は自己責任でお願いします。自動起動設定サーバ起動時に自動で起動するようchkconfigに追加します。statusクライアントから接続してみてFTPS接続できたら成功です。おまけ今回、クライアントからPASVモードでファイル一覧が取得できない事象が発生しまして、結局はiptablesの設定だったんですが、その際、クライアントからどのポートにアクセスしているか以下の情報から分かるということを知りました。後半の「nnn,mmm」の部分。ポート番号ということだそうです。己の無知を噛み締めた次第。FTPサーバを設...これまででNginxとPHP-FPMがインストール出来ました。CentOSをイ...PC(Windows7)上にVirtualBoxを使ってWeb開発環境を構築します。読者になる参加グループプログラミングはてなブログをはじめよう!al_luckyさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。