• Status: Solved
  • Priority: Low
  • Security: Public
  • Views: 225
  • Last Modified:

PS, Winscp: "New-WinSCPSession : Exception calling "Open" with "1" argument(s): "SessionOptions.Protocol is Protocol.Sftp or Protocol.Scp, but SessionOptions.SshHostKeyFingerprint is not set."

Hi,

I'd like to use winscp but do not have a fingerprint. Yes, I know that's a security risk but not where I use it.

This is the tool https://gallery.technet.microsoft.com/WinSCP-PowerShell-Module-ee1601ff



How can I find a way around it?
J.
0
janhoedt
Asked:
janhoedt
  • 3
  • 3
1 Solution
 
Dan McFaddenSystems EngineerCommented:
What protocol are you using, SFTP or SCP?  If SFTP, you can switch to just the FTP protocol and then no finger print is required.

Can you post the script throwing the error?

Dan
1
 
janhoedtAuthor Commented:
Not sure, the default one, guess that's scp.
There is no error, it just asks for a fingerprint which I do not have.
0
 
Dan McFaddenSystems EngineerCommented:
You control the protocol by setting the Session Options in the script.  There are 2 ways of doing this:

1.
$sessionOptions = New-Object WinSCP.SessionOptions -Property @{
        Protocol = [WinSCP.Protocol]::Ftp
        HostName = $ftpServer
        PortNumber = 21
        UserName = $userName
        Password = $passWord
}

Open in new window


Here you directly declare the protocol in the Session Options property array.

2.
$sessionUrl = "ftp://"+$userName+":"+$passWord+"@"+$ftpServer+"/"
$sessionOptions = New-Object WinSCP.SessionOptions
$sessionOptions.ParseUrl($sessionUrl)

Open in new window


Here, you declare the protocol (also ftp) by building a string that is then consumed by the Session Options using the ParseUrl method.

Reference link:  https://winscp.net/eng/docs/library_sessionoptions

Dan
0
Problems using Powershell and Active Directory?

Managing Active Directory does not always have to be complicated.  If you are spending more time trying instead of doing, then it's time to look at something else. For nearly 20 years, AD admins around the world have used one tool for day-to-day AD management: Hyena. Discover why

 
janhoedtAuthor Commented:
is wnscp ftp? (!)
0
 
Dan McFaddenSystems EngineerCommented:
To quote the WinSCP website:


WinSCP is a popular SFTP client and FTP client for Microsoft Windows!
Copy file between a local computer and remote servers using
FTP, FTPS, SCP, SFTP, WebDAV or S3 file transfer protocols.

So yes, WinSCP can be used with several file transfer protocols, FTP being one of them.

Dan
0
 
janhoedtAuthor Commented:
Apparently we use sftp, what is not working with the commands here.

$sessionOptions = New-Object WinSCP.SessionOptions -Property @{
        Protocol = [WinSCP.Protocol]::sFtp
        HostName = $ftpServer
        PortNumber = 22
        UserName = $userName
        Password = $passWord
}

Error is:
SessionOptions.Protocol is Protocol.Sftp or Protocol.Scp, but SessionOptions.SshHostKeyFingerprint is not set. (raised by: New-WinSCPSession)

New-WinSCPSession -SessionOption $sessionOptions
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: Microsoft Azure 2017

Azure has a changed a lot since it was originally introduce by adding new services and features. Do you know everything you need to about Azure? This course will teach you about the Azure App Service, monitoring and application insights, DevOps, and Team Services.

  • 3
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now