Ⅰ 如何在Debian里用Pure-FTPd里创建一个匿名FTP
一、安装:
apt-get install pure-ftp-common pure-ftpd
二、配置:
Pure-FTPd的配置比较怪异,它的配置不像其他FTP通过一个配置文件来实现,而是通过命令行+参数来启动,据开发这是为了更好的性能和安全性,我实在想不通这能起到多大的作用,相反觉得增加了用户的使用难度。Debian的开发人员为了降低难度,采用一种变通的配置方式,在/etc下建立一个pure-ftpd的目录,底下还有conf、db、auth这三个目录和一个pureftpd-alias-dir文件。
每一个配置选项将以一个文件的形式存在于/etc/pure-ftpd/conf之中,例如如果想配置AnonymousOnly=yes(只允许匿名用户),则在/etc/pure-ftpd/conf中创建一个名为AnonymousOnly的文件,里面只有一行内容:yes。
cat /etc/pure-ftpd/conf/AnonymousOnly
yes
了解了基本的配置规则后下面开始配置我们的匿名FTP服务器,因为是匿名的,所以安全性就需要考虑得多一些。
1、创建ftp帐号和组
groupadd ftp
useradd -s /bin/false -m -c Anonymous ftp -d /home/ftp ftp ftp
2、限制匿名用户权限
cd /etc/pure-ftpd/conf
echo yes > AnonymousOnly
echo no > NoAnonymous
# 只允许匿名用户
echo no > AnonymousCanCreateDirs
# 不允许匿名用户创建目录
echo yes > AnonymousCantUpload
# 不允许匿名用户上传
echo no > AllowAnonymousFXP
# 不允许匿名FXP
echo yes > ChrootEveryone
# 将匿名用户限定到ftp的家目录,也就是/home/ftp,这样可以提高安全性
3、绑定IP地址和端口
Pure-FTPd默认下会监听所有的网卡地址,默认的端口是21
我们只需要让它监听本机的eth0就OK了,eth0连接的是企业的内网段,假设为192.168.100.1/24
echo yes > IPV4Only
echo 192.168.100.1,21 > Bind
4、限速
匿名FTP意味着什么人都可以登陆我们的FTP,那就不能提供太高的下载速率,否则容易引起性能问题,甚至DDOS。
echo 2000 > AnonymousBandwidth
# 只允许所有匿名用户使用2000 KB/s的带宽
5、限用户进程
同时一个IP只允许开启两个登陆进程
echo 2 > MaxClientsPerIP
6、配置匿名FTP的文件夹
将共享文件夹拷贝到/home/ftp,例如software
cp -r software /home/ftp
chown -R ftp:ftp /home/ftp/software
chmod -R 550 /home/ftp/software
这里需要将权限设为550,如果设为只读的话用户无法进入software这个目录中。
7、重启服务器
/etc/init.d/pure-ftpd restart
大功告成,一个简单、高效的匿名FTP服务器就这样安装成功了。下一篇将讲如何将Pure-FTPd和LDAP进行整合。
Ⅱ 如何在linux下开启FTP服务
Linux下ftp服务可以通过搭建vsftpd服务来实现,以CentOS为例,首先查看系统中是否安装了vsftpd,可以通过执行命令rpm -qa |grepvsftpd来查看是否安装相应的包,如果没有安装那么可以执行yum-yinstallvsftpd来安装,安装之后首先创建ftp用户,比如ftp_test,命令如下:
useradd-s/sbin/nologin-d/home/ftp_testftp_test
目录尽量不要选择根目录下,这里是/home/ftp_test,并且ftp_test这个目录不要手动创建,否则权限会有问题,执行命令的时候会自动创建,
现在可以看到上面的路径是一个/,对于ftp用户来说也就是根目录了,只能在这个目录下操作,而无法跳出这个目录
以上就是vsftpd服务的基本搭建过程,实际使用时可以分配多个用户
Ⅲ linux主机ftp服务开启方法
1、连接上相应的linux主机,进入到等待输入shell指令的linux命令行状态下。
Ⅳ debian下ftp的访问
gnome用nautilus上, kde用Konqueror
还可以用lftp
Ⅳ 如何开启ftp服务
如何在linux下开启FTP服务
1. 首先服务器要安装ftp软件,查看是否已经安装ftp软件下:
#which vsftpd
如果看到有vsftpd的目录说明服务器已经安装了ftp软件
2. 查看ftp 服务器状态
#service vsftpd status
3. 启动ftp服务器
#service vsftpd start
4. 重启ftp服务器
#service vsftpd restart
5. 查看服务有没有启动
#netstat -an | grep 21
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN
如果看到以上信息,证明ftp服务已经开启。
6.如果需要开启root用户的ftp权限要修改以下两个文件
#vi /etc/vsftpd.ftpusers中注释掉root
#vi /etc/vsftpd.user_list中也注释掉root
然后重新启动ftp服务。
7. vsftpd 500 OOPS: cannot change directory
登陆报错:
C:\>ftp 192.168.0.101
Connected to 192.168.0.101.
220 (vsFTPd 2.0.5)
User (192.168.0.101:(none)): frank
331 Please specify the password.
Password:
500 OOPS: cannot change directory:/home/frank
Login failed.
ftp> ls
500 OOPS: child died
Connection closed by remote host.
解决方法:
setsebool ftpd_disable_trans 1
service vsftpd restart
就OK了!
这是SELinux的设置命令,在不熟悉SELnux前,把SELinux关掉也可以的。
8. 永久开启,即os重启后自动开启ftp服务
方法一:
cd /etc/xinetd.d ,编辑ftp服务的配置文件gssftp的设置:
vi /etc/xinetd.d/gssftp ,将 修改两项内容:
(a) server_args = -l –a 去掉-a 改为server_args = -l
(b) disable=yes改为disable=no
(c) 保存退出。
方法二:
(a) system-config-services , 进入图形界面的System services查看是否有 vsftpd项,如果没有转到2.,保存后退出
(b) 用redhat第三张盘 安装此服务(开始--删除/增加程序),200K左右
(c) #setup
此时能看到vsftpd项,此时选中此services项,保存后退出.
Ⅵ 谁在Debian linux 系统上配置过vsftpd 作为FTP服务器
一、配置防火墙,开启21端口、9000到9045端口
说明:debian默认安装是没有开启任何防火墙的,为了服务器的安全,建议大家安装启用防火墙设置,
这里推荐使用iptables防火墙。
whereis iptables #查看系统是否安装防火墙
iptables: /sbin/iptables /usr/share/iptables /usr/share/man/man8/iptables.8.gz #表示已经安装iptables
apt-get install iptables #如果默认没有安装,请运行此命令安装防火墙
iptables -L #查看防火墙配置信息,显示如下:
#####################################################
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
#####################################################
nano /etc/iptables.default.rules #添加以下内容
##################################################################################################
*filter
# Allows all loopback (lo0) traffic and drop all traffic to 127/8 that doesn't use lo0
-A INPUT -i lo -j ACCEPT
# Accepts all established inbound connections
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Allows all outbound traffic
# You could modify this to only allow certain traffic
-A OUTPUT -j ACCEPT
# Allows HTTP and MySQL and FTP connections from anywhere (the normal ports for websites)
-A INPUT -p tcp --dport 80 -j ACCEPT
-A INPUT -p tcp --dport 3306 -j ACCEPT
-A INPUT -p tcp --dport 21 -j ACCEPT
-A INPUT -p tcp --dport 9000:9045 -j ACCEPT
# Allows SSH connections for script kiddies
# THE -dport NUMBER IS THE SAME ONE YOU SET UP IN THE SSHD_CONFIG FILE
-A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT
# Now you should read up on iptables rules and consider whether ssh access
# for everyone is really desired. Most likely you will only allow access from certain IPs.
# Allow ping
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
# log iptables denied calls (access via 'dmesg' command)
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7
# Reject all other inbound - default deny unless explicitly allowed policy:
-A INPUT -j REJECT
-A FORWARD -j REJECT
COMMIT
##################################################################################################
系统运维 温馨提醒:qihang01原创内容版权所有,转载请注明出处及原文链接
ctrl+o #保存
ctrl+x #退出
备注:21是指FTP默认端口、80是指web服务器端口、3306是指MySQL数据库链接端口、
22是指SSH远程管理端口、9000到9045是FTP被动模式端口范围
iptables-restore < /etc/iptables.default.rules #使防火墙规则生效
nano /etc/network/if-pre-up.d/iptables #创建文件,添加以下内容,使防火墙开机启动
##########################################################
#!/bin/bash
/sbin/iptables-restore </etc/iptables.default.rules
##########################################################
chmod +x /etc/network/if-pre-up.d/iptables #添加执行权限
二、安装Vsftpd服务器
apt-get install vsftpd #根据提示,输入y安装完成
三、配置Vsftpd服务器
cp /etc/vsftpd.conf /etc/vsftpd.confbak #备份原有配置文件
nano /etc/vsftpd.conf#编辑
use_localtime=YES#ftp时间和系统同步
listen_port=21 #默认无此行,ftp端口为21,添加listen_port=21把默认端口修改为21,注意:防火墙同时要开启21端口
anonymous_enable=NO #禁止匿名用户
local_enable=YES #设定本地用户可以访问。注意:主要是为虚拟宿主用户,如果该项目设定为NO那么所有虚拟用户将无法访问
write_enable=YES #全局设置,是否容许写入(无论是匿名用户还是本地用户,若要启用上传权限的话,就要开启)
local_umask=022 #设定上传后文件的权限掩码。
anon_upload_enable=NO #禁止匿名用户上传。
anon_mkdir_write_enable=NO #禁止匿名用户建立目录。
dirmessage_enable=YES #设定开启目录标语功能。
xferlog_enable=YES #设定开启日志记录功能。
connect_from_port_20=YES #设定端口20进行数据连接。
chown_uploads=NO #设定禁止上传文件更改宿主。
xferlog_file=/var/log/vsftpd.log #日志保存路径(先创建好文件)
xferlog_std_format=YES #使用标准格式
async_abor_enable=YES #设定支持异步传输功能。
ascii_upload_enable=YES #设定支持ASCII模式的上传功能。
ascii_download_enable=YES #设定支持ASCII模式的下载功能。
ftpd_banner=Welcome to osyunwei.com FTP servers #设定Vsftpd的登陆标语。
chroot_local_user=YES #禁止本地用户登出自己的FTP主目录。
pam_service_name=vsftpd #设定PAM服务下Vsftpd的验证配置文件名。因此,PAM验证将参考/etc/pam.d/下的vsftpd文件配置。
userlist_enable=NO #设为YES的时候,如果一个用户名是在userlist_file参数指定的文件中,那么在要求他们输入密码之前,会直接拒绝他们登陆,这里设置为NO
tcp_wrappers=YES #是否支持tcp_wrappers
idle_session_timeout=300 #超时设置
data_connection_timeout=1 #空闲1秒后服务器断开
#########################################################
以下这些是关于Vsftpd虚拟用户支持的重要配置项目。
默认Vsftpd.conf中不包含这些设定项目,需要自己手动添加配置
#########################################################
guest_enable=YES #设定启用虚拟用户功能。
guest_username=vsftpd #指定虚拟用户的宿主用户(这个是我们后面要新建的用户)
user_config_dir=/etc/vsftpd/vconf #设定虚拟用户个人Vsftp的配置文件存放路径。也就是说,这个被指定的目录里,将存放每个Vsftp虚拟用户个性的配置文件,一个需要注意的地方就是这些配置文件名必须和虚拟用户名相同
virtual_use_local_privs=YES #当该参数激活(YES)时,虚拟用户使用与本地用户相同的权限,当此参数关闭(NO)时,虚拟用户使用与匿名用户相同的权限。默认情况下此参数是关闭的(NO)。
pasv_min_port=9000 #设置被动模式的端口范围
pasv_max_port=9045 #设置被动模式的端口范围
accept_timeout=5 #保持5秒
connect_timeout=1 #1秒后重新连接
ctrl+o #保存配置
ctrl+x #退出
四、建立虚拟用户名单文件
mkdir /etc/vsftpd #创建目录
nano /etc/vsftpd/virtusers.txt #建立虚拟用户名单文件(第一行账号,第二行密码)
bbs
123456
sns
123456
blog
123456
ctrl+o #保存配置
ctrl+x #退出
五、生成虚拟用户数据文件
apt-get install db4.8-util #安装db4数据库,注意:Debian 5.x需要用命令apt-get install db3-util
db4.8_load -T -t hash -f /etc/vsftpd/virtusers.txt /etc/vsftpd/virtusers.db #生成数据库文件
chmod 600 /etc/vsftpd/virtusers.db #设定PAM验证文件,并指定对虚拟用户数据库文件进行读取
cp /etc/pam.d/vsftpd /etc/pam.d/vsftpdbak #备份原有配置文件
nano /etc/pam.d/vsftpd #编辑配置文件,在头部加入以下信息(在后面加入无效),并注释最后四行
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/virtusers
account required /lib/security/pam_userdb.so db=/etc/vsftpd/virtusers
#@include common-account
#@include common-session
#@include common-auth
#auth required pam_shells.so
ctrl+o #保存配置
ctrl+x #退出
注意:如果系统为64为,则上面的lib改为lib64,否则配置失败
系统运维 温馨提醒:qihang01原创内容版权所有,转载请注明出处及原文链接
六、新建一个系统用户vsftpd,用户家目录为/home/www.osyunwei.com, 用户登录终端设为/bin/false(即使之不能登录系统)
useradd vsftpd -d /home/www.osyunwei.com -s /bin/false #创建用户vsftpd
chown vsftpd:vsftpd /home/www.osyunwei.com -R #设置用户家目录
七、建立虚拟用户个人Vsftp的配置文件
mkdir /etc/vsftpd/vconf #创建目录
cd /etc/vsftpd/vconf #进入目录
touch bbs sns blog #这里创建三个虚拟用户配置文件(用户名不能为root,系统保留)
nano bbs #编辑用户bbs配置文件
local_root=/home/www.osyunwei.com/bbs
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
ctrl+o #保存配置
ctrl+x #退出
nano sns #编辑用户sns配置文件
local_root=/home/www.osyunwei.com/sns
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
ctrl+o #保存配置
ctrl+x #退出
nano blog #编辑用户blog配置文件
local_root=/home/www.osyunwei.com/blog
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
ctrl+o #保存配置
ctrl+x #退出
八、重启vsftpd服务器
apt-get install chkconfig #安装chkconfig
chkconfig vsftpd on #开机启动vsftpd
/etc/init.d/vsftpd restart #重启
/etc/init.d/vsftpd stop #停止
/etc/init.d/vsftpd start #启动
测试篇
在Windows客户端cmd命令行下输入
ftp
open 192.168.21.139
bbs
123456 #密码
ls #列出FTP服务器目录
Ⅶ Debian怎样安装并配置vsftpd服务器
vsftpd的配置在RedHatLinux9.0里的vsftpd共有3个配置文件,它们分别是:vsftpd.ftpusers:位于/etc目录下。它指定了哪些用户账户不能访问FTP服务器,例如root等。vsftpd.user_list:位于/etc目录下。该文件里的用户账户在默认情况下也不能访问FTP服务器,仅当vsftpd.conf配置文件里启用userlist_enable=NO选项时才允许访问。vsftpd.conf:位于/etc/vsftpd目录下。它是一个文本文件,我们可以用Kate、Vi等文本编辑工具对它进行修改,以此来自定义用户登录控制、用户权限控制、超时设置、服务器功能选项、服务器性能选项、服务器响应消息等FTP服务器的配置。(1)用户登录控制anonymous_enable=YES,允许匿名用户登录。no_anon_password=YES,匿名用户登录时不需要输入密码。local_enable=YES,允许本地用户登录。deny_email_enable=YES,可以创建一个文件保存某些匿名电子邮件的黑名单,以防止这些人使用Dos攻击。banned_email_file=/etc/vsftpd.banned_emails,当启用deny_email_enable功能时,所需的电子邮件黑名单保存路径(默认为/etc/vsftpd.banned_emails)。(2)用户权限控制write_enable=YES,开启全局上传权限。local_umask=022,本地用户的上传文件的umask设为022(系统默认是077,一般都可以改为022)。anon_upload_enable=YES,允许匿名用户具有上传权限,很明显,必须启用write_enable=YES,才可以使用此项。同时我们还必须建立一个允许ftp用户可以读写的目录(前面说过,ftp是匿名用户的映射用户账号)。anon_mkdir_write_enable=YES,允许匿名用户有创建目录的权利。chown_uploads=YES,启用此项,匿名上传文件的属主用户将改为别的用户账户,注意,这里建议不要指定root账号为匿名上传文件的属主用户!chown_username=whoever,当启用chown_uploads=YES时,所指定的属主用户账号,此处的whoever自然要用合适的用户账号来代替。chroot_list_enable=YES,可以用一个列表限定哪些本地用户只能在自己目录下活动,如果chroot_local_user=YES,那么这个列表里指定的用户是不受限制的。不要选中chroot_list_file=/etc/vsftpd.chroot_list,如果chroot_local_user=YES,则指定该列表(chroot_local_user)的保存路径(默认是/etc/vsftpd.chroot_list)。nopriv_user=ftpsecure,指定一个安全用户账号,让FTP服务器用作完全隔离和没有特权的独立用户。这是vsftpd系统推荐选项。async_abor_enable=YES,强烈建议不要启用该选项,否则将可能导致出错!ascii_upload_enable=YES;ascii_download_enable=YES,默认情况下服务器会假装接受ASCⅡ模式请求但实际上是忽略这样的请求,启用上述的两个选项可以让服务器真正实现ASCⅡ模式的传输。注意:启用ascii_download_enable选项会让恶意远程用户们在ASCⅡ模式下用SIZE/big/file这样的指令大量消耗FTP服务器的I/O资源。这些ASCⅡ模式的设置选项分成上传和下载两个,这样我们就可以允许ASCⅡ模式的上传(可以防止上传脚本等恶意文件而导致崩溃),而不会遭受拒绝服务攻击的危险。(3)用户连接和超时选项idle_session_timeout=600,可以设定默认的空闲超时时间,用户超过这段时间不动作将被服务器踢出。data_connection_timeout=120,设定默认的数据连接超时时间。(4)服务器日志和欢迎信息dirmessage_enable=YES,允许为目录配置显示信息,显示每个目录下面的message_file文件的内容。ftpd_banner=WelcometoblahFTPservice,可以自定义FTP用户登录到服务器所看到的欢迎信息。xferlog_enable=YES,启用记录上传/下载活动日志功能。xferlog_file=/var/log/vsftpd.log,可以自定义日志文件的保存路径和文件名,默认是/var/log/vsftpd.log
Ⅷ ftp服务怎么开启
开启FTP服务:
1、打开“开始”菜单进入“控制面板--程序--打开和关闭Windows功能,
2、在弹出的Windows功能窗口,勾选上FTP服务器相关功能和ISS管理控制台,点击确定,
新建FTP站点:
右键点击“计算机”打开菜单,选择“管理”进入“计算机管理”窗口,点击展开“服务和应用程序”,点击“Internet信息服务(IIS)管理器”,然后右键点击“网站”打开,选择“添加FTP站点”,按个人需要填写信息即可,完成后即可看到新建的站点出现在窗口中。
Ⅸ 如何开启ftp服务
FTP命令大全- -
FTP:文件传输协议。先说说他的功能吧,主要就是从运行FTP服务器的计算机传输文件。可以交互使用。这里要注意,只有安装了tcp/ip协议的机器才能使用ftp命令。
命令格式:ftp [-v][-d][-i][-n][-g][-s:filename][-a][-w:windowsize][computer]
说说他们的含义吧。
-v 不显示远程服务器响应
-n 禁止第一次连接的时候自动登陆
-i 在多个文件传输期间关闭交互提示
-d 允许调试、显示客户机和服务器之间传递的全部ftp命令
-g 不允许使用文件名通配符,文件名通配符的意思是说允许在本地文件以及路径名中使用通配字符
-s:filename 指定包含ftp命令的文本文件。在ftp命令启动后将自动运行这些命令。在加的参数里不能有空格。
-a 绑定数据连接时,使用任何的本地端口
-w:windowsize 忽略默认的4096传输缓冲区
computer 指定要连接的远程计算机的ip地址
Ⅹ Linux开启FTP
1、安装 vsftpd
2、设置 vsftpd 开机自启动
3、启动 FTP 服务
4、确认服务是否启动
5、为 FTP 服务创建用户,举例创建admin
6、设置用户密码
7、创建 FTP 服务使用的文件目录
8、修改目录权限
9、打开 vsftpd.conf 文件
按 i 切换至编辑模式
修改:
添加:
注释:
按 Esc 后输入 :wq 保存后退出
10、创建并编辑 chroot_list 文件
按 i 进入编辑模式,输入用户名,一个用户名占据一行,例如:
设置完成后按 Esc 并输入 :wq 保存后退出
11、重启 FTP 服务