LFTPでsftpに接続する

コマンドラインベース(CLI)のFTPクライアントのLFTPでsftpで接続するための手順を見ていきます。


最初にsftpについて触れておきます。

sftpは、SSH(Secure Shell)プロトコル上で動作するファイル転送プロトコルになります。

SSHの暗号化機能を利用するため、安全にファイルを転送できます。




今回は例として、下記の構成でLFTPを試します。

リモート(FTPサーバ)

マシン : Raspberry Pi 5 8G

OS : Raspberry Pi OS(64-bit)

ホスト : raspberrypi.local

※ホストの箇所にはIPアドレスでも構いません

ユーザ : pi

パスワード : raspberry


ローカル(FTPクライアント)

aptを使いたいのでDebian系Linuxが望ましい

※クロームブックのクロスティーニ等

クロームブックで開発環境を構築する

秘密鍵のパス : ~/.ssh/pikey

※秘密鍵に関してはクロームブックで公開鍵認証でラズベリーパイにリモートアクセスするを参考にして作成しておいてください。

※クロスティーニでlftpを実行する場合は、クロスティーニのファイルシステム内に秘密鍵を配置しておきます。




lftpでsftpでリモートと接続する時は

$ lftp sftp://ユーザ@ホスト

になります。


今回の例であれば、

$ lftp sftp://[email protected]

になります。

※パスワードの入力に関しては省略します。




接続後の話題になりますが、公開鍵認証を使用している場合は、リモート側用のコマンド(cd)を実行すると

cd `aaa' [[email protected]: Permission denied (publickey).]

権限がないというエラーになります。


各コマンドを使用できるようにするためには、鍵認証の設定を追加します。

> exit

でリモートとの接続を終了した後、ローカル側で下記の手続きを行います。


$ micro ~/.ssh/config
Host rpi5
HostName raspberrypi.local
User pi
	IdentityFile ~/.ssh/pikey

※Hostは任意の文字列になります。

ホスト(HostName)に紐づいたユーザと秘密鍵を指定して、configファイルを保存します。


Hostで指定した文字列を使用して、

$ lftp sftp://rpi5

でリモートと接続を行います。


パスワード入力の要求がなく、リモートと接続できることを確認しましょう。

マインクラフト用ビジュアルエディタを開発しています。
詳しくはinunosinsi/mcws_blockly - githubをご覧ください。