ftp 配置ubuntu8.04 的一些问题解决(网上收集)

原创 2012年03月31日 10:16:50
在Redhat AS4里按照默认方式安装好vsftpd后,按照以下步骤配置:
gedit /etc/vsftpd/vsftpd.conf
在文件中限制匿名用户,做如下设置:
anonymous_enable=NO
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd.user_list

这样只有在user_list 里面的用户才可以访问ftp。
但是在service vsftpd restart 后,
用ftp localhost 测试,输入正确的用户名和密码之后,
却一直显示
:530 Login incorrect
Login Failed
后来发现在etc下面有个pam.d文件夹
进去打开vsftpd这个文件, 发现里面对之前的用户进行了限制,
将里面对应的限制注释掉,问题解决。

问:为什么用telnet/ftp登录时特别慢,而登录进去后又正常呢?
答:这是因为telnetd/ftpd是用tcpd来启动的,而tcpd要进行安全性检查,而它使用反向名字解析。
你可以把客户机的IP地址/名字加到/etc/hosts中或加到DNS里。
另一种办法是取消tcpd(不推荐),修改/etc/inetd.conf
将原来的:
ftp  stream  tcp  nowait root  /usr/sbin/tcpd   in.ftpd -l -a
改为:
ftp  stream  tcp  nowait  root  /usr/sbin/in.ftpd  in.ftpd -l -a
原来的:
telnet stream  tcp  nowait  root  /usr/sbin/tcpd    in.telnetd
改为: telnet stream  tcp  nowait  root  /usr/sbin/in.telnetd in.telnetd
改完之后用killall -HUP inetd即可生效。

问:如何禁止某个用户的telnet功能,同时它有ftp功能?
答:假设你想把用户ftponly的telnet关掉,
1)写一个shell script /bin/ftponly:
#!/bin/sh
/bin/cat << XX
You can only use FTP on this computer,
but you may not use this account to login.
Connection will be closed in 10 seconds.
XX
/usr/bin/sleep 10

网管论坛bbs_bitsCN_com

#end of ftponly
这里的XX是个标志,当ftponly试图telnet的时候,屏幕上将显示两个XX之间的内容,
然后10秒以后切断connect。注:还应该用trap来屏蔽键盘中断吧!否则人家用Ctrl-Z......

2)把用户ftponly的shell设置成/bin/ftponly:到passwd文件,找到对应于ftponly的那行:
ftponly:......:/home/ftponly:/bin/bash
把最后的/bin/bash改为/bin/ftponly.

3)把 /bin/ftponly 加入到 /etc/shells
/bin/bash
/bin/tcsh
/bin/csh
/bin/ash
/bin/zsh
/bin/ftponly
就行了。


问:如何允许root用户远程登录?
答:编辑/etc/securetty,加上ttyp2,ttyp3等。
注意,有严重的安全性问题!
最好是用ssh(安全的shell)加su/sudo,而且用xterm的Secure Keyboard来做远程管理。


问:怎么样做到限时登录?
答:自己写三个shell程序,调用at和系统维护功能:
1. 在指定的时间执行该shell,在/etc下生成一名为nologin的文件,如:
vi /sbin/login.denied
echo " Login Denied " > /etc/nologin
chmod 700 login.denied
2. 在指定的时间执行该shell,删除/etc/下的nologin文件,如: 网管bitscn_com
vi /sbin/login.allowed
if [ -f /etc/nologin ]; then
rm /etc/nologin
fi
chmod 700 login.allowed
3. 编写一个限制时间的shell,如:
vi /sbin/security
if [ -f /sbin/login.denied ]; then
at -f /sbin/login.denid 22:00
fi
if [ -f /sbin/login.allowed ]; then
at -f /sbin/login.allowed 8:00
if
此种设置的功能是:从晚上10:00到第二天早上8:00静止非root拥护登录,显示为系统维护状态。
另外,还需对root用户的登路终端进行限制,最好设置在console。在RedHat 5.0下
在 /etc/security/access.conf中配置:
-:root:ALL EXCEPT console就可以了。
注:还要参考/etc/securetty里的设置吧!

发生在:
vsftpd 2.0.6
ubuntu server 8.04 i386
所有操作都直接使用root账户.
安装使用 apt-get install vsftpd
问题1:我使用apt-get remove 和 autoremove 后全新 apt-get install 后发现不能自动生成 /etc/vsftpd.conf,此文件已在我 remove 后手动删除.

