无法递归的五点半

for_each(day.begin(),day.end(),bind2nd(Add(),me))

导航

<2024年3月>
252627282912
3456789
10111213141516
17181920212223
24252627282930
31123456

统计

常用链接

留言簿(4)

随笔分类

随笔档案

文章分类

相册

收藏夹

C++

Unix/Linux

个人主页

其他

软件工程

网络管理

综合

搜索

积分与排名

最新评论

阅读排行榜

评论排行榜

OpenSSH下SFTP的配置

OpenSSH网站上那只SSH刺河豚将FTP埋葬

有关sftp有人推荐www.ssh.com的实现,不过我更喜欢开源的产品,特别是Open系列的安全产品。

需求

首先我们明确我们的目标,我们是希望通过SFTP代替FTP,需求是这样的:
  1. 这些用户只能通过SFT访问服务器
  2. 用户要锁定在相应的目录下
我想通常的思路是这样的:
  1. 打开OpenSSH的SFTP
  2. 将这些用户设置在一个
  3. 让OpenSSH识别这个组,只允许这些用户使用SFTP
  4. 最后系统要自动的将用户chroot在用户目录下

配置

我开始都觉得是不是要求太高,不过OpenSSH可以解决以上所有问题。话说回来,如果不能解决怎么可以把FTP埋葬呢。

SSHD_CONFIG

sshd通常是打开了sftp的,不过我们应该使用internal-sftp在sshd_conf中作如下配置:
 1 # Subsystem sftp /usr/lib/openssh/sftp-server # 注释掉
 2 Subsystem sftp internal-sftp
 3 
 4 ##
 5 Match group sftponly
 6     ChrootDirectory /sftphome/%u
 7     X11Forwarding no
 8     AllowTcpForwarding no
 9     ForceCommand internal-sftp
10 
解释一下:当sshd匹配到sftponly组中的用户,就会强制使用sftp(ForceCommand的作用),并将用户限定在/sftphome/下相应用户的目录下(ChrootDirectory的作用)。

创建用户

我们需要创建相应的用户了:

#useradd -G sftponly -d /sftphome/sftpuser  -s /usr/sbin/nologin sftpuser
#tail /etc/password

sftpuser:x:
1000:1000::/sftphome/sftpuser:/usr/sbin/nologin
#passwd sftpuser
你可以在其他机器上用sftp登录试试了。你的连接将会被reset!去看看sshd的日志,你会发现pam.d的认证是通过了的,但是chroot失败了。按网络上的说法
#chown root /sftphome/sftpuser
#chmod 
755 /sftphome/sftpuser
再试,可以登录。新的问题是不能在此目录下写入。对的嘛,755对于组用户是不能写啊。再试试775,刚才的问题就来又了,chroot失败。

以上内容网络上一google一大把。

可以登录不能写这个问题真让人困惑!后来我想可能应该这样理解:既然要chroot,那个目录不属于root肯定是不行的(说错了,猛拍砖)。那我们就不能为用户提供完整的sftp服务了吗?我想可以这样
#mkdir /sftphome/sftpuser/space
#chown sftpuser.sftpuser /sftphome/sftpuser/space
由系统管理员为sftp用户提供一个目录,并设置其用户属性,用户在这个目录下用户是可写的。当然可以创建很多个。

这样算不算解决这个问题呢?暂且如此吧。如果您有好方法,一定告知哦。


posted on 2009-12-02 21:04 五点半 阅读(5314) 评论(3)  编辑 收藏 引用 所属分类: 开发环境

评论

# re: OpenSSH下SFTP的配置 2010-09-03 01:50 Holden

chown sftpuser.sftpuser /sftphome/sftpuser/space 应为
chown sftpuser:sftponly /sftphome/sftpuser/space?  回复  更多评论   

# re: OpenSSH下SFTP的配置 2010-09-03 08:54 lambdacpp

@Holden
应该都是可以的。
  回复  更多评论   

# re: OpenSSH下SFTP的配置 2010-09-19 10:34 kangzj

应该没有啥好办法了  回复  更多评论   


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理