教学之友,学习之友。

站长教学网

当前位置: 站长教学网 > 服务器 > FTP服务器 >

Pure-ftpd如何通过SSH进行连接

时间:2012-03-22 23:29来源:未知 作者:ken 点击:

Pureftpd是一款快速,高质量,功能齐全的ftp服务器,最重要的是可以支持设置客户端默认编码,Pureftpd非常强大非常好用,但是要加密所有的连接数据,我们就要用到SSH来运行Pure-FTP

 

Q:怎么通过SSH运行Pure-FTP?我想加密所有的连接数据(包括密码)

A:通过SSH运行FTP比通过SSL运行FTP要好(后者在安全的防火墙内无法使用),也比SFTP好(较慢,但只使用一个端口)

使用Windows的客户可以使用Van Dyke's SecureFX客户端--一个极好的客户端--来 通过SSH访问FTP.这不需要任何特殊的知识:只要在为FTP服务器建立账户时,告诉客 户去在"协议"列表框内检查"FTP-over-SSH2".

至于服务器一边,下面是如何管理通过SSH进行FTP的账户

1)在/etc.shell文件中添加/usr/bin/false (在某些系统内,可能是/bin/false)

2)要建立通过SSH进行FTP的账户,建立一个以/dev/null为主目录、/usr/bin/false 为shell的系统账户。不需要专用的UID:每个通过SSH进行FTP的账户都可以重复使 用相同的uid

3)为用户创建虚拟用户(使用PureDB,SQL或者LDAP)。给虚拟用户一个真实的主 目录,只允许从127.0.0.1来的连接(所有的通过SSH进行FTP的会话都来自本地主机,这是由于SSH管道的原因)

没有主目录(/dev/null),没有有效shell的用户无法得到shell,不能在服务器上运行任何命令。但他们可以有通过SSH进行FTP的会话。

下面是一些例子(Linux/OpenBSD/ISOS命令,如有必要,可以改变)

1)创建一个常规的FTP账户:

 

  1. pure-pw useradd customer1 -m -d /home/customer1 -u ftpuser  

 

2)建立一个通过SSH进行FTP的账户(拒绝非加密的会话)

 

  1. useradd -u ftpuser -g ftpgroup -d /dev/null -s /usr/bin/false customer2  
  2.  
  3. pure-pw useradd customer2 -m -d /home/customer2 -u ftpuser -r 127.0.0.1/32  
  4.  

 

3)建立一个账户.该账户在内网(192.168.1.x)可以使用常规的(非加密的)FTP,但在 外网(internet)必须使用SSH连接FTP.

 

  1. useradd -u ftpuser -g ftpgroup -d /dev/null -s /usr/bin/false customer3  
  2.  
  3. pure-pw useradd customer3 -m -d /home/customer3 -u ftpuser \  
  4.  
  5. -r 127.0.0.1/32,192.168.1.0/24  

 

通过分析和阅读全文,我们怎么处理加密所有的连接数据,怎么通过SSH运行Pure-FTP!希望本文对大家有所帮助!

(责任编辑:ken)
TAG标签: linux ssh pureftpd
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
注册登录:不允许匿名留言,登录后留言无需输入验证码。
栏目列表
最新内容