久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

使用 TLS 會(huì)話重用將文件上傳到 C# 中的隱式 FTP

Upload file to implicit FTPS server in C# with TLS session reuse(使用 TLS 會(huì)話重用將文件上傳到 C# 中的隱式 FTPS 服務(wù)器)
本文介紹了使用 TLS 會(huì)話重用將文件上傳到 C# 中的隱式 FTPS 服務(wù)器的處理方法,對(duì)大家解決問題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

問題描述

限時(shí)送ChatGPT賬號(hào)..

我正在嘗試使用 TLS 協(xié)議通過 ftps 將文件上傳到 FileZilla 服務(wù)器.服務(wù)器上的 20 和 21 端口已關(guān)閉.我設(shè)法連接到服務(wù)器的唯一方法是使用 FluentFTP,但由于某些 FileZilla 服務(wù)器錯(cuò)誤,我無法上傳文件.

有什么辦法可以避免違反安全級(jí)別?如果沒有,是否還有其他免費(fèi)庫支持使用 TLS/SSL 上傳文件?我也試過這個(gè),但沒有用.
https://docs.microsoft.com/en-us/dotnet/api/system.net.ftpwebrequest.enablessl

謝謝.

解決方案

你可以使用 WinSCP .NET 程序集.

它支持隱式 TLS(端口 990).并且使用 OpenSSL TLS 實(shí)現(xiàn)(不是 .NET Framework),所以應(yīng)該沒有 FluentFTP 的問題.它對(duì)我來說絕對(duì)適用于 FileZilla FTP 服務(wù)器,即使打開了會(huì)話恢復(fù)要求.

SessionOptions sessionOptions = new SessionOptions{協(xié)議 = Protocol.Ftp,主機(jī)名 = ftp.example.com",用戶名 = 用戶名",密碼=密碼",F(xiàn)tpSecure = FtpSecure.Implicit,TlsHostCertificateFingerprint = "xx:xx:xx:...",};使用(會(huì)話會(huì)話 = 新會(huì)話()){session.Open(sessionOptions);session.PutFiles(localPath, remotePath).Check();}

(我是 WinSCP 的作者)

有關(guān)該問題的更多參考,另請(qǐng)參閱可以使用 FileZilla 或 WinSCP 連接到 FTP,但不能使用 FtpWebRequest 或 FluentFTP.

I'm trying to upload file to FileZilla server through ftps by protocol TLS. On the server port 20 and 21 is closed. The only way how I managed to connect to server is by using FluentFTP but I couldn't upload file because of some FileZilla server bug.

https://github.com/robinrodricks/FluentFTP/issues/335
https://forum.filezilla-project.org/viewtopic.php?t=51601

public static void UploadTest(
    string pathUploadFile, string addressIP, int port, string location,
    string userName, string password)
{
    FtpClient ftp;

    Console.WriteLine("Configuring FTP to Connect to {0}", addressIP);
    ftp = new FtpClient(addressIP, port, new NetworkCredential(userName, password));
    ftp.ConnectTimeout = 600000;
    ftp.ReadTimeout = 60000;
    ftp.EncryptionMode = FtpEncryptionMode.Implicit;
    ftp.SslProtocols = SslProtocols.Default | SslProtocols.Tls11 | SslProtocols.Tls12;
    ftp.ValidateCertificate += new FtpSslValidation(OnValidateCertificate);
    ftp.Connect();
    // upload a file
    ftp.UploadFile(pathUploadFile, location);

    Console.WriteLine("Connected to {0}", addressIP);
    ftp.Disconnect();

    void OnValidateCertificate(FtpClient control, FtpSslValidationEventArgs e)
    {
        // add logic to test if certificate is valid here
        e.Accept = true;
    }
}

Is there any way around without a violating security level? If not is there any other free library which support uploading files with TLS/SSL? I also tried this but it didn't work.
https://docs.microsoft.com/en-us/dotnet/api/system.net.ftpwebrequest.enablessl

Thanks.

解決方案

You can use WinSCP .NET assembly.

It supports implicit TLS (port 990). And uses OpenSSL TLS implementation (not .NET Framework), so it should not have the problem that FluentFTP has. It definitely works for me against FileZilla FTP server, even with session resumption requirement turned on.

SessionOptions sessionOptions = new SessionOptions
{
    Protocol = Protocol.Ftp,
    HostName = "ftp.example.com",
    UserName = "username",
    Password = "password",
    FtpSecure = FtpSecure.Implicit,
    TlsHostCertificateFingerprint = "xx:xx:xx:...",
};

using (Session session = new Session())
{
    session.Open(sessionOptions);

    session.PutFiles(localPath, remotePath).Check();
}

(I'm the author of WinSCP)

For more references about the problem, see also Can connect to FTP using FileZilla or WinSCP, but not with FtpWebRequest or FluentFTP.

這篇關(guān)于使用 TLS 會(huì)話重用將文件上傳到 C# 中的隱式 FTPS 服務(wù)器的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

ASP.NET Core authenticating with Azure Active Directory and persisting custom Claims across requests(ASP.NET Core 使用 Azure Active Directory 進(jìn)行身份驗(yàn)證并跨請(qǐng)求保留自定義聲明)
ASP.NET Core 2.0 Web API Azure Ad v2 Token Authorization not working(ASP.NET Core 2.0 Web API Azure Ad v2 令牌授權(quán)不起作用)
ASP Core Azure Active Directory Login use roles(ASP Core Azure Active Directory 登錄使用角色)
How do I get Azure AD OAuth2 Access Token and Refresh token for Daemon or Server to C# ASP.NET Web API(如何獲取守護(hù)進(jìn)程或服務(wù)器到 C# ASP.NET Web API 的 Azure AD OAuth2 訪問令牌和刷新令牌) - IT屋-程序員軟件開發(fā)技
.Net Core 2.0 - Get AAD access token to use with Microsoft Graph(.Net Core 2.0 - 獲取 AAD 訪問令牌以與 Microsoft Graph 一起使用)
Azure KeyVault Active Directory AcquireTokenAsync timeout when called asynchronously(異步調(diào)用時(shí) Azure KeyVault Active Directory AcquireTokenAsync 超時(shí))
主站蜘蛛池模板: 欧美性大战久久久久久久蜜臀 | www.国产精品 | 亚洲视频免费播放 | 99免费在线观看视频 | 一区二区三区欧美在线 | 久久se精品一区精品二区 | 日韩欧美中文字幕在线视频 | 丁香色婷婷 | 成人小视频在线免费观看 | 成人国产一区二区三区精品麻豆 | 国产一区二区三区久久久久久久久 | 国产一区二区精品在线 | 亚洲伊人精品酒店 | av日韩在线播放 | 国产精品污www一区二区三区 | 亚洲一级av毛片 | 亚洲精品视频网站在线观看 | 久久中文网 | 毛片视频网址 | 亚洲国产精品久久久久 | 久草在线在线精品观看 | 在线中文视频 | 亚洲视频在线播放 | 精品欧美视频 | 欧美性猛片aaaaaaa做受 | 国产一二三视频在线观看 | 久久久久久国产精品免费免费 | 亚洲第一av | 天天操网 | 国产四区 | 狠狠操网站 | 男女免费视频网站 | 一区二区三区视频免费观看 | 国产精品久久久久久二区 | 在线免费观看视频你懂的 | 国产在线麻豆精品入口 | 一区二区伦理电影 | 亚洲毛片在线观看 | 精品在线看 | 一区二区国产精品 | a级片在线观看 |