SFTP秘钥的方式登录与LFTP

1.秘钥文件方式登录

sftp -oIdentityFile=/opt/sftpkey/veedoo -oPort=2222 veedoo@IP

秘钥文件放在/opt/sftpkey/下,文件名称是veedoo

密钥文件在 linux上  ,要将权限改为400 方可使用
chmod 400 veedoo

这样就可以直接登录了

2.账号密码方式登录

sftp -oPort=2222 veedoo@IP 之后数据密码就可以登录了

3.FTP使用的时候有时会用LFTP命令作为登录方式

安装好LFTP之后

lftp user@IP:port 之后再输入密码就可以了,有的时候会无法输入命令

set ssl:verify-certificate no 执行一下这个命令,之后就可以输入命令了

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Java 中使用 SFTP 秘钥登录时,可以使用 JSch 库来完成。JSch 是一个纯 Java 实现的 SSH2 客户端,可以通过它来连接远程服务器并执行相应的操作。 对于使用秘钥登录时,需要提供私钥和远程服务器的公钥。远程服务器的公钥一般是以 OpenSSH 格式存储的,可以使用以下方式来解析: 1. 打开公钥文件,读取其中的内容: ```java String publicKey = ""; try(BufferedReader br = new BufferedReader(new FileReader("path/to/public/key"))) { String line; while ((line = br.readLine()) != null) { publicKey += line + "\n"; } } ``` 2. 创建一个 `JSch` 对象,并使用 `JSch.addIdentity()` 方法加载私钥: ```java JSch jsch = new JSch(); jsch.addIdentity("path/to/private/key"); ``` 3. 将远程服务器的公钥添加到 `JSch` 的 `known_hosts` 文件中: ```java JSch.setConfig("StrictHostKeyChecking", "no"); JSch.setKnownHosts("path/to/known_hosts"); ``` 在这里,我们将 `StrictHostKeyChecking` 设置为 `no`,表示不对主机的公钥进行验证(不建议在生产环境中使用)。也可以将 `known_hosts` 文件中的内容读取出来,和远程服务器的公钥进行比较,从而实现公钥的验证。 4. 使用 `Session.connect()` 方法连接远程服务器: ```java Session session = jsch.getSession("username", "remote-host", 22); session.connect(); ``` 在这里,需要提供远程服务器的用户名和地址以及 SSH 端口号。 5. 连接成功后,可以使用 `ChannelSftp` 对象进行 SFTP 操作: ```java ChannelSftp sftpChannel = (ChannelSftp) session.openChannel("sftp"); sftpChannel.connect(); ``` 在这里,我们将 `Channel` 类型设置为 `sftp`,表示要进行 SFTP 操作。 以上就是在 Java 中使用 SFTP 秘钥登录时解析 OpenSSH 格式公钥的方法。需要注意的是,在实际开发中还需要考虑到安全性和异常情况的处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值