概要
- いつもはFileZillaを利用してFTPを使っているが、コマンドで操作する必要ができた
- 下記の設定は、つまりFTPSを利用しているということ

- ただftpコマンドはFTPSに対応していない
- FTPSを使うには下記の通りcurlを使う方法がある
curl -u username:password --ftp-ssl ftp://example.com
- または
lftps
を使う方法があり、今回はそちらを利用する
参考
lftpコマンドによる接続
- Homebrewで
nmap
をインストールして、開いているポートを確認できる
nmap <IPアドレス>
...
Host is up (0.010s latency).
Not shown: 997 filtered tcp ports (no-response)
PORT STATE SERVICE
xx/tcp open http
yyy/tcp open https
zzzz/tcp open http
- Homebrewで
lftp
をインストールして、下記の通り接続できる
lftp
lftp :~> set ftp:proxy <プロキシホスト>:<プロキシポート>
lftp :~> open -u <username>,<password> <IPアドレス>
lftp <username>@<IPアドレス>:~> ls
- 上記をシェルスクリプトに落とし込むと以下の通り
lftp -c '
set ftp:proxy <プロキシホスト>:<プロキシポート>
open -u <username>,<password> <IPアドレス>
ls
'
- プロキシが必要なく、FTP接続しかできない場合は以下の通り(イントラのためFTPでもOKな場合)
lftp -c '
open -u <username>,<password> <IPアドレス> -e "set ftp:ssl-allow no"
ls
'