SFTPでデータを出力したい

はじめに

b→dashへデータを連携するにあたっての全体像や、どのような連携方法があるかを知りたい場合は、まずは以下の記事をご覧ください

SFTPでデータを出力する際の2つのパターン

SFTP連携でデータを出力するには「b→dashが貴社のサーバーへファイルを送付する」パターンと「貴社のサーバーがb→dashへファイルを取りに行く」パターンの2つの手法があり、それぞれで設定方法が異なります。

それぞれのパターンごとに、どのような設定が必要かを説明していきます!

b→dashが貴社のサーバーへファイルを送付するパターン

出力先を設定する

データパレット」をクリックします

データを連携」をクリックします

出力先」をクリックします

新規追加」をクリックします

SFTP」を選択し、「適用」をクリックします

b→dashが貴社のサーバーへファイルを送付する」をクリックします

ホスト名」「ポート番号」「ユーザー名」「ディレクトリパス」を入力します

SSH公開鍵」をコピーします

名前」を入力し、「保存」をクリックします

新規作成した連携が画面に表示されます

サーバーを制限するために設定するb→dashのIPアドレス

セキュリティ上の理由で、接続できるサーバーを制御する必要がある場合は、b→dashのIPアドレスのみ貴社のサーバーが接続できるように設定をお願いします。b→dashが使用しているIPアドレスに関しては、以下の記事をご確認ください。

取込/出力で設定するIPアドレスを知りたい

連携のステータスを確認します

連携のステータスは、アイコンで把握することができます!
SFTP連携でb→dashが貴社のサーバーへファイルを送付する際のステータス

「接続完了」にならない場合はこちらを参照ください

ステータスが「接続完了」にならない場合は、何らかの設定が誤っていると考えられます。以下によくある設定誤りを記載しますので、こちらに該当しないかご覧ください。

考えられる原因 改善策
SSH公開鍵が誤っている SFTP連携は公開鍵と秘密鍵のペアが揃わないと疎通時にエラーが発生します。 そのため以下の方法で公開鍵を再度取得いただくようお願いします。

【確認方法】
①データパレット>データを連携するを開く
②出力先のタブをクリック
③対象SFTPエリアをクリックし編集をクリック
④表示されている公開鍵をコピーする
⑤b→dashがアクセス予定のサーバーへ④でコピーした公開鍵を設定する
SFTP出力先設定にて入力頂いている接続先情報に誤りがある 接続先情報に誤りがあると正しくアクセスできない事象が発生します。 誤りがないか以下より確認をお願いします。

【確認方法】
①データパレット>データを連携するを開く
②出力先のタブをクリック
③対象SFTPエリアをクリックし編集をクリック
④入力されている接続先情報を確認し出力したいSFTP接続先情報になっているかを確認する
b→dashにご登録頂いたSSH公開鍵が途中で改行されている SSH公開鍵は改行コードを含まない1行の文字列である必要があります。
SSH公開鍵を発行頂いた環境や、テキストエディタの仕様で改行コードが含まれた表示となる場合は、改行を除いてb→dashに登録をお願いします。
SSH公開鍵を設定されているサーバーに誤りがある 正しい鍵を設定いただいているとしてもb→dashがアクセスするサーバーに公開鍵が設定されていない場合接続ができません。 そのためb→dashがアクセスするサーバーに公開鍵が設定されているかご確認をお願いします。
ファイル出力設定が完了していない 接続先情報が正しい情報になっているにも関わらずファイル連携がされていない場合、「ファイル出力設定」が完了していない可能性があります。 以下確認方法よりファイル出力設定が設定されているかご確認をお願いします。

【確認方法】
①データパレット>データを連携するへ移動
②出力先のタブをクリック
③対象SFTPエリアをクリック
④対象SFTPエリア内にファイルアイコンがあるかを確認する
ご設定頂いているファイルの出力タイミングが想定と異なっている 接続先情報が正しい情報になっており、ファイル連携がされている場合、「ファイル出力設定」の連携タイミングの設定が想定と異なっている可能性があります。 以下確認方法よりファイルの出力タイミングが想定通りとなっているかご確認をお願いします。

