DOBON.NETプログラミング道掲示板

[ 最新記事及び返信フォームをトピックトップへ ]

■35662 / inTopicNo.1)  ftp接続してファイルアップロード後、別フォルダにコピー
  
□投稿者/ みーちょ 一般人(1回)-(2025/03/24(Mon) 03:36:34)
  • アイコン環境/言語:[Windows11 / vb.net2022] 
    分類:[.NET] 

    いつもお世話になっております。
    以下の処理を行いたいのですが、やり方が分からず躓いております。


    1 ftpサーバに接続してファイルをアップロード
      対象ディレクトリ ftp://test/aaa/ 
      ※ftp接続可能なフォルダ。実際のパスはc:\ftp\test\aaa

    2 ファイルアップロード後、直接ftp接続できないフォルダ
      D\bbb
      に移動し、システム日付(yyyymmdd)のフォルダを作成

    3 2のフォルダに、1でアップロードしたファイルをコピー


    1は、こちらのサイトの「FTPサーバーにファイルをアップロードする」でできましたが、2以降ができません。。。
    chコマンドみたいなのでフォルダ移動できないかと思ったのですが、ftpサーバ側でのchコマンド実行のやり方がわからず、躓いております。
    ftp接続できないフォルダ参照はできないのでしょうか?
    もしできるのなら、やり方を教えていただきたく、何卒よろしくお願いいたします。



マルチポストを報告
違反を報告
引用返信 削除キー/
■35663 / inTopicNo.2)  Re[1]: ftp接続してファイルアップロード後、別フォルダにコピー
□投稿者/ KOZ 一般人(40回)-(2025/03/24(Mon) 05:00:56)
  • アイコンNo35662に返信(みーちょさんの記事)
    > ftp接続できないフォルダ参照はできないのでしょうか?

    できません。出来たら問題です。

    > もしできるのなら、やり方を教えていただきたく、何卒よろしくお願いいたします。

    サーバーのフォルダを共有するしかないと思いますよ。
違反を報告
引用返信 削除キー/
■35664 / inTopicNo.3)  Re[2]: ftp接続してファイルアップロード後、別フォルダにコピー
□投稿者/ みーちょ 一般人(2回)-(2025/03/24(Mon) 06:13:11)
  • アイコン
    >>ftp接続できないフォルダ参照はできないのでしょうか?
    > できません。出来たら問題です。
    あう、やっぱだめですかぁ。
    私が知らないだけかもと、一縷の望みというか希望をもってたのですが。


    >>もしできるのなら、やり方を教えていただきたく、何卒よろしくお願いいたします。
    > サーバーのフォルダを共有するしかないと思いますよ。
    セキュリティの関係でNGくらったのです。
    もっかい上司と相談してみます。

    ちなみに、chじゃなくてcdコマンドでしたね。。。恥ずかし///
違反を報告
引用返信 削除キー/
■35665 / inTopicNo.4)  Re[3]: ftp接続してファイルアップロード後、別フォルダにコピー
□投稿者/ kiku 一般人(1回)-(2025/03/24(Mon) 11:17:46)
  • アイコンNo35664に返信(みーちょさんの記事)
    >
    > >>ftp接続できないフォルダ参照はできないのでしょうか?
    >>できません。出来たら問題です。
    > あう、やっぱだめですかぁ。
    > 私が知らないだけかもと、一縷の望みというか希望をもってたのですが。

    FTPサーバ上に、常時起動しているサービスやアプリなどをおいて、
    そのアプリが、c:\ftp\test\aaaを監視して、
    追加された場合、D\bbbへコピーすることをすれば
    実現できそうです。
違反を報告
引用返信 削除キー/
■35666 / inTopicNo.5)  Re[3]: ftp接続してファイルアップロード後、別フォルダにコピー
□投稿者/ 魔界の仮面弁士 大御所(1588回)-(2025/03/24(Mon) 11:38:42)
  • アイコンNo35664に返信(みーちょさんの記事)
    > セキュリティの関係でNGくらったのです。
    > もっかい上司と相談してみます。
    1) そもそも何故、時代遅れの FTP が選択されているのかを確認した方が良いでしょう
    2) どうしても FTP が必要なら、存在はしているが列挙されない不可視ディレクトリを使って
     公開フォルダーを見せないようにすることもできます(とはいえ、FTP が脆弱であることは変わりません)
    3) サーバーによっては QUOTE サブコマンドを通じて、非標準の独自コマンドで通信できるケースもあります


    > 1 ftpサーバに接続してファイルをアップロード
    FTP (RFC959) はセキュリティ的に脆弱なので、
    FTPS (RFC4217) あるいは
    SFTP (RFC4251) を採用した方が望ましいと思いますよ。

    FTP は、パスワードは暗号化されずに平文で通信されるため、
    盗聴や改竄に対して脆弱であり、現在では推奨されないプロトコルです。

    FTPS の場合、通信の暗号化のために、認証局で署名されたサーバー証明書を必要とします。
    そのためランニングコストが発生しますが、IIS でもサポートされているプロトコルです。
    VB 側から FTPS で送受信するためには、FtpWebRequest クラス を使えます。
    開発のために、一時的に無償のオレオレ証明書でテストするならこんな感じです。
    https://www.chuken-engineer.com/entry/2019/09/25/135516

    SFTP の場合は SSH 上で FTP する方式であり、認証局への申請が不要となるため、
    追加費用が発生しません。個人的には SFTP を推奨しておきます。
    IIS ではサポートされていませんが、Windows Server でも OpenSSH などで導入可能です。
    .NET からの送受信には、SSH.NET が用いられることが多いです。
    https://sorceryforce.net/ja/tips/sftp-ssh-net-basic

    なお定例的な送受信であれば、VB にて実行する代わりに WinSCP を
    コマンドライン実行することで FTP/FTPS/SFTP 通信を行わせることもできます。
    https://winscp.net/eng/docs/lang:jp
違反を報告
引用返信 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

Mode/  Pass/


- Child Tree -