
那么问题来了,如果我们生产环境需要用到sFTP,密码如何保存呢?答案就是不用密码,把key种到对方服务器,建立互信关系。这个procedure同样适用于ssh帐号。
(生成private key 和public key。private key存在本地,public key 种在远程帐号。于是加密连接就靠这对key了。)
SFTP是SSH File Transfer Protocol的缩写,安全文件传送协议。SFTP与FTP有着几乎一样的语法和功能。SFTP为SSH的其中一部分,是一种传输档案至 Blogger 伺服器的安全方式。其实在SSH软件包中,已经包含了一个叫作SFTP的安全文件信息传输子系统,SFTP本身没有单独的守护进程,它必须使用sshd守护进程(端口号默认是22)来完成相应的连接和答复 *** 作,所以从某种意义上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。
SFTP与FTP差别
只使用SFTP传输文件,不能使用ssh登录系统
创建sftp用户组
创建sftp用户
将ChrootDirectory目录设置为/home(所有权必须为root),然后 ForceCommand 使用-d 选项将用户的主目录指定为起始目录
当前/home目录
编辑/etc/ssh/sshd_config文件
使用SFTP客户端,上传文件
查看用户home目录
嵌套主目录
创建目录并设置权限
查看当前的目录结构
修改/etc/ssh/sshd_config文件
使用SFTP客户端上传文件
查看上传的文件位置
验证
从101001机器登录
101001机器能看到所有的目录
从其他主机登录
其他主机只能看到限定的目录
属于sftp-only用户组,但是不限制ssh及sftp
创建用户
修改配置
验证
ssh登录验证
修改sshd配置
修改 /etc/rsyslogconf,在最后添加
SFTP 命令
目录开始一直往上到系统根目录为止的目录拥有者都只能是 root,用户组可以不是 root。目录开始一直往上到系统根目录为止都不可以具有群组写入权限
上面2点一定注意,仔细检查。我就是因为这个问题,导致一直有这个问题。仔细检查配置后,解决问题。
原因:
sftp服务没有启动,进程太多,linux系统资源分配如果超过承受范围,就会限制使用。
提示错误:
subsystem request failed on channel 0
Couldn't read packet: Connection reset by peer
解决办法:
/etc/ssh/sshd_config的文件中已经添加如下行:
Subsystem sftp /usr/lib/openssh/sftp-server
扩展资料:
sftp常用命令
1、登录
#密码登录sftp -P 22 zhangsan@1921680100#密钥登录sftp -P 22 -i ~/ssh/id_rsa zhangsan@1921680100
2、更改远程工作目录
cd /abc
3、更改和/或打印本地工作目录
lcd /abc
4、列出远程目录的内容
ls
FTP出现“数据 Socket 错误: 连接被拒”解决办法 通过FTP连接网站时出现“数据 Socket 错误: 连接被拒 列表错误”,如下图:( `: f) Q, L, U: `" g; L3 C( p' N DDgif (565 KB) 2007-8-27 02:52# |, n8 l" S4 }2 h3 V 出现这个错误的原因一般如下: E% M6 j# Y8 [1, 关闭被动模式;( {, H; o1 z" Q R/ ]7 ~9 n 2, 传输类型:二进制; 1 l5 C, \ Y( D+ G: a >欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)