[服务器] 如何使用WinSCP密钥文件连接sftp服务器

[复制链接]
admin 发表于 2023-5-18 10:23:11 | 显示全部楼层 |阅读模式

登录后,购买下载资源更方便!

您需要 登录 才可以下载或查看,没有账号?立即注册

×
一、概述
, ?9 ~& b( _. {5 d* }有一台linux机器,上面部署了sftp服务。然后我本机windows想通过winscp工具连接到这台linux服务器上传和下载文件。有两种连接方式,第一种是通过linux的用户名和密码,这种连接方式比较简单。本文将介绍第二种方式,即通过linux的用户名和密钥文件。
: _: U# \; L) c( f8 `+ X( u1 A6 u. l9 |& t( [' o
二、生成密钥文件(windows中完成)
* E9 C4 _" r* \* z2 H7 x3 P* t1. 打开winscp工具,点击“会话”->“新建会话”。
7 J8 L( P# ?* s* b# t/ G' v% Q  U2. 点击“高级"->"高级"。
9 v% T! j' b0 W: |3. 点击"验证"->"工具"->"生成新的密钥对"。
4 ~* Y4 G- w  m3 P4. 点击"generate",在生成的过程中,鼠标可以随意在框中移动,相当于一个签名。; F, U4 U6 Q* W- m+ W- Z- V( b/ S
5. 生成完后,点击"save priviate key",这样就得到了一个以.ppk结尾的密钥文件,我这边就命名成my-test-key.ppk。
- p) D# {4 W6 a打开这个ppk文件,可以看到我圈出来的两段内容,其中标注为1的是公钥部分,标注为2的是私钥部分1 U; N+ H7 O2 u% o! x

  N  L& h& V4 S( L* b/ Q- H. @7 x三、将公钥写入到sftp服务器中(linux中完成)$ E" ?' m* `; |6 g4 U- b* R2 c
我已经在linux中搭建了sftp服务,如果有不会搭建sftp可以参考这篇博客​​centos sftp安装​​。
/ s5 t/ [: P3 H5 e; _前提说明:我使用sftpuser作为sftp服务的用户,sftpuser的家目录为/data。! Z2 ^' ?* @: Y4 z4 A9 p
请依次执行以下命令,将公钥写入到sftpuser的认证文件中。9 g2 ~8 @$ o3 o
cd /data( Y( T% |- H; b/ @  b; d3 N* u" ]
mkdir .ssh
- h' J+ E/ [4 H7 ^$ [chown sftpuser: .ssh
* g: }! N0 A# U, ^) ~' Hchmod 700 .ssh" Q1 n7 |% u" u- a2 }' c4 x! V  v
cd .ssh" W7 O3 p( p4 _( P
touch authorized_keys# O+ p9 U: c& y4 W1 P  ?
chown sfpuser: authorized_keys$ Y( p# c5 F  b, q2 Z% D
chmod 600 authorized_keys% W# o4 \% A/ ^& M$ a, U4 u- U
echo "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEApcvKlbe3+6iukeZ0mpqY1G112340jQrn9sSOmF//kIbXCTkPwnATdoxWDOQBDjzC895+2RPyCpiVTUgXhleJmXuw9cKEkx5fhetHLWfhPPyeRaIBEaSX2YL5/IcIZ2DKxXaZlAMtz9wATC1zgHHQnKnbqyLGAMzC+7DGAbbE1IXxVe8slKDcTKRxtB80gwsimJSf/e8rYy7WP4NUY7zycppxiMABngk+ZS9+7Nxc+7eyibbiN+cfUpYSsGKBqCRm1fRO9R/dYKdfPjyfWlFc9QtZqboFaRgIPvkJjc17kdcCDseElBRuBoNnhjyrwtDfZnZC6He6GZe+SUzHYtQb2w== my-test-key" >> authorized_keys( Z& f% I% u, k* W+ k, Y4 z. t) N
文件authorized_keys的默认格式是"ssh-rsa 公钥 备注",公钥即取自上一步的ppk文件中的公钥部分,注意公钥需要写成一行,这里的公钥我做了一点点的人为修改,写文章的需要,大家忽略即可。- T4 {; U! c/ U$ @
0 V6 v2 ?9 v8 z. e! P6 a2 f8 C
四、连接
- b- C: g5 F7 j& W9 U# s; {1. 输入要连接到的sftp服务器的ip地址和用户名。! Y3 Z, f  ]# ~, r& j( e" A
2. 点击“高级"->"高级"。
6 [, f5 n, h( `7 [3 g* O3. 点击"验证"->"选择密钥文件",即在前面步骤中生成的ppk文件,点击"确定"。9 V0 |! p) B! _: @
4. 点击"登录",就可以与linux进行上传和下载文件了。
* \: ]% x6 _1 }( h
/ L- u/ L! a" H; X! `五、总结
9 W$ _: o* E' v6 U7 J; M* u; kppk文件包含了公钥和密钥,所有机器只要拿到这个ppk文件,都可以访问sftp服务器,所以需要妥善保管。) l+ Y' z. U- q, C% i0 E: `' c; i5 l

" P% X+ W, L8 X5 w$ \- O
评论0

手机版|小黑屋|源码模版|全球支付|VISA信用卡|MASTER信用卡|科恒数字网-持续研发、集成、交付、运营方案资源库

GMT+8, 2025-12-26 17:48 , Processed in 0.052996 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.