9

Python 用の無料の ftps モジュールを教えてくれる人がいるかどうか疑問に思っていました。

私はPythonの完全な初心者ですが、これは仕事のプロジェクトに必要なものです。サードパーティの ftps サーバーに接続するには、ftps クライアントが必要です。

ありがとう、

デビッド。

4

7 に答える 7

9

Twistedを使用してFTPSを実装するには、FTP実装を使用するだけでよいと思いますが、属性を。ではなくFTPClient.connectFactory何かを実行する関数に変更します。connectSSLconnectTCP

FTPSが必要ですか? SFTPは、最近では異なり、より優れた、はるかに人気のあるプロトコルです。TwistedにはSFTP実装も含まれています。

于 2008-10-16T12:00:12.503 に答える
7

Python バージョン 2.7.1 の ftplib モジュールには、TLS サポートなど、必要な機能がすべて含まれています。

http://docs.python.org/library/ftplib.html#module-ftplib

于 2010-12-26T18:54:21.043 に答える
4

M2Cyptoには FTPS モジュールがあります。ドキュメントから:

>>> from M2Crypto import ftpslib
>>> f = ftpslib.FTP_TLS()
>>> f.connect('', 9021)
'220 spinnaker.dyndns.org M2Crypto (Medusa) FTP/TLS server v0.07 ready.'
>>> f.auth_tls()
>>> f.set_pasv(0)
>>> f.login('ftp', 'ngps@')
'230 Ok.'
>>> f.retrlines('LIST')
-rw-rw-r--   1 0        198          2326 Jul  3  1996 apache_pb.gif
drwxrwxr-x   7 0        198          1536 Oct 10  2000 manual
drwxrwxr-x   2 0        198           512 Oct 31  2000 modpy
drwxrwxr-x   2 0        198           512 Oct 31  2000 bobo
drwxr-xr-x   2 0        198         14336 May 28 15:54 postgresql
drwxr-xr-x   4 100      198           512 May 16 17:19 home
drwxr-xr-x   7 100      100          3584 Sep 23  2000 openacs
drwxr-xr-x  10 0        0             512 Aug  5  2000 python1.5
-rw-r--r--   1 100      198           326 Jul 29 03:29 index.html
drwxr-xr-x  12 0        0             512 May 31 17:08 python2.1
'226 Transfer complete'
>>> f.quit()
'221 Goodbye.'
>>>

または、サードパーティ モジュールの使用を最小限に抑えたい場合は、標準ライブラリのftplib .FTP クラスを (Python に) 組み込みの SSL サポートでサブクラス化できるはずです。ただし、 M2Crypto (または、そのようにしたい場合はTwisted ) の方が簡単な解決策です。

于 2008-10-18T20:16:09.363 に答える
3

Twistedは、 conchサブプロジェクトの下で FTPS (FTP over SSL) の実装を行っているようです。私はねじれの専門家ではありませんが、ねじれた男であるGlyph自身がこのサイトにリストされています。おそらく、別の質問に対する彼の回答をたどることで、詳細を見つけることができます (頑張ってください)。

于 2008-10-16T10:19:31.630 に答える
2

サーバーの実装については、pyftpdlib を参照してください: http://code.google.com/p/pyftpdlib/ 動作中の FTPS サーバーを実装するデモ スクリプトが含まれています: http://code.google.com/p/ pyftpdlib/ソース/ブラウズ/トランク/デモ/tls_ftpd.py

クライアントの実装に関しては、python 2.7 および 3.2 に含まれるパッチを提供しました。 http://bugs.python.org/issue2054

于 2010-03-21T18:47:59.497 に答える
0

Windows 用の無料の sftp クライアントが見つからなかったため、Python のサブプロセス モジュールを使用して Putty の PSFTP をラップすることになりました。もし私がそれについて知っていれば、私はおそらくグリフによって言及されたねじれた実装を使用したでしょう。

とにかく、興味がある場合は、次の場所で入手できます。

http://code.google.com/p/psftplib/

于 2008-10-17T02:38:30.297 に答える
0

私は自分で試したことはありません (はい、Google を使用していくつかのリンクをたどっただけです) が、http: //www.lag.net/paramiko/ が推奨される解決策のようです。ざっと見たところ、これは純粋な Python での SSH 実装であり、FTP などのトンネリングを可能にします。

更新: コメンターから、sftp と ftps を混同していると指摘されました。申し訳ありません。少なくとも Paramiko を簡単に調査して、要件に一致するかどうかを確認することをお勧めします。

于 2008-10-16T09:36:43.403 に答える