FTPサーバの設定

FTPサーバの設定とは

FTPサーバの設定とは、DataSpiderServerに搭載されているFTPサーバとSFTPサーバの各種設定を行うツールです。

FTPサーバの設定の機能

FTPサーバの設定では、以下の機能を提供しています。
機能の説明
機能名 タブ 説明 備考
FTPサーバの接続設定 FTPサーバ設定 FTPサーバの接続設定を行います。
  • 管理者権限を持ったユーザのみ実行できます。
SFTPサーバの接続設定 SFTPサーバ設定 SFTPサーバの接続設定を行います。
  • 管理者権限を持ったユーザのみ実行できます。
FTPサーバの起動 起動と停止 FTPサーバを起動します。
  • 管理者権限を持ったユーザのみ実行できます。
FTPサーバの再起動 FTPサーバを再起動します。
  • 管理者権限を持ったユーザのみ実行できます。
FTPサーバの停止 FTPサーバを停止します。
  • 管理者権限を持ったユーザのみ実行できます。
SFTPサーバの起動 SFTPサーバを起動します。
  • 管理者権限を持ったユーザのみ実行できます。
  • SFTPサーバを起動するためには、事前にホスト鍵を配置する必要があります。詳細については「ホスト鍵」を参照してください。
SFTPサーバの再起動 SFTPサーバを再起動します。
  • 管理者権限を持ったユーザのみ実行できます。
  • SFTPサーバを起動するためには、事前にホスト鍵を配置する必要があります。詳細については「ホスト鍵」を参照してください。
SFTPサーバの停止 SFTPサーバを停止します。
  • 管理者権限を持ったユーザのみ実行できます。

FTPサーバの接続設定

管理者権限を持ったユーザのみ実行できます。
FTPサーバの設定に対する変更は、FTPサーバ再起動後に有効となります。
FTPサーバの設定で不正な値が入力された場合、[OK]または[適用]ボタンを押下しても入力された値は反映されません。
項目の説明
項目名 説明 備考
DataSpiderServer起動時にFTPサーバも起動する DataSpiderServer起動時にFTPサーバを起動するかどうかを選択します。
  • [チェックあり]:
    DataSpiderServer起動時にFTPサーバも起動します。
  • [チェックなし]:(デフォルト)
    DataSpiderServer起動時にFTPサーバは起動しません。
  • DataSpiderServer起動直後にFTPトリガーを使用する場合は、チェックを入れてください。
ポート番号 FTPサーバが使用するポート番号を入力します。
  • 入力できるポート番号は「1」から「65535」です。
  • デフォルト値は「21」です。
アクティブデータコネクションポート番号 データ転送モードがアクティブモードのときに使用するポート番号を入力します。
  • 入力できるポート番号は「1」から「65535」です。
パッシブデータコネクションポート番号 データ転送モードがパッシブモードのときに使用するポート番号を入力します。
  • [自動割り当て]:(デフォルト)
    使用可能なポート番号をランダムに割り当てます。
  • [範囲指定]
    入力した範囲内から使用可能なポート番号をランダムに割り当てます。
  • 入力できるポート番号は「1」から「65535」です。
アイドルタイムアウト FTPコマンドもデータ転送も行われていないようなアクティブではない状態が続いたときに、セッションを破棄する時間を入力します。
  • 単位は「秒」です。
  • デフォルト値は「300」秒です。
  • 入力できる値は「0」から「2147483647」です。
  • 「0」を入力した場合、無制限になります。
最大ログイン数 FTPサーバにログインできる最大ログイン数を指定します。
  • デフォルト値は「10」です。
  • 入力できる値は「0」から「2147483647」です。
  • 「0」を入力した場合、無制限になります。
  • anonymousユーザのログイン数も含まれます。
Anonymousログインを許可する Anonymousログインを許可するかどうかを選択します。
  • [チェックあり]:
    Anonymousログインを許可します。
  • [チェックなし]:(デフォルト)
    Anonymousログインを許可しません。
  • anonymousユーザのパスワードは空になります。
