使用 cURL 指令登入與上傳檔案到 FTPS 伺服器

在使用 FileZilla 測試 FTPS 的時候一直發生問題,看了一下覺得它的 Log 實在是不太夠,所以就使用 cURL 連線 FTP 如此可以得到更詳細的 Log 來幫助測試 FTP 伺服器的問題。

使用 cURL 登入 FTP

在說明如何使用 FTPS 之前先來看看如何使用 cURL 連線 FTP,其實它的指令滿簡單的有點像是使用 cURL 連線 basic authentication 的方法,直接加入 --user 或是 -u 把使用者帳號密碼帶入就可以了。

curl -v "ftp://127.0.0.1:21/" --user "user:password"

使用 cURL 登入 FTPS

那如果是使用 FTPS 怎麼辦呢?其實只要在後面加入 --ftp-ssl-control 就可以了,而因為它跟連線 SSL 網站一樣可能會有 SSL 憑證與網址不相符的問題,所以直接使用 --insecure 或是 -k 直接信任就可以了。

curl -v --ftp-ssl-control --insecure ftp://127.0.0.1:21/ --user user:password

如果要上傳檔案到 FTPS 也非常簡單只要放入 -T 指定路徑即可

curl -v --ftp-ssl-control --insecure -T image.jpg ftp://127.0.0.1:21/ --user user:password

參考資料