Winscp使用密钥登录
Winscp使用密钥登录
背景:通常我们使用winscp
通过密码认证去连接服务器进行文件的ftp操作,但是为了安全,我们服务器上经常会禁止使用密码连接,而改用密钥认证。而且服务器上经常会禁止root用户直接登录。所以接下来我们就讲下怎么用winscp去使用密钥认证,以及登入后如何从普通用户su到root用户。
一、使用OpenSSH密钥连接
Winscp使用的是putty作为SSH登录工具,而puttygen所生成的是以.ppk结尾的密钥文件,所以你使用xshell生成的密钥会提示添加失败,此时你有两种选择,
1、使用putty重新生成putty格式的密钥,并添加到服务器上。
2、将openssh格式的私钥转换成winscp支持的.ppk格式。
这里,我们选择第二种方式。如下:
1、尝试用winscp直接导入xshell的密钥报错
Winscp--》高级--》SSH--》验证--》密钥文件


接着我们导入之前xshell生成的密钥,就报错了,弹出如下窗口:

此时报错了,因为之前用xshell导出的密钥是OpenSSH格式的,而winscp不支持这种格式,所以我们要将该密钥转换成winscp支持的.ppk格式。
2、OpenSSH转换成ppk格式
参考:https://www.cnblogs.com/Waterclouds/p/4768768.html
打开winscp--》工具--》运行PuTTYgen(G)

打开puttygen 选择-Load 找到你之前用xshell生成的open-ssh格式的密钥文件,选择所有格式然后加载你的私钥



输入之前open-ssh密钥的口令:

然后就是导入成功,保存私钥文件为.ppk格式。


格式转换完毕,最后重新导入ppk文件,即可。

此时,密钥文件导入成功,重新登录即可通过winscp用密钥认证连接了。
二、sftp后sudo成root用户
参考:https://www.cnblogs.com/liangzai-cool/p/5956090.html
一般服务器为了安全禁止ssh下root账号登录,此时使用sftp登录管理服务器只能使用普通账号登录,所以访问路径的时候,经常会碰到权限不足的问题,如下图:

1、获取sftp-server的路径
[root@localhost ~]# cat /etc/ssh/sshd_config | grep sftp
Subsystem sftp /usr/libexec/openssh/sftp-server

这个/usr/libexec/openssh/sftp-server路径,后面几步都要用到。
2、配置能够sudo的用户
步骤一里面我们配置了可以用sftp通过密钥登录。所以,这里针对同一个用户,要配置sudo权限。
[root@localhost doubles]# vim /etc/sudoers
doubles ALL=(root) NOPASSWD: ALL
或者
doubles ALL=(root) NOPASSWD:/usr/libexec/openssh/sftp-server
3、配置winscp
Winscp--》高级--》sftp,选择SFTP服务器,选择sudo su -c ...,并且将路径改为上面获取到的sftp-server路径:/usr/libexec/openssh/sftp-server,如下图