最大Anonymousログイン数 FTPサーバにログインできるanonymousユーザの最大ログイン数を入力します。
  • [Anonymousログインを許可する][チェックあり]の場合、入力可能です。
  • デフォルト値は「10」です。
  • 入力できる値は「0」から「2147483647」です。
  • 「0」を入力した場合、anonymousユーザのログインはできません。

SFTPサーバの接続設定

管理者権限を持ったユーザのみ実行できます。
SFTPサーバの設定に対する変更は、SFTPサーバ再起動後に有効となります。
SFTPサーバの設定で不正な値が入力された場合、[OK]または[適用]ボタンを押下しても入力された値は反映されません。
項目の説明
項目名 説明 備考
DataSpiderServer起動時にSFTPサーバも起動する DataSpiderServer起動時にSFTPサーバを起動するかどうかを選択します。
  • [チェックあり]:
    DataSpiderServer起動時にSFTPサーバも起動します。
  • [チェックなし]:(デフォルト)
    DataSpiderServer起動時にSFTPサーバは起動しません。
  • DataSpiderServer起動直後にFTPトリガーを使用する場合は、チェックを入れてください。
ポート番号 SFTPサーバが使用するポート番号を入力します。
  • 入力できるポート番号は「1」から「65535」です。
  • デフォルト値は「7722」です。
アイドルタイムアウト SFTPコマンドもデータ転送も行われていないようなアクティブではない状態が続いたときに、セッションを破棄する時間を入力します。
  • 単位は「秒」です。
  • デフォルト値は「300」秒です。
  • 入力できる値は「0」から「2147483647」です。
  • 「0」を入力した場合、無制限になります。
最大ログイン数 SFTPサーバにログインできる最大ログイン数を指定します。
  • デフォルト値は「10」です。
  • 入力できる値は「0」から「2147483647」です。
  • 「0」を入力した場合、無制限になります。
ホスト鍵のパスフレーズ ホスト鍵のパスフレーズを入力します。
  • ホスト鍵にパスフレーズが設定されていない場合は、[ホスト鍵のパスフレーズ]を入力する必要はありません。
パスワードでのログインを許可する パスワードでのログインを許可するかどうかを選択します。
  • [チェックあり]:
    パスワード認証でのログインを許可します。
  • [チェックなし](デフォルト)
    パスワード認証でのログインを許可しません。
  • [パスワードでのログインを許可する]にチェックが入っていない場合、公開鍵認証でのみログインできます。

FTPサーバの起動

管理者権限を持ったユーザのみ実行できます。
プロパティアクション
項目名 説明 備考
FTPサーバ起動 FTPサーバを起動します。
  • [FTPサーバの状態]が「起動」の際は無効になります。
  • FTPサーバの起動が完了すると、[FTPサーバの状態]の表示が「起動」になります。

FTPサーバの再起動

管理者権限を持ったユーザのみ実行できます。
プロパティアクション
項目名 説明 備考
FTPサーバ再起動 FTPサーバを再起動します。
  • [FTPサーバの状態]が「停止」の際は無効になります。
  • FTPサーバの起動が完了すると、[FTPサーバの状態]の表示が「起動」になります。

FTPサーバの停止

管理者権限を持ったユーザのみ実行できます。
プロパティアクション
項目名 説明 備考
FTPサーバ停止 FTPサーバを停止します。
  • [FTPサーバの状態]が「停止」の際は無効になります。
  • FTPサーバの停止が完了すると、[FTPサーバの状態]の表示が「停止」になります。

SFTPサーバの起動

管理者権限を持ったユーザのみ実行できます。
SFTPサーバを起動するためには、事前にホスト鍵を配置する必要があります。詳細については「ホスト鍵」を参照してください。
プロパティアクション
項目名 説明 備考
SFTPサーバ起動 SFTPサーバを起動します。
  • [SFTPサーバの状態]が「起動」の際は無効になります。
  • SFTPサーバの起動が完了すると、[SFTPサーバの状態]の表示が「起動」になります。

SFTPサーバの再起動

