Linux 下ssh sftp配置之密钥方式登录详解
2018-03-31 11:54
676 查看
由于vsftp采用明文传输,用户名密码可通过抓包得到,为了安全性,需使用sftp,锁定目录且不允许sftp用户登到服务器。由于sftp使用的是ssh协议,需保证用户只能使用sftp,不能ssh到机器进行操作,且使用密钥登陆、不是22端口。
先看下原理图:
1. 在远程目标创建sftp服务用户组,创建sftp服务根目录
#此目录及上级目录的所有者必须为root,权限不高于755,此目录的组最好设定为sftp
2. 修改sshd配置文件
注释掉/etc/ssh/sshd_config文件中的此行代码:
添加如下代码:
凡是在用户组sftp里的用户,都可以使用sftp服务;使用sftp服务连接上之后,可访问目录为/data/sftp/username
举个例子:
test是一个sftp组的用户,它通过sftp连接服务器上之后,只能看到/data/sftp/test目录下的内容
test2也是一个sftp组的用户,它通过sftp连接服务器之后,只能看到/data/sftp/test2目录下的内容3. 创建sftp用户
#此例将创建一个名称为test的sftp帐号
#创建test sftp家目录:test目录的所有者必须是root,组最好设定为sftp,权限不高于755
在本地创建test用户密钥对(用来连接远程服务器的):
另外我们要注意,.ssh目录的权限为700,其下文件authorized_keys和私钥的权限为600。否则会因为权限问题导致无法免密码登录。我们可以看到登陆后会有known_hosts文件生成。
在目标远程服务器test目录下创建一个可以写的upload目录
注:sftp服务的根目录的所有者必须是root,权限不能超过755(上级目录也必须遵循此规则),sftp的用户目录所有者也必须是root,且最高权限不能超过755。
4. 测试sftp
test用户密钥登陆:
另外,将公钥拷贝到服务器的~/.ssh/authorized_keys文件中方法有如下几种:
1、将公钥通过scp拷贝到服务器上,然后追加到~/.ssh/authorized_keys文件中,这种方式比较麻烦。scp -P 22 ~/.ssh/id_rsa.pub user@host:~/。
2、通过ssh-copy-id程序,就是我演示的方法,ssh-copyid user@host即可
3、可以通过cat ~/.ssh/id_rsa.pub | ssh -p 22 user@host ‘cat >> ~/.ssh/authorized_keys’,这个也是比较常用的方法,因为可以更改端口号。
先看下原理图:
1. 在远程目标创建sftp服务用户组,创建sftp服务根目录
举个例子:
test是一个sftp组的用户,它通过sftp连接服务器上之后,只能看到/data/sftp/test目录下的内容
test2也是一个sftp组的用户,它通过sftp连接服务器之后,只能看到/data/sftp/test2目录下的内容3. 创建sftp用户
#此例将创建一个名称为test的sftp帐号
#创建test sftp家目录:test目录的所有者必须是root,组最好设定为sftp,权限不高于755
在目标远程服务器test目录下创建一个可以写的upload目录
4. 测试sftp
1、将公钥通过scp拷贝到服务器上,然后追加到~/.ssh/authorized_keys文件中,这种方式比较麻烦。scp -P 22 ~/.ssh/id_rsa.pub user@host:~/。
2、通过ssh-copy-id程序,就是我演示的方法,ssh-copyid user@host即可
3、可以通过cat ~/.ssh/id_rsa.pub | ssh -p 22 user@host ‘cat >> ~/.ssh/authorized_keys’,这个也是比较常用的方法,因为可以更改端口号。
相关文章推荐
- Linux 下sftp配置之密钥方式登录详解
- 阿里云ECS Linux通过Xshell 配置密钥key免密码登录
- Linux 内核配置方式详解
- 【环境配置】Linux环境下下载、配置java环境、安装eclipse、建立eclipse快捷方式详解
- mii-tool命令_Linux mii-tool 命令用法详解:配置网络设备协商方式的工具
- Linux 内核配置方式详解
- linux网络NAT配置方式详解
- Linux配置SSH端口以及密钥登录
- Linux下安装PHP,源代码方式安装配置参数详解
- Linux学习-02-远程连接SSH工具及密钥登录配置
- LINUX 环境下源码方式安装mysql(二)my.cnf配置细节详解
- 使用密钥验证方式登录linux系统
- ECS Linux通过Xshell 配置密钥key免密码登录
- 腾讯云配置密钥使用putty登录 PuTTY实现Windows向Linux上传文件
- Linux系统中网络配置详解
- LINUX用户和用户组配置文件详解
- CentOS3 Linux 服务器环境配置优化详解
- linux下VNC配置详解
- 详解LINUX下的重要服务之DNS配置
- Linux下配置Gnome的文件打开方式 & 开始菜单管理