【確認方法】
①データパレット>データを連携するへ移動
②出力先のタブをクリック
③対象SFTPエリアをクリック
④対象SFTPエリア内にファイルアイコンをダブルクリック
⑤出力タイミング設定が想定の内容となっているか確認する
これでSFTP連携の設定は完了です!次に、出力するファイルの設定を行います。

出力するファイルを設定する

データパレット」をクリックします

データを確認」をクリックします

出力したい「データ」をクリックします

データ出力」をクリックします

外部システム出力」をクリックします

先ほど作成した「連携先システム」を選択し、「適用」をクリックします

出力する列」を指定します

出力するタイミング」を、「単発」「繰り返し」のどちらかに設定します

繰り返し」を設定した場合、連携頻度と時間を設定の上「追加」を選択します

データファイル更新時に出力するにチェックを入れるとどうなるの??
  • ファイルが更新されるごとに、データが出力されます
  • 「データファイル更新時に出力する」にチェックを入れ、更に時間指定を追加で行うことが可能です
  • 時間指定を行わず、「データファイル更新時に出力する」のみチェックを入れることも可能です
出力時の「ファイル名」「ファイル形式」「文字コード」「改行コードを選択します

その他の設定として、「ヘッダーも出力する」「個人情報をマスキングする」に任意でチェックをいれます

個人情報をマスキングする」にチェックを入れた場合、個人情報のカラムは「*(アスタリスク)」で表示されます。どのカラムを個人情報カラムに設定するかは、データの取込時に設定します。個人情報カラムの設定方法はこちらをご覧ください。
[任意]「タイムスタンプをつける」にチェックをいれ、最後に「適用」をクリックします

タイムスタンプにチェックを入れたらどうなるの??
  • タイムスタンプにチェックを入れると、出力時のファイル名の末尾に、『年月日時分秒』が自動で付与されます
  • どのようなファイル名になるかは、出力ファイル名のプレビューで確認することができます
出力設定したデータが表示されます

貴社のサーバーがb→dashへファイルを取りに行くパターン

出力先を設定する

データパレット」をクリックします

データを連携」をクリックします

出力先」をクリックします

新規追加」をクリックします

SFTP」を選択し、「適用」をクリックします

貴社のサーバーがb→dashへファイルを取りに行く」をクリックします

SSH公開鍵」を入力します

「SSH公開鍵の作成」の方法

SFTP連携には、「SSH公開鍵の作成」が必要です。

貴社環境の中間サーバーの環境によって「SSH公開鍵の作成」の方法は異なりますが、ここでは「Unix/Linux環境」と「Windows環境」の2つを例に、それぞれの方法を説明します。

Unix/Linux環境の場合はこちらWindows環境の場合はこちら
SSH公開鍵の作成

b→dashに登録する、「SSH公開鍵」を作成します。

サーバーにログインし、任意のユーザーで以下のコマンドを入力します
ssh-keygen -t rsa
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/fs/.ssh/id_rsa):          ← Enterを押してください


Created directory’/home/fs/.ssh’.
Enter passphrase (empty for no passphrase):                ← Enterを押してください


