![]() |
||
|
Power Member
![]() ![]() 加入日期: Sep 2004
文章: 623
|
SSH FTP的問題
各位好
請問有關SFTP的問題 最近公司有個新系統 合作廠商會把一些資訊傳送到我們的ftp 對方要求我們使用SFTP,並提供SSH所謂的"key"給他們 FTP架過很多次但SFTP則是第一次接觸,搞不太清楚他們所謂的key是什麼東西 爬了些文章,我猜測他們指的應該是SSH連線時需要的公、私鑰 但爬了些文章,金鑰是由client端產生,私鑰client端自己留著,公鑰要上傳到server。 看到這我就很納悶了....... 既然是對方要連線到我們的FTP,應該是對方要產生public key給我們才對啊。 為什麼對方一直跟我們要key? |
|||||||
|
|
|
Basic Member
加入日期: Jan 2006
文章: 22
|
反向思考
對方是要您產生另一組公、私鑰 然後把私鑰給他 公鑰您就自己加入自己的Server 或許他就是不想做產生key及把key上傳的動作
__________________
開發中的落後地區 |
||
|
|
|
Major Member
![]() 加入日期: Feb 2005 您的住址: 赤道雨林
文章: 125
|
引用:
沒錯阿, 你要產生一對金鑰,public key 放在sftp server, private key 給廠商, private key 就好像密碼, sftp server 用public key 來驗證你的 private key 的 signature 是否正確, 所以只有擁有 private key 的人才能登入. |
|
|
|
|
Major Member
![]() 加入日期: Jan 2002 您的住址: 台南市
文章: 206
|
引用:
對方要求提供 key 這件事情蠻奇怪的 除非要做到雙向認證, 否則不需要提供才對 而且要提供也是提供"憑證(Certification)" 因為沒有提到平台的作業系統 底下的做法都可以做到 sFTP 提供做為參考 Windows: 直接安裝 Filezilla Server https://filezilla-project.org/download.php?type=server 啟用內建的 SSL/TLS 功能, 這樣就有 sFTP 可用了 安裝後, 設定選項在 Edit/Setting/SSL/TLS Setting 從那邊產生相關憑證就可以了 同時請對方使用 Filezilla 連入, 在主機的加密設定部分選擇 "透過外顯式 TLS 的 FTP" 這樣FTP的傳輸就已經是 sFTP 了 若無法正常連線, 則前述選項改用 "透過隱含式 TLS 的 FTP" 連線時, 會直接詢問是否接受SSL憑證, 請對方點選接收就可以了 Linux: 啟用 SSH 服務, 再請對方使用 WinSCP 連入 WinSCP http://winscp.net/eng/docs/lang:cht 對方連入時一樣會出現是否接受 SSL 憑證, 點選接收就可以 |
|
|
|
|
Regular Member
![]() ![]() 加入日期: Jan 2004
文章: 83
|
"FTP over TLS" & sftp 是不同的東西
回覆樓主,你的想法是對的。 慣例是 client 產生一組 key 再傳上 server, 所以才有 ssh-copy-id 這個便用程式。 此文章於 2014-03-29 01:49 AM 被 b4283 編輯. |
|
|
|
Elite Member
![]() ![]() ![]() ![]() ![]() 加入日期: May 2002 您的住址: 板橋
文章: 5,112
|
ssh/sftp client連上server時server就會把自己的public key提供給client了(所以沒有所謂要先把key傳給對方的問題,除非對方要的是private key
),如果對方要的是不要人工輸入密碼就能自動登入的話,應該是把他們的public key傳給你,你幫他放進他home directory下的.ssh目錄中(這個動作他也可以DIY,並不一定要你幫他弄 ),這樣sftp client連上時就可以自動登入了,所以的確是對方搞不清楚狀況![]() ....
__________________
士大夫之無恥,是謂國恥 ![]() ....
此文章於 2014-03-29 07:48 AM 被 cmwang 編輯. |
|
|
|
Power Member
![]() ![]() 加入日期: Sep 2004
文章: 623
|
引用:
感謝各位。 我在發文之前都只注意自動登入這段,沒有仔細看建立連線過程。 提供金鑰的方向是跟自動登入相反。 但還是覺得很怪, 這段不像自動登入的金鑰會要手動產生都是自動的。 實在搞不懂為什麼我們要copy檔案給他們。 另外你有提到除非對方要的是private key。 為什麼對方會要private key?這不合理啊。 老實講對方是銀行,我們是使用他們的金流服務。 所以他們會傳來一些交易資料。 這是他們既有的服務,而且我一直認為銀行的IT 應該是很厲害不會提什麼奇怪又不合理的要求才是。 |
|
|
|
|
*停權中*
加入日期: Sep 2010
文章: 691
|
引用:
避免 mitm attack 吧, 銀行規範上都會比較謹慎. 此文章於 2014-03-29 09:55 AM 被 T磨人 編輯. |
|
|
|
|
Basic Member
加入日期: Dec 1999 您的住址: 土城
文章: 15
|
我猜想應該是對方要你的 private key 給他, 讓他可用此 private key 直接登入.
若你的系統為 Linux, 可用以下方式: #### 設定 ssh key ##### ssh-keygen -t rsa cd .ssh cat id_rsa.pub >> authorized_keys 將 id_rsa 此 private key 給對方, 對方即可用此 key, sftp 登入 ----------------------------------------- 而若要讓對方只能用 sftp 登入, 並且 chroot 到某目錄, 而且無法用 ssh 登入操作系統, 可參考以下: Restricting Users To SFTP Plus Setting Up Chrooted SSH/SFTP |
|
|