管理者権限を持ったユーザのみ実行できます。
SFTPサーバを起動するためには、事前にホスト鍵を配置する必要があります。詳細については「ホスト鍵」を参照してください。
プロパティアクション
項目名 説明 備考
SFTPサーバ再起動 SFTPサーバを再起動します。
  • [SFTPサーバの状態]が「停止」の際は無効になります。
  • SFTPサーバの起動が完了すると、[SFTPサーバの状態]の表示が「起動」になります。

SFTPサーバの停止

管理者権限を持ったユーザのみ実行できます。
プロパティアクション
項目名 説明 備考
SFTPサーバ停止 SFTPサーバを停止します。
  • [SFTPサーバの状態]が「停止」の際は無効になります。
  • SFTPサーバの停止が完了すると、[SFTPサーバの状態]の表示が「停止」になります。

FTPユーザについて

FTPユーザのホームディレクトリについて

FTPサーバで使用できるコマンド

FTPサーバで使用できるコマンドは以下の通りです。また、以下のコマンドをサポートしているFTPクライアントからFTPサーバに接続や操作を行うことも可能です。
SFTPサーバでは使用できません。

コマンド 説明 コマンド応答 備考
ABOR 現在実行中のデータ転送をすべて中止します。
  • 226 ABOR command successful.
 
APPE サーバへ送信するデータを指定したファイルへ追加します。ファイルが存在していない場合は、新規作成します。
  • 501 Syntax error.
  • 550 Not a plain file.
  • 550 Permission denied.
  • 150 File status okay; about to open data connection.
  • 425 Cannot open data connection.
  • 426 Data connection error.
  • 551 Error on output file.
  • 226 Transfer complete.
  • 事前にPORTコマンドまたはPASVコマンドを実行する必要があります。
CDUP 1つ上のディレクトリをカレントディレクトリとします。
  • 250 Directory changed to <移動先ディレクトリ名>
  • 550 No such directory.
 
CWD 指定したディレクトリをカレントディレクトリとします。
  • 250 Directory changed to <移動先ディレクトリ名>
  • 550 No such directory.
  • ディレクトリ名を省略した場合はFTPルートディレクトリ("/")になります。
DELE 指定したファイルを削除します。
  • 250 Command okay.
  • 450 No permission to delete.
  • 450 Can't delete file.
  • 550 Not a valid file.
  • 501 Syntax error in parameters or arguments.
 
HELP 実行可能なFTPコマンドの一覧を表示します。
  • 214 <ヘルプ情報>
 
LIST 作業ディレクトリ内のファイル一覧を取得します。ディレクトリ名を指定した場合、そのディレクトリのファイル一覧を取得します。ファイル名を指定した場合、そのファイルの現在の情報を取得します。
  • 150 File status okay; about to open data connection.
  • 425 Cannot open data connection.
  • 426 Data connection error.
  • 551 File listing failed.
  • 501 Syntax error.
  • 226 Closing data connection.
  • 事前にPORTコマンドまたはPASVコマンドを実行する必要があります。
MDTM 指定したディレクトリ、ファイルの更新日時を取得します。
  • 501 Syntax error.
  • 550 File unavailable.
  • 213 <タイムスタンプ>
  • MDTMコマンドで得られる時刻はGMT標準時になります。
MKD 指定したディレクトリを作成します。
  • 501 Syntax error.
  • 550 Not a valid file.
  • 550 Already exists.
  • 550 No permission.
  • 257 <ディレクトリ名> created.
  • 550 Cannot create directory.
  • 絶対パスまたは作業ディレクトリからの相対パスの指定が可能です。
MLSD 作業ディレクトリ内のファイル一覧の詳細取得します。ディレクトリ名を指定した場合、そのディレクトリのファイル一覧の詳細を取得します。
  • 150 File status okay; about to open data connection.
  • 226 Closing data connection.
  • 425 Can't open data connection.
  • 426 Data connection error.
  • 501 Syntax error in parameters or arguments.
  • 551 File listing failed.
 