Enter same passphrase again:                       ← Enterを押してください
Your identification has been saved in /home/fs/.ssh/id_rsa.
Your public key has been saved in /home/fs/.ssh/id_rsa.pub.
以下のコマンドを入力し、公開鍵ファイルと秘密鍵ファイルが生成されていることを確認します
ls  -ltr ~/.ssh
$ ls -ltr ~/.ssh
-rw------- 1 support support 2610 Apr 16 12:57 id_rsa          ← 秘密鍵
-rw-r--r-- 1 support support 1573 Apr 16 12:57 id_rsa.pub        ← 公開鍵
以下のコマンドを入力し、公開鍵ファイルの中身を表示します
cat ~/.ssh/id_rsa.pub
$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAB3NzaC1yc2EAAAADAQABAAABgQDWWPlb1RQSs38anSOipkd4SEDadLUY7jyNSvjxriyigTw1RkWedXvR+GOlTvYbXARrilp09gTmksX9vZghLoQbR1OVNQuhyyKs022oJensjOXNO3+x+f36gM5T1cUjeixAlX8TQA7t79O2jiNq6tqnyxKo9UQloWcCN58FSn4fStL01d2gHXjsQ5/OJV9CIDrwAPh01F5RulfXxKMAq3+scZ8406krMxo69zJzCE9EFpSn1UomzB6L57gKWB3kwTLrrWFarMgNqyxox8CpQ27F0/XFf0mCJHGfrVh23tTcFhHdGPbdUtV/iEynn+g16znbnXJ32hIkbAHeiQCG9Vrrm8LKvWZT5v5VRppXtPzEl9CbWg8EAh5HOIA8MUKUI/3/CKDJi0dplXZZMXLuozKc3gQX+mtTRHQuqbQKK/xSJJnvkME3MbrZnN5HtNfaFzh5ecnglFuDFnrDbodZMR1aB4lBxVTrTcmVsEOVEDxaqjYMj2/gbTtKjVqAynJ2sLs= account@support-site
この「ssh-rsa」から始まる文字列をb→dashの画面に入力します!最初から最後の文字までコピーするように、また、途中で改行が入らないように注意してください。
SSH公開鍵の作成

b→dashに登録する、「SSH公開鍵」を作成します。

以下サイトにアクセスの上「WinSCP」をダウンロードし、サーバーにインストールします

WinSCP  Download

「WinSCP」を開き、画面左下の「ツール」から「PuTTYgenを実行」を選択します

「Parameters」から「RSA」を選択し、「Generate」をクリックします

「Public key for pasting into OpenSSH authorized_keys file」に公開鍵が表示されます

この「ssh-rsa」から始まる文字列をb→dashの画面に入力します。最初から最後の文字までコピーするように、また、途中で改行が入らないように注意してください。
「Save private key」を選択し、任意のファイル名を付けて、ファイルをローカルに保存します

※「Are you sure you want to save this key without a passphrase to protect it?」という警告メッセージが出ることがありますが、「はい」をクリックください。

※保存に成功すると「.ppk」という拡張子のファイルが作成されます。

ホスト名」「ポート番号」「ユーザー名」を中間サーバーに登録します

上記のホスト名に接続するとホームディレクトリ直下に「output」ディレクトリがあるので、そこにあるファイルを取得しましょう!
名前」を入力し、「保存」をクリックします

新規作成した連携が画面に表示されます

「疎通確認」の方法

SFTP連携には、「疎通確認」が必要です。

貴社環境の中間サーバーの環境によって「疎通確認」の方法は異なりますが、ここでは「Unix/Linux環境」と「Windows環境」の2つを例に、それぞれの方法を説明します。

Unix/Linux環境の場合はこちらWindows環境の場合はこちら
疎通確認

サーバー間で疎通ができていることを確認するため、以下の手順で「疎通確認」を行います。

以下のコマンドを入力し、b→dashに連携するファイルがあることを確認します
ls -ltr
$ ls -ltr
-rw-r--r-- 1 support support 2610 Apr 16 12:57 customer_xxxx.csv
-rw-r--r-- 1 support support 1573 Apr 16 12:57 item_xxxx.csv
-rw-r--r-- 1 support support 2613 Apr 16 12:57 order_zzzzz.csv
SFTPでコマンドを入力します
$ sftp -oPort=10222 -i ~/.ssh/id_rsa management_console_100025_13@sftp.smart-bdash.com:input/

