サーバーFTP接続を暗号化されていない状態で接続してませんか?していないとしたら、か・な・り、危険です。-今のご時世、暗号化した接続が標準です。私は以前、通常の平文で接続する状態で使っていたら、クラッキングされました。リダイレクトされて変なサイトに接続するようにWordPressサイトの設定が変更されてました。「10億アクセスおめでとう!」って表示されたり、Cronが毎分実行されているようになっていたり。滅茶苦茶にされました。『VPSにセキュアなFTPS接続を設定する手順』についてVPSでFTP接続を暗号化して、セキュリティを高めるための設定について書いています。昨今では、ネット環境が整うこととは裏腹にクラッキングをされるリスクも同時に高まっています。FTP接続は、Webサービスを利用する場合に必ずと言っていいほど使うものです。接続するだけでは、危険にさらしてしますので最低限のセキュリティ設定をしましょう。最終的には暗号化で接続するFTPSの接続で使えるように設定します。設定手順は下記のとおりです。FTPサービス(vsftpd)のインストールvsftpdの設定vsfptdをFTP化(暗号化)するxinitdでvsftpdを起動するこの記事は、VPSや専用サーバなど、root権限を使用してを設定するサーバが前提です。共用サーバーの方には、参考になりませんので不要ならば閉じてください。設定するところまで、手順を説明します。コマンドラインが中心ですので、この際にコマンドの使い方も学んでいきましょう。vsftpdをインストールするコマンドyumでvsftpdをインストールします。コマンドライン一発でインストールできます。vsftpdrootユーザ以外の場合は、sudoで実行します。vsftpdパスワードを聞かれるので入力してインストールします。vsftpd用ログインユーザ設定#ログインユーザの作成まずは、rootログインを許可する。/etc/vsftpd/ftpusersのユーザリストからログインするユーザを削除または、コメントアウトする必要があります。このファイルに記載されているユーザのログインは不可(アクセス拒否)されます。/etc/vsftpd/ftpusersrootでログインさせる場合は、コメントアウトする#rootFTP専用ユーザなどを作成したら、この設定は元に戻してrootのログインを不可にしてもいいでしょう。PAMの認証で参照するようですが、まずは、ログインするユーザを削除かコメントアウトしましょう。このファイルに記述されているユーザは接続できない。user_listよりも優先されます。vsftpdを設定する設定ファイルの変更にはrootユーザーの権限が必要です。suでrootにスイッチしておくか、sudoコマンドを使用しましょう。#FTPの設定ファイルをコピー・編集するvsftpdの設定は、設定ファイル/etc/vsftpd/vsftpd.confで行います。オリジナルの設定ファイルをコピーしてバックアップします。/etc/vsftpd/vsftpd.conf匿名ユーザー(anonymous)のアクセスを無効にする匿名ユーザを無効(NO)に変更#anonymous_enable=YES設定ファイル(vsftpd.conf)の下記をコメント解除してNOにする。anonymous_enabl=NOローカルユーザのログインを許可する。ローカルユーザにFTP接続を許可するか。デフォルトではYESで許可する。コマンドの使用を、許可するかどうかを指定するwrite_enable=YES新規ファイルやアップロード時のパーミッションの設定ファイルは644(666)、ディレクトリは755(777)になるlocal_umask=022ログ取得の有無を設定するxferlog_enable=YES取得するログの形式を指定する。接続、ログイン、転送ログを記録します。xferlog_std_format=NOxferlogがYESでstd_format=YESのときに使用。モード時の、サーバ側が使用するデータ転送用ポート番号の指定方法を定義する。connect_from_port_20=YESメッセージファイルの内容を表示する。ディレクトリごとにメッセージを表示させるか指定します。ログインしたユーザのルートディレクトリに変更する設定ログインユーザのルートディレクトリに変更する場合(ユーザの上部ディレクトリにはアクセスできない。)chroot_local_user=YESログインユーザが上部のディレクトリにアクセス可能にする場合chroot_local_user=NOユーザのログインディレクトリ外にアクセス可能にする。chroot制御対象のユーザ名を記載したファイルの有効/無効を設定する。有効にした場合は、chroot用のリストファイルを作成し参照する。初期値は、コメントアウト(NO)となっている。リストを作成して参照する場合。場合に参照するファイルchroot制御対象のユーザ名を記載したファイルを指定する。chroot_list_file=/etc/vsftpd/chroot_listFTPユーザのログイン許可・拒否を設定するユーザのログイン許可と拒否を許可リストuserlist_enabeleの有効化ユーザの拒否リストuserlist_denyで設定します。基本的にログインするユーザを限定したいので、リストアップしたユーザがログインできるように設定します。user_listにユーザを追加するログインを許可または、拒否するユーザを追加します。下記のコマンドで、user_listを編集します。リストアップユーザを有効化するリストアップしたユーザに対してログインを許可する設定をします。拒否するかを設定する。userlist_deny=NOで、ログイン許可。userlist_deny=YESで、ログイン拒否。リストにあるユーザのアクセスを拒否するリストアップしたユーザに対してログインを拒否する場合は、YESを設定をします。私の場合は、リストアップユーザに許可するので下記のようにNOを指定します。userlist_deny=NO通常は、リストアップユーザのみにしたほうがログインするユーザをコントロールできるので良いでしょう。モードによるアップロードの許可/拒否設定FTPの転送モードをasciiモードにする場合の設定。vsftpd.confの下記部分をコメント解除する。#ascii_upload_enable=YES#ascii_download_enable=YES#を削除してコメント解除するascii_upload_enable=YESascii_download_enable=YESディレクトリごと一括での転送を有効にするls_recurse_enable=YESログイン時にメッセージを表示する好みによりますが、メッセージやリマインダーなどログイン時に表示したいものがある場合に指定する。service.vsftpdの起動モードを指定する。vsftpdをスタンドアロンモードで起動する。