MODE データ転送モードを設定します。
  • S
    ストリーム転送を行います。
  • Z
    ZIP圧縮転送を行います。
  • 501 Syntax error.
  • 504 Not implemented for this command.
  • 200 Command okay.
 
NLST 作業ディレクトリ内のファイル一覧を取得します。ディレクトリ名を指定した場合、そのディレクトリのファイル一覧を取得します。
  • 150 File status okay; about to open data connection.
  • 425 Cannot open data connection.
  • 426 Data connection error.
  • 551 File listing failed.
  • 501 Syntax error.
  • 226 Closing data connection.
  • 取得する情報はファイル名のみです。
NOOP このコマンドは、設定や以前に入力されたコマンドに何も影響しません。FTPサーバは、OKの応答を返すのみです。
  • 200 Command NOOP okay.
 
PASS FTPユーザのパスワードを指定します。
  • 501 Syntax error.
  • 503 Login with USER first.
  • 202 Already logged-in.
  • 421 Maximum anonymous login limit has been reached.
  • 421 Maximum login limit has been reached.
  • 530 Authentication failed.
  • 230 User logged in, proceed.
  • USERコマンドの直後に実行します。
PASV FTPサーバのデータ転送モードをパッシブモードにするように指示します。
  • 425 Cannot open passive connection.
  • 227 Entering passive mode (<h1,h2,h3,h4,p1,p2>)
 
PORT データ接続で使用されるデータポートを指定するためのホストとポートを指定します。
  • 501 Syntax error.
  • 510 Syntax error in parameters.
  • 510 Port is disabled.
  • 553 Host unknown.
  • 510 PORT IP mismatch.
  • 552 Invalid port number.
  • 200 Command PORT okay.
  • 引数は32ビットのインターネットホストアドレスと、16ビットのTCPポートアドレスを結合したものになります。このアドレス情報は、8ビットごとの領域に分解され、それぞれの領域は10進数(文字列表現)で転送され、領域はカンマ(,)で区切られます。

    例: PORT h1,h2,h3,h4,p1,p2
    h1はインターネットホストアドレスの最上位8ビットになります。
PWD 現在の作業ディレクトリを表示します。
  • 257 "<ディレクトリ名>" is current directory
 
QUIT FTPサーバからログアウトします。
  • 221 Goodbye.
 
REIN 実行中のファイル転送が終了するまでを除いて、すべての入出力とアカウント情報をフラッシュします。これは、ユーザーがコントロール接続をオープンした直後の状態と同じ状態を意味します。
  • 220 Service ready for new user.
 
REST ファイルの転送を指定したマーカーの位置から再開します。
  • 501 Syntax error.
  • 501 Not a valid number.
  • 501 Marker cannot be negetive.
  • 350 Restarting at <マーカーの位置>. Send STORE or RETRIEVE to initiate transfer.
 
RETR 指定したファイルをFTPサーバから取得します。
  • 501 Syntax error.
  • 550 No such file or directory.
  • 550 Not a plain file.
  • 550 Permission denied.
  • 150 File status okay; about to open data connection.
  • 425 Cannot open the data connection.
  • 426 Data connection error.
  • 551 Error on input file.
  • 226 Transfer complete.
 
RMD 指定したディレクトリをFTPサーバから削除します。
  • 501 Syntax error.
  • 550 No permission.
  • 550 Not a valid directory.
  • 250 <ディレクトリ名> removed.
  • 550 Cannot remove directory.
  • 絶対パスまたは作業ディレクトリからの相対パスの指定が可能です。
RNFR 指定したファイル名を変更します。変更元のファイル名を指定します。
  • 501 Syntax error.
  • 550 File unavailable.
  • 350 Requested file action pending further information.
  • ファイル名を変更するには、このコマンドの実行後に続けてRNTOを実行する必要があります。
RNTO RNFRのあとに実行し、指定したファイル名に変更します。指定するファイル名は変更先ファイル名になります。
  • 501 Syntax error.
  • 503 Can't find the file which has to be renamed.
  • 553 Not a valid file name.
  • 553 No permission.
  • 250 Requested file action okay, file renamed.
  • 553 Cannot rename file.
 