于是手动建立配置 /etc/vsftpd.conf :
# Networking
listen=YES
# Account Controls
pam_service_name=/etc/pam.d/vsftpd
anonymous_enable=NO
local_enable=YES
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/users

chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot.users

# Access Controls
check_shell=NO
chmod_enable=NO

# banner
ftpd_banner=Welcome to FTP Service
dirmessage_enable=YES

问题2:
登录 vsftpd 出现如下消息:
USER XXX
331 Please specify the password.
PASS XXX
530 Login incorrect.
配 置中的check_shell没有发挥作用,据vsftpd.org上的信息可知是PAM在检查shell的时候nologin不在 shells表中,在我把nologin加入到shells表中后故障消失(紧接着引发了问题3),但是否会引发其它的安全问题?如何让vsftpd不使 用pam呢?

问题3:
登录 vsftpd 出现如下消息:
USER XXX
331 Please specify the password.
PASS XXX
500 OOPS: could not open chroot() list file:/etc/vsftpd/chroot.users
在我更改配置成:
#chroot_list_file=/etc/vsftpd/chroot.users
后并mv chroot.users /etc/vsftpd.chroot_list
使用默认的文件位置,故障消失!
何解?

网上收集的一些JS代码

1 刷新父页面--open()方式打开的一些父页面 window.opener.location.href = window.opener.location.href...
  • lckj2009
  • lckj2009
  • 2012年05月11日 14:28
  • 288

收集一些网上的资料

收集一些网上的资料,以便参考:http://blog.chinaunix.net/u2/69143/showart_1087349.html     当服务器close一个连接时,若client端接着...
  • dongtianzhe
  • dongtianzhe
  • 2009年06月10日 21:56
  • 191

Ubuntu8.04等旧版本&nbsp;老源更新

部分摘自:http://mblog.sigma.me/2012/12/07/old-release-ubunt-source-list.html ubuntu的普通版本支持的时间都有限,过了支持的时...
  • baidu_33553376
  • baidu_33553376
  • 2016年08月30日 18:01
  • 784

网上收集的php的一些代码

//遍历文件夹及子文件夹//方法一$arr=system("dir /a /b /s c://svn//*.*"); function my_ls($path){  foreach (glob($pa...
  • frycn
  • frycn
  • 2010年06月24日 16:37
  • 233

搜集博科光纤存储交换机的日志

问题:在实际工作中我们需要搜集光纤存储交换机的日志,用以排查网络中的问题。 型号:博科光交BR-6510-48-16G-R、博科光交BR-6505-24-16G-R 工具:Xshell5、Secu...
  • wyhappy612
  • wyhappy612
  • 2018年01月04日 11:11
  • 91

网上收集的一些Java应用

我先说说在JBUILDER中将程序外观变的更酷的办法!JAVA程序默认的外观(LOOKANDFEEL)可以改变为JAVA外观、MOTIF外观、WINDOWS外观、MAC外观;而JAVA外观又有五种风格...
  • yukikaze
  • yukikaze
  • 2004年11月11日 15:26
  • 1366

svm的一些理解(网上收集)

机器学习(Machine Learning, ML)的目的是根据给定的训练样本求对某系统输入输出之间依赖关系的估计,使它(这种关系)能够对未知输出做出尽可能准确地预测。机器学习至今没有一个精确的公认的...
  • u013747358
  • u013747358
  • 2014年05月05日 10:20
  • 469

网上收集的一些树状数组文章

http://www.cnblogs.com/zhangshu/category/300236.html http://blog.csdn.net/int64ago/article/details/...
  • SimonCoder
  • SimonCoder
  • 2014年07月26日 10:18
  • 465

网上收集来的一些代码

1. CDONTS.NewMail 组件使用说明Set MailObject = Server.CreateObject("CDONTS.NewMail")MailObject.From = "发信邮...
  • zhengyan775
  • zhengyan775
  • 2007年10月21日 00:27
  • 334

QTP网上收集的一些小技巧

51testing 针对新人做的一个专题:http://www.51testing.com/zhuanti/newtestor.html 2012-04-04 1:在测试脚本运行期间,要停止脚本的...
  • lijingprince9
  • lijingprince9
  • 2012年10月29日 14:41
  • 1471
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ftp 配置ubuntu8.04 的一些问题解决(网上收集)
举报原因:
原因补充:

(最多只允许输入30个字)