※[100025_13」の部分はb→dashアカウントに応じて変わるため、b→dashの接続情報に記載の『ユーザー名』を参照してください

$ sftp -oPort=10222 -i ~/.ssh/id_rsa
management_console_100025_13@sftp.smart-bdash.com
Connected to sftp.smart-bdash.com.
sftp>
「Connected to sftp.smart-bdash.com.」のカーソルが表示されたら疎通確認は完了です!
どのくらい時間がかかるの?
b→dashの管理画面へSSH公開鍵を入力後、b→dashがSSH公開鍵を認識するまで、最大5分程度の時間を要しますので、注意しましょう。
疎通確認

サーバー間で疎通ができていることを確認するため、以下の手順で「疎通確認」を行います。

PuTTY Key Generatorをクローズし、WinSCPのログイン画面にて「設定」を選択します

左フレームから「認証」を選択し、秘密鍵に②-1-5で保存した「.ppk」のファイルを選択の上、「OK」を選択します

b→dashの接続情報を参照し「ホスト名」「ポート番号」「ユーザー名」を記載の上、ログイン情報を選択します

WinSCP画面の右フレームに「input」「output」ディレクトリが表示されれば疎通は成功です

サーバーを制限するために設定するb→dashのIPアドレス

セキュリティ上の理由で、接続できるサーバーを制御する必要がある場合は、b→dashのIPアドレスのみ貴社のサーバーが接続できるように設定をお願いします。b→dashが使用しているIPアドレスに関しては、以下の記事をご確認ください。

取込/出力で設定するIPアドレスを知りたい

連携のステータスを確認します

連携のステータスは、アイコンで把握することができます!
SFTP連携で貴社のサーバーがb→dashへファイルを取りに行く際のステータス
これでSFTP連携の設定は完了です!次に、出力するファイルの設定を行います。

出力するファイルを設定する

データパレット」をクリックします

データを確認」をクリックします

出力したい「データ」をクリックします

データ出力」をクリックします

外部システム出力」をクリックします

先ほど作成した「連携先システム」を選択し、「適用」をクリックします

出力する列」を指定します

出力タイミング」を、「単発」「繰り返し」のどちらかに設定します

繰り返し」を設定した場合、連携頻度と時間を設定の上「追加」を選択します

データファイル更新時に出力するにチェックを入れるとどうなるの??
  • ファイルが更新されるごとに、データが出力されます
  • 「データファイル更新時に出力する」にチェックを入れ、更に時間指定を追加で行うことが可能です
  • 時間指定を行わず、「データファイル更新時に出力する」のみチェックを入れることも可能です
出力時の「ファイル名」「ファイル形式」「文字コード」「改行コードを選択します

その他の設定として、「ヘッダーも出力する」「個人情報をマスキングする」に任意でチェックをいれます

個人情報をマスキングする」にチェックを入れた場合、個人情報のカラムは「*(アスタリスク)」で表示されます。どのカラムを個人情報カラムに設定するかは、データの取込時に設定します。個人情報カラムの設定方法はこちらをご覧ください。
任意で「タイムスタンプをつける」にチェックをいれ、最後に「適用」をクリックします

タイムスタンプにチェックを入れたらどうなるの??
  • タイムスタンプにチェックを入れると、出力時のファイル名の末尾に、『年月日時分秒』が自動で付与されます
  • どのようなファイル名になるかは、出力ファイル名のプレビューで確認することができます
出力設定したデータが表示されます

中間サーバーのデータファイルを削除することはできません
b→dash領域の中間サーバーから、貴社サーバーに出力したデータファイルを削除することはできません。そのため貴社サーバーに出力が完了したデータファイルは、b→dash領域の中間サーバーに残り続けますのでご留意ください。

[参考]出力履歴を確認する

以下では、b→dashから貴社システムにデータファイルを出力した履歴を確認する方法について紹介します。

出力履歴を確認したいデータファイルを選択します

処理実行履歴」をクリックします

処理分類が「出力」のレコードを確認します