点击确定,保存,然后登录即是root用户了,对系统有生杀大权。
Winscp使用密钥登录的更多相关文章
- SSH密钥登录让Linux VPS/服务器更安全
查看 /var/log 登录日志文件,突然发现服务器被人扫描端口在进行暴力攻击 平常登录服务器,都是使用用户密码登录,看来这样的做法并不安全,不得不关闭密码登录了. 总结了一个putty使用密钥自动登 ...
- 设置 SSH 通过密钥登录
我们一般使用 PuTTY 等 SSH 客户端来远程管理 Linux 服务器.但是,一般的密码方式登录,容易有密码被暴力破解的问题.所以,一般我们会将 SSH 的端口设置为默认的 22 以外的端口,或者 ...
- centos6.7版本下配置ssh密钥登录
需要提前说明的是我使用的系统是centos6.7的版本. 1.我使用的是Putty登录 #ssh-keygen (生成公钥和私钥的命令) 回车之后会提示密钥要存放的目录,默认的目录是当前目录下的.ss ...
- putty WinScp 免密登录远程 Linux
该方法的原理是预先生成一对公钥和私钥,私钥以文件的形式保存在本地,公钥保存在远程机器上.这样每次登录只需指定私钥文件,远程机器通过比对公钥和私钥来验证登录的合法性. Putty 免密登录 第一步 生成 ...
- Linux系统设置 SSH 通过密钥登录
我们一般使用 PuTTY 等 SSH 客户端来远程管理 Linux 服务器.但是,一般的密码方式登录,容易有密码被暴力破解的问题.所以,一般我们会将 SSH 的端口设置为默认的 22 以外的端口,或者 ...
- 无密钥登录的自动脚本实现(ssh-copy-id、expect免交互输入脚本)
感谢朋友支持本博客,欢迎共同探讨交流,由于能力和时间有限,错误之处在所难免,欢迎指正! 如有转载,请保留源作者博客信息. Better Me的博客:blog.csdn.net/tantexian 如需 ...
- 增强VPS SSH账号安全:改端口,禁用Root,密钥登录,Denyhosts防暴力攻击
VPS SSH账号是我们日常管理VPS的主要登入方式,尤其是Root账号,对Linux系统安全至关重要.以前好多站长喜欢用Putty中文版,这实际是别人修改官方Putty汉化而来,这些软件被植入了后门 ...
- linux系统使用密钥登录设置
使用密钥登录linux的操作步骤(使用putty): 1.用putty远程登录linux服务器,然后使用puttygen生成密钥,将生成的密钥保存,保存私钥将公钥复制保存到linux服务器的autho ...
- 多台计算机之间的ssh无密钥登录
在很多分布式系统中,我们最常遇到的一个问题是,需要在服务器集群上保证多台机器之间的SSH无密钥登录.以Hadoop为例,为了方便,我们需要在master和slaves之间配置密钥登录,这样我们启动Ha ...
随机推荐
- 问题:PLS-00204: 函数或伪列 'EXISTS' 只能在 SQL 语句中使用;结果:PL/SQL中不能用exists函数?
怎么写了一个语句带出这样的结果. 语句: if exists (select * from sysdatabases where name='omni') then 结果: ERROR 位于第 4 行 ...
- Jquery前端选择器
----------------------祖先后代选择器------------------------------ 1.祖先 后代:根据一个元素可以取得指定的所有子元素(不管中间有多少后代)$(& ...
- ImageView 的 ScaleType
/** * Options for scaling the bounds of an image to the bounds of this view. 将一个图片的边界缩放到这个view边界的几种选 ...
- android opencv
最近工作需求:用opencv来先做一个demo.扫描照片进行边缘检测和透视矫正. 之后会加入照片降噪等处理. 请教了一下搞图像的同事.他的提议: 1.绿盟的“黄色照片检测” 用的是动态的opencv库 ...
- C语言基础问题总结
Double 类型用 %f 接受会产生错误,应该用%lf C语言中SIN,COS的参数为弧度,角度应先转换为弧度才能计算,否则出错 三角形的判断条件,任意两边长度和大于第三边 闰年判断条件整百年为40 ...
- C++面向对象类的实例题目七
题目描述: 编写两个有意义的类,使一个类嵌套在另一个类中. 分析: 本题涉及两个类student和cdegree,前者为学生类,包含学生的学号(nubner),姓名(name)和成绩(degree), ...
- 推荐两款富文本编辑器:NicEdit和Kindeditor
做过Web开发的朋友相信都使用过富文本编辑器,比较出名的CuteEditor和CKEditor很多人应该已经使用过,在功能强大的同时需要加载的东西也变得很多.下面要推荐的两款富文本编辑器都是使用JS编 ...
- 设置 PyCharm 软件中 Terminal 窗口 中启动的 python 交互命令的版本
设置 PyCharm 软件中 Terminal 窗口 中启动的 python 交互命令的版本 python2 和 python3 有很大的不同,使用python2 编写的程序,如果使用python3 ...
- R: plot 绘图各种参数,以及 legend。。
################################################### 问题:基础绘图plot 18.4.30 plot函数,基础绘图的各个参数? 解决方案: ca ...
- 100078D Domestic Networks
传送门 题目大意 有两种染料,给定它们的单价和数量,每染色一米需耗费一个单位的染料,一条边只能用一种燃料,给你一张图,要求你将其中的一些边染色使得在满足图联通的情况下花费最小并输出方案. 分析 首先, ...