SITE FTPサーバ固有のカスタムコマンドを実行します。カスタムコマンドは以下の通りです。
  • DESCUSER
    指定したユーザ情報を表示します。
  • HELP
    カスタムコマンドの概要を表示します。
  • STAT
    FTPサーバの統計情報を表示します。
  • WHO
    FTPサーバに接続しているユーザを表示します。
  • ZONE
    タイムゾーンを表示します。
  • 200 Command SITE okay.
  • 502 Command SITE not implemented for this argument.
  • 500 Execution failed.
  • 530 Access denied.
  • 以下のコマンドはrootユーザのみ実行できます。
    • DESCUSER
    • STAT
    • WHO
SIZE 指定したファイルファイルサイズを取得します。
  • 501 Syntax error.
  • 550 No such file or directory.
  • 550 Not a plain file.
  • 213 <ファイルサイズ>
 
STAT 現在のFTPサーバの状態や転送状態の情報を表示します。
  • 211 Statistics information.
 
STOR 指定したファイル名でFTPサーバにデータを転送します。同一名のファイルがすでにある場合には、上書きします。
  • 501 Syntax error.
  • 550 Invalid path.
  • 550 Permission denied.
  • 150 File status okay; about to open data connection.
  • 425 Cannot open the data connection.
  • 426 Data connection error.
  • 551 Error on output file.
  • 226 Transfer complete.
 
STOU STORと同様に指定したファイル名でFTPサーバにデータを転送しますが、すでに同一名のファイルがあった場合には、重ならないようなファイル名を自動的に付けて作成します
  • 550 Unique file name error.
  • 550 Permission denied.
  • 150 File status okay; about to open data connection.
  • 425 Cannot open the data connection.
  • 250 <ファイル名> Transfer started.
  • 426 Data connection error.
  • 551 Error on output file.
  • 226 Transfer complete.
 
STRU ファイル転送の構造を指定します。
  • F
    ファイル構造でファイルを転送します。
  • 501 Syntax error.
  • 504 Command not implemented.
  • 200 Command STRU okay.
 
SYST FTPサーバのシステム名を表示します。
  • 215 UNIX Type: Apache FtpServer
  • 表示されるシステム名は「UNIX Type: Apache FtpServer」になります。
TYPE 転送データの形式を指定します。
  • A
    アスキーモードで転送されます。
  • I
    バイナリモードで転送されます。
  • 501 Syntax error.
  • 504 Command not implemented.
  • 200 Command TYPE okay.
 
USER 指定したユーザ名でログインします。
  • 501 Syntax error.
  • 230 Already logged-in.
  • 530 Invalid user name.
  • 530 Anonymous connection is not allowed.
  • 421 Maximum anonymous login limit has been reached.
  • 421 Maximum login limit has been reached.
  • 331 Guest login okay, send your complete e-mail address as password.
  • 331 User name okay, need password.
  • 存在しないユーザを入力した場合でもパスワード入力を求められます。

SFTPサーバの環境設定

ホスト鍵

SFTPサーバを使用するためには、ホスト鍵が必要となります。事前にホスト鍵を作成し、配置してください。

ホスト鍵の生成

ホスト鍵の生成については、「SSH秘密鍵と公開鍵の生成」を参照してください。

ホスト鍵の配置

  1. SFTPサーバを停止します。
  2. 作成した秘密鍵を$DATASPIDER_HOME\server\system\common\classesディレクトリに「ssh_host_key」というファイル名で配置します。
  3. SFTPサーバを起動します。
公開鍵を配置する必要はありません。

クライアント秘密鍵と公開鍵

SFTPサーバに公開鍵認証でログインするためには、SFTPサーバに接続するクライアント環境ごとに秘密鍵と公開鍵が必要となります。事前に秘密鍵と公開鍵を作成し、SFTPサーバにクライアント公開鍵を登録してください。
公開鍵認証を使用しない場合、以下の手順は必要ありません。

