You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Files Uploads sometimes but fails most of the time. getting error SSH.NET (Permission denied (publickey)) #620
I am trying to upload file using SFTP. The file gets uploaded sometimes and most the times it throws the error SSH.NET (Permission denied (publickey)) The SFTP server accepts only whitelist IP addresses.
public void SetConnection(string userName, string strRSAKey)
{
var authMethods = new List<AuthenticationMethod>();
authMethods.Add(new PrivateKeyAuthenticationMethod(
userName,
new[] { new PrivateKeyFile(GenerateStream(strRSAKey)) }
));
connectionInfo = new ConnectionInfo(hostName, port, userName, authMethods.ToArray());
}
public bool UploadFile(string sourceFilePath, string destinationFilePath)
{
if (connectionInfo != null)
{
using (var client = new SftpClient(connectionInfo))
{
client.Connect();
if (client.IsConnected)
{
var csvFile = File.Open(sourceFilePath, FileMode.Open);
client.UploadFile(csvFile, destinationFilePath, true);
csvFile.Dispose();
}
client.Disconnect();
return true;
}
}
return false;
}
private Stream GenerateStream(string str)
{
var stream = new MemoryStream();
var writer = new StreamWriter(stream);
writer.Write(str);
writer.Flush();
stream.Position = 0;
return stream;
}
Activity
codex-nz commentedon Mar 30, 2020
I encountered something similar and used the following that seemed to get me further (only to hit another bug/undefined feature):
NOTE: the use of PrivateKeyConnectionInfo in place of ConnectionInfo.
Hope this helps..
WojciechNagorski commentedon Sep 23, 2023
Fixed by #1177 and #1180
WojciechNagorski commentedon Oct 10, 2023
Version 2023.0.0 has been published https://www.nuget.org/packages/SSH.NET/2023.0.0