はじめに
データ統合は、あらゆる情報をより有効に活用したいと考える企業にとって不可欠な手法ですが、実際にデータを1つまたは複数のソースからデータウェアハウスのような集中管理されたレポジトリに送るにはどうしたらよいのでしょうか。
SFTP(セキュアファイル転送プロトコル)が多くの企業にとってその答えになりますが、そもそも SFTP とは一体何でしょうか、そして、安全なファイル転送のためには SFTP をどのように設定すればよいのでしょうか。そこで本記事では、SFTPの設定に関してすべてお答えします。
SFTPとは
SFTP(セキュアファイル転送プロトコル)は、暗号化されたSSH(セキュアシェル)プロトコルでファイルを送受信できるデータ転送の方法であり、TCP/IPを利用した従来のファイル転送方式であるFTP(ファイル転送プロトコル)の安全な代替手段として、1990年代後半に誕生しました。
「コマンドチャネル」と「データチャネル」の2チャネルを使う FTP とは異なり、SFTP はコマンドの送信とデータの転送にチャネルを1つだけ使います。SFTP は、機密情報を暗号化し、攻撃者の手に渡らないようにする機能を備えているため、ほぼすべての状況で FTP よりも優先的に使われるようになっています。
関連記事:SFTP vs. FTP: Understanding the Difference (SFTP と FTP の違いについて)
SFTP の設定方法
SFTP の設定は、Linux や macOS などの Unix系 OS を使っている場合の方が大体簡単です。ユーザーの考えられる技術的なセットアップを全部説明してたら時間がかかりすぎるので、このセクションでは、SFTP の設定プロセスの高レベルの概要だけにします。
Windowsでの SFTP の設定
SFTP は SSH プロトコルに依存しているので、Windows 10 または Windows Server 2019 を使用している場合、SSH はすでにインストールされているはずです。それ以外の場合は、まずマシンは SSH のインストールが必要ですが、OpenSSH などのオープンソースの SSH をお勧めします。
次に、SFTP が使うポートを開ける必要があります。以下は、Windows10 でSFTPのポートを開く方法です:
- コントロールパネルで、「Windows Defender Firewall(Windows Defender ファイアウォール)」に移動します。左のパネルにある「Advanced settings(詳細設定)」をクリックすると、新しいポップアップウィンドウが表示されます。
- ポップアップウィンドウの左パネルにある「Inbound Rules(インバウンドルール)」をクリックします。次に、右側のパネルにある「New Rule(新規ルール)...」をクリックします。
- デフォルトでは、SFTP は通信に 22 番ポートを使用します。Windows ファイアウォールで、プライベートネットワークに適用される TCP ポート22番の新しい受信ルールを作成します。
最後に、使用する SFTP クライアントを選択します。Windows の SFTP クライアントとしては、WinSCP、FileZilla、Cyberduck がよく知られており、クライアントのインターフェース内から SFTP 転送を実行できるはずです。
Linux と macOS での SFTP の設定
Windows と同様、macOS や Linux での SFTP 設定にも、まずは SSH が必要です。Mac コンピュータにはすべて SSH がインストールされていますが、Linuxへの SSH のインストールは、選択した Linux ディストリビューションに依存します。
例えば、Ubuntu に SSH をインストールする方法は以下になります:
sudo apt install ssh
次に、SFTPポートを開く必要があります。macOS のファイアウォールのポート設定は、【 System Preferences(システム環境設定)】 >【 Security & Privacy(セキュリティとプライバシー)】 >【Firewall( ファイアウォール)】 > 【Firewall Options(ファイアウォールオプション)】でアクセスできます。また、Linuxでは、SFTPの22番ポートへのアクセスを許可するには、以下の ufw コマンドを使用する必要があります:
sudo ufw allow ssh
Unix のシェルを使って(SFTPコマンドで)SFTPでファイルを転送することもできますが、ここでは使いやすさを考慮して、SFTP クライアントを利用することを前提に説明します。macOS では Cyberduck が、macOS と Linux の両方では FileZilla が利用できます。また、Transmit は Mac 専用の優れた SFTP クライアントで、 Linux 用のオープンソースの優れた SFTP クライアントも多数存在します。
関連記事:How to Use SFTP to Securely Transfer Files (SFTPを使って安全にファイルを転送する方法)
SFTP で Integrate.io ができること
SFTP の設定は、特に技術的な専門知識がないユーザーにとっては難しいものですが、速くて安全なデータ転送は非常に重要です。では、企業はどうすればよいのでしょうか?
より多くの企業が、Integrate.io のようなデータ統合プラットフォームが正解であるとわかっています。Integrate.io は、さまざまなソースからクラウドデータウェアハウスやデータレイクに情報を移動させるための、強力で機能豊富な ETL ツールであり、ドラッグ&ドロップで操作できる使いやすいインターフェースと、SFTP など100以上の内蔵されたコネクタや統合機能により、ETL のニーズに対応した強固なデータパイプラインを簡単に構築することができます。
関連記事:Allowing Integrate.io access to my data on Secure File Transfer Protocol (SFTP) (SFTP(セキュアファイル転送プロトコル)上のデータへの Integrate.io のアクセスを許可する)
Integrate.ioでの SFTP の使用について詳細をお知りになりたい方は、当社のデータ専門家チームにご連絡いただき、Integrate.io プラットフォームの 14 日間無料トライアルをぜひお試し下さい。