クライアント秘密鍵と公開鍵の生成

クライアント秘密鍵と公開鍵の生成については、「SSH秘密鍵と公開鍵の生成」を参照してください。

クライアント秘密鍵の配置

SFTPサーバに接続する環境の任意のディレクトリにクライアント秘密鍵を配置し、SFTPクライアントに秘密鍵を設定してください。
SFTPクライアントにクライアント秘密鍵を設定する方法については、使用するSFTPクライアントのドキュメントを参照してください。

クライアント公開鍵の登録

  1. /ftp/<FTPユーザ名>ディレクトリに「.ssh」というディレクトリ名でディレクトリを作成します。

  2. /ftp/<FTPユーザ名>/.sshディレクトリに「authorized_keys」というファイル名でファイルを作成します。

  3. authorized_keysファイルを開き、公開鍵の内容を貼り付けて保存します。
クライアント公開鍵の登録後にSFTPサーバを再起動する必要はありません。

SFTPサーバの認証方式

SFTPサーバでサポートする認証方式は以下の通りです。以下の認証方式をサポートしているSFTPクライアントからSFTPサーバに接続することができます。

仕様制限

主な例外

例外名 原因 対策
IllegalArgumentException
port out of range
有効な範囲外のポート番号が指定されています。 [ポート番号]、または[パッシブデータコネクションポート番号]に入力されているポート番号を確認してください。
IllegalArgumentException
Illegal idle time
アイドルタイムアウトの値が不正です。 [アイドルタイムアウト]に入力されている値を確認してください。
SocketTimeoutException
Accept timed out
データ転送のアイドルタイムアウトが原因の可能性があります。 FTPクライアント側およびFTPサーバ側の環境で、設定されているデータコネクションポートが許容されているかどうか確認してください。
ConnectException
Connection refused: connect
データコネクションが作成できない可能性があります。 FTPクライアント側およびFTPサーバ側の環境で、設定されているデータコネクションポートが許容されているかどうか確認してください。
SocketException
Connection reset
データ転送中にデータコネクションがクローズした可能性があります。 データが読み取り可能または書き込み可能な状態になっているか確認してください。
MalformedInputException
Input length = 1 (Hexdump: 53 54 4F 52 20 2F …)
FTPクライアント側で指定したファイル名のエンコードがUTF-8以外になっている可能性があります。 FTPクライアント側で指定したファイル名のエンコードがUTF-8になっているか確認してください。
FtpServerConfigurationException
Failed to bind to address 0.0.0.0/0.0.0.0:<ポート番号>, check configuration
指定したFTPサーバのポート番号が使用できません。 指定したFTPサーバのポート番号がすでに使われているか、well-knownポートの場合、well-knownポートが使用可能か確認してください。
BindException
Permission denied
指定したデータコネクションポート番号が権限がないため使用できません。 DataSpiderServerを起動したOSのユーザに、OSのroot権限が付与されているか確認してください。
SftpServerBootException
ホスト鍵が配置されていません。
SFTPサーバのホスト鍵が配置されていません。 SFTPサーバのホスト鍵を配置してください。
SftpServerBootException
ホスト鍵のパスフレーズが一致しません。
SFTPサーバのホスト鍵に設定されたパスフレーズと、[ホスト鍵のパスフレーズ]に入力されている値が一致しません。 [ホスト鍵のパスフレーズ]に入力されている値を確認してください。
SftpServerBootException
ホスト鍵の読み込みに失敗しました。
SFTPサーバのホスト鍵が読み込めません。 ホスト鍵のアクセス権限を確認する、ホスト鍵がOpenSSH形式で作成されているかを確認する、ホスト鍵の暗号方式やビット数を変更して再作成するなど、ホスト鍵が読み込める状態にしてください。
SftpServerBootException
SFTPサーバの起動に失敗しました。
上記以外の理由でSFTPサーバの起動に失敗しました。 SFTPサーバの再起動や、[ポート番号]を変更するなど、SFTPサーバが起動可能な状態にしてください。

注意事項