登录后,购买下载资源更方便!
您需要 登录 才可以下载或查看,没有账号?立即注册
×
一、概述; B; j3 I, R. I( O( ^8 h
有一台linux机器,上面部署了sftp服务。然后我本机windows想通过winscp工具连接到这台linux服务器上传和下载文件。有两种连接方式,第一种是通过linux的用户名和密码,这种连接方式比较简单。本文将介绍第二种方式,即通过linux的用户名和密钥文件。
& ]" m) o. @3 v& B( v5 T6 z0 E: e) N: ?
二、生成密钥文件(windows中完成)- [8 a9 i* V5 T$ T A
1. 打开winscp工具,点击“会话”->“新建会话”。
% [; s% v; G$ V5 K! Y2. 点击“高级"->"高级"。
7 g( Y3 m2 b4 C% t3. 点击"验证"->"工具"->"生成新的密钥对"。# `+ @0 B! e! p' H
4. 点击"generate",在生成的过程中,鼠标可以随意在框中移动,相当于一个签名。4 w% C0 O$ A! F) g
5. 生成完后,点击"save priviate key",这样就得到了一个以.ppk结尾的密钥文件,我这边就命名成my-test-key.ppk。
# ] A c6 E( I2 ^/ S: Q打开这个ppk文件,可以看到我圈出来的两段内容,其中标注为1的是公钥部分,标注为2的是私钥部分
! B, G9 k/ g# O9 v2 f9 z' M6 }" W9 Q" o3 {# | |' u
三、将公钥写入到sftp服务器中(linux中完成)
/ r# Q: [* }* `: o. C9 t. n, L我已经在linux中搭建了sftp服务,如果有不会搭建sftp可以参考这篇博客​​centos sftp安装​​。
: J* n; k* T P前提说明:我使用sftpuser作为sftp服务的用户,sftpuser的家目录为/data。 b' D! s* J1 B2 q
请依次执行以下命令,将公钥写入到sftpuser的认证文件中。7 y7 R: `7 Q7 n0 g; J: o& p6 Q
cd /data! \- q( T6 h6 E J2 r
mkdir .ssh' C5 h. J+ J' U D) M
chown sftpuser: .ssh
. ]) J7 B& T0 e+ }) Q* A( T( i5 _ Qchmod 700 .ssh
& b7 \ q, ~8 w! B$ F& E, ^6 rcd .ssh# a1 H8 a9 l" p$ |+ x4 h7 z- O
touch authorized_keys: | n f, Y' _2 v t. O
chown sfpuser: authorized_keys
. T2 A( I% }7 l2 ]2 g& |chmod 600 authorized_keys
8 H+ ~6 ^. K! O0 N/ Hecho "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEApcvKlbe3+6iukeZ0mpqY1G112340jQrn9sSOmF//kIbXCTkPwnATdoxWDOQBDjzC895+2RPyCpiVTUgXhleJmXuw9cKEkx5fhetHLWfhPPyeRaIBEaSX2YL5/IcIZ2DKxXaZlAMtz9wATC1zgHHQnKnbqyLGAMzC+7DGAbbE1IXxVe8slKDcTKRxtB80gwsimJSf/e8rYy7WP4NUY7zycppxiMABngk+ZS9+7Nxc+7eyibbiN+cfUpYSsGKBqCRm1fRO9R/dYKdfPjyfWlFc9QtZqboFaRgIPvkJjc17kdcCDseElBRuBoNnhjyrwtDfZnZC6He6GZe+SUzHYtQb2w== my-test-key" >> authorized_keys
) F$ G' g& w! \% U& @' \文件authorized_keys的默认格式是"ssh-rsa 公钥 备注",公钥即取自上一步的ppk文件中的公钥部分,注意公钥需要写成一行,这里的公钥我做了一点点的人为修改,写文章的需要,大家忽略即可。1 U8 } f8 T& Y2 E1 r
6 c6 I. z0 `' j$ q* ]$ _四、连接
& w9 l7 I, ?2 V1. 输入要连接到的sftp服务器的ip地址和用户名。1 k9 P3 h, w4 E/ V/ P+ w
2. 点击“高级"->"高级"。
; @ n# O0 G$ [1 P% q3. 点击"验证"->"选择密钥文件",即在前面步骤中生成的ppk文件,点击"确定"。
' @& l+ z8 I Y4. 点击"登录",就可以与linux进行上传和下载文件了。( K4 M5 b: q9 W) ?$ {7 z
1 p4 S. N# d3 y3 G* y# X% K q
五、总结
2 k y9 r3 L2 zppk文件包含了公钥和密钥,所有机器只要拿到这个ppk文件,都可以访问sftp服务器,所以需要妥善保管。% n4 h' ^0 L; }; {
8 \: U: v+ O e( ?: s ^2 L `1 k |