手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网站运营>建站经验>列表

OpenBSD自带ftpd程式搭建ftp服务器

来源:互联网 作者:west263.com 时间:2008-04-16
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!


或在未将他们加入到/etc/shells的情况下,在使用adduser添加帐户时加上"-shell"参数:
# adduser -shell /sbin/nologin
Enter username []: ftp
Enter full name []: anonymous ftpd user
Enter shell bash csh ksh nologin sh [/sbin/nologin]:
......

这里在询问该用户使用何种shell时就出现了/sbin/nologin 。假如不带这个参
数,将无法使用他:
# adduser
Enter username []: ftp
Enter full name []: anonymous ftpd user
Enter shell bash csh ksh nologin sh [bash]: /sbin/nologin
/sbin/nologin: is not allowed!
Enter shell bash csh ksh nologin sh [bash]:

这里就提示了不允许使用/sbin/nologin 做为shell使用。

添加帐户

这里使用"adduser -s shell /sbin/nologin"来添加一个这样的'ftp'帐户做为示例,并将该用户的$HOME目录配置为"/var/ftp":

# adduser -shell /sbin/nologin -home /var
Use option \-silent" if you don't want to see all warnings and questions.
Reading /etc/shells
Check /etc/master.passwd
Check /etc/group
Ok, let's go.
Don't worry about mistakes. I will give you the chance later to correct any input.
Enter username []: ftp
Enter full name []: anonymous ftpd user
Enter shell bash csh ksh nologin sh [/sbin/nologin]:ENTER
Uid [1001]:ENTER
Login group ftp [ftp]:ENTER
Login group is \ftp". Invite ftp into other groups: guest no
no
: ENTER
Login class daemon default sta. [default]:ENTER
Enter password []: ENTER # 在此直接按ENTER键。

这样就能够配置一个不可用的密码。

Set the password so that user cannot logon? (y/n) [n]: y
Name: ftp
Password: ****
Fullname: anonymous ftpd user
Uid: 1001
Gid: 1001 (ftp)
Groups: ftp
Login Class: default
HOME: /var/ftp
Shell:
OK? (y/n) [y]: y
Added user \ftp"
Copy ˉles from /etc/skel to /var/ftp
Add another user? (y/n) [y]: n
Goodbye!
#

到这里,添加用户的工作就完成了。还需要把系统从'/etc/skel' 复制到$HOME目录的一些"dot ˉles"给删除,以免暴露信息。'dot ˉles'的第一行通常会有一些系统的信息,比如' /.cshrc'文档中就有这么一句:
# $OpenBSD: dot.cshrc,v 1.5 2005/02/16 06:56:57 matthieu Exp $

这至少就告诉了匿名登录的用户,这是个OpenBSD系统。所以建议把他们删除:
# rm -f /var/ftp/.*
为FTP目录配置正确的权限

1、'ftp'目录
"ftp"目录表示"ftp"用户的主目录,在本例中就是"/var/ftp"目录。将他的owner配置为"root",权限配置为任何人都不可写(555):

# chown -R root:wheel /var/ftp
# chmod -R 555 /var/ftp

2、'ftp/bin'目录
这个目录并不是必须的。假如希望匿名用户登录到FTP后能够执行一些command,就能够将command 复制到这个目录下。任何的command的权限都应该配置为只允许执行(111)。
# mkdir /var/ftp/bin
# chown -R root:ftp /var/ftp/bin
# chmod -R 111 /var/ftp/bin/*

3、'ftp/etc'目录
和"ftp/bin"目录相同,这也是个可选的,并不推荐创建他。(更多关于该目录配置的信息请查看"ftpd" 的man文档)。
4、'ftp/pub"目录
这个目录用来存放您希望被匿名用户访问的文档。权限应该配置为555。
# chown -R root:ftp /var/ftp/pub
# chmod -R 555 /var/ftp/pub

这里虽然提到了创建三个目录,但是实际上我们只需要创建' ftp/pub'目录并配置好权限就能够了。
chroot匿名登录的用户

'ftpd'会将'/etc/ftpchroot'文档中列出的用户都chroot。要使'ftp'用户在登录ftp后被chroot,只需要简单地把用户名添加到这个文档中就能够了。这是个示例文档:

# file: /etc/ftpchroot
# $OpenBSD: ftpchroot,v 1.3 1996/07/18 12:12:47 deraadt Exp $
##
list of users (one per line) given ftp access to a chrooted area.
# read by ftpd(8).
ftp
bibby

'ftpd'在启动时会读取这个文档,假如'ftp'和'bibby'这两个用户登录ftp,将被分
别chroot到自己的$HOME目录下。
其他一些相关文档

· /etc/ftpusers { 列出了任何不受欢迎的用户。列在该文档中的用户都无法
登录ftp服务器。
· /etc/ftpwelcome { 欢迎信息。登录的用户都将在登录时看到这一信息。
· /etc/motd { 假如'/etc/ftpwelcome'文档不存在,则使用'/etc/motd'文档的内容做为欢迎信息。
2 .message { 这个文档能够被放置在' ftp'目录下的任何一个子目录中。用户进入该目录时就会显示这个文档中的内容。


文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

热点关注
IDC资讯 虚拟主机 域名注册 托管租用 vps主机 智能建站
网站运营 建站经验 策划盈利 搜索优化 网站推广 免费资源
网站联盟 联盟新闻 联盟介绍 联盟点评 网赚技巧
行业资讯 业界动态 搜索引擎 网络游戏 门户动态 电子商务 广告传媒
网络编程 Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术 Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷 Internet Explorer
网页制作 FrontPages Dreamweaver Javascript css photoshop fireworks Flash
程序设计 Java技术 C/C++ VB delphi
网络知识 网络协议 网络安全 网络管理 组网方案 Cisco技术
操作系统 Win2000 WinXP Win2003 Mac OS Linux FreeBSD
返回首页 |关于我们 | 联系我们 | 付款方式 | 创业联盟 | 价格总览 | 资讯中心 | 友情链接 | 网站地图 | 招贤纳士 | RSS