linux怎么搭建ftp服务器,第1张

ftp工作是会启动两个通道:

控制通道 , 数据通道

在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种模式:port模式(主动模式)和pasv(被动模式)

PORT模式:

在客户端需要接收数据时,ftp_client(大于1024的随机端口)-PORT命令->ftp_server(21) 发送PORT命令,这个PORT命令包含了客户端是用什么端口来接收数据(大于1024的随机端口),在传送数据时,ftp_server将通过自己的TCP 20 端口和PORT中包含的端口建立新的连接来传送数据。

PASV模式:

传送数据时,ftp_client--PASV命令-->ftp_server(21) 发送PASV命令时,ftp_server自动打开一个1024--5000之间的随机端口并且通知ftp_client在这个端口上传送数据,然后客户端向指定的端口发出请求连接,建立一条数据链路进行数据传输。

安装ftp

#rpm -qa vsftpd 查看是否已经安装

#yum install -y vsftpd

#rpm -ql vsftpd

/etc/logrotated/vsftpd vsftpd的日志文件

/etc/pamd/vsftpd PAM认证文件

/etc/rcd/initd/vsftpd 启动脚本

/etc/vsftpd vsftpd的配置文件存放的目录

/etc/vsftpd/ftpusers 禁止使用vsftpd的用户列表文件

/etc/vsftpd/user_list 禁止或允许使用vsftpd的用户列表文件

/etc/vsftpd/vsftpdconf 主配置文件

/etc/vsftpd/vsftpd_conf_migratesh vsftpd操作的一些变量和设置

/usr/sbin/vsftpd vsftpd的主程序

其他一些说明文档和手册文件略!

/var/ftp 匿名用户主目录

/var/ftp/pub 匿名用户的下载目录

#service vsftpd start

#chkconfig --level vsftpd

#chkconfig --level 2345 vsftpd on

2 匿名用户的登录名:ftp(anonymous) 密码空 ,登录的目录为/var/ftp

用匿名用户登录的时候默认是只有下载的权限,没有上传,创建和删除的权限:

#vim /etc/vsftpd/vsftpdconf

anon_upload_enable=YES 上传

anon_mkdir_write_enable=YES 创建

anon_other_write_enable=YES 删除

#service vsftpd restart

为了安全应该禁止匿名用户的登录:

123456 #vim /etc/vsftpd/vsftpdconf

anonymous_enable=NO

#anon_upload_enable=YES 上传

#anon_mkdir_write_enable=YES 创建

#anon_other_write_enable=YES 删除

#service vsftpd restart

3 创建一个直接登录系统用户来登录ftp:

#useradd -s /sbin/nologin viong

#passwd viong

用户具有 上传 创建 下载 切换目录

------------------------------------------------------------------

4 加强vsftp安全设置:

限制系统用户锁定在家目录:

#vim /etc/vsftpd/vsftpdconf

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list 限制更多的系统用户,把需要限制的用户加入/etc/vsftpd/chroot_list中即可

#touch /etc/vsftpd/chroot_list

#cut -d: -f 1 /etc/passwd >>/etc/vsftpd/chroot_list 将本地用户都加入到chroot_list

限制重要系统用户不能登录ftp:

#cat /etc/vsftpd/ftpusers 默认已经添加了系统中一些比较重要的用户

#echo "viong" >>/etc/vsftpd/ftpusers 此时viong不能登录ftp

利用ftp用户策略允许登录ftp的系统用户:

/etc/vsftpd/user_list 只有在这个文件中的用户才能登录系统:

#vim /etc/vsftpd/vsftpdconf

#在userlist_enable=YES 的后面添加

userlist_deny=NO

userlist_file=/etc/vsftpd/user_list

设置登录ftp目标ip地址:用iptables设置

---------------------------------------

搭建支持SSL加密传输的vsftpd:

#openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/vsftpd/vsftpdpem -out /etc/vsftpd/vsftpdpem 生成证书

#vim /etc/vsftpd/vsftpdconf

ssl_enable=YES

allow_anon_ssl=NO

force_local_data_ssl=YES

force_local_logins_ssl=YES

ssl_tlsv1=YES

ssl_sslv2=YES

ssl_sslv3=YES

rsa_cert_file=/etc/vsftpd/vsftpdpem

下面是ssl参数一些定义,根据自己需求去修改:

ssl_enable=yes/no //是否启用 SSL,默认为no

allow_anon_ssl=yes/no //是否允许匿名用户使用SSL,默认为no

rsa_cert_file=/path/to/file //rsa证书的位置

dsa_cert_file=/path/to/file //dsa证书的位置

force_local_logins_ssl=yes/no //非匿名用户登陆时是否加密,默认为yes

force_local_data_ssl=yes/no //非匿名用户传输数据时是否加密,默认为yes

force_anon_logins_ssl=yes/no //匿名用户登录时是否加密,默认为no

force_anon_data_ssl=yes/no //匿名用户数据传输时是否加密,默认为no

ssl_sslv2=yes/no //是否激活sslv2加密,默认no

ssl_sslv3=yes/no //是否激活sslv3加密,默认no

ssl_tlsv1=yes/no //是否激活tls v1加密,默认yes

ssl_ciphers=加密方法 //默认是DES-CBC3-SHA

#service vsftpd restart

用flashftp连接:

连接类型为:FTP使用公开SSL(验证SSL)

地址:192168137130:21

登录类型:普通

用户:viong

密码:123

怎样能使Windows系统访问LINUX中的FTP?

设置去掉ftp的匿名访问方式,设置适当的用户权限,ftp是基与tcp/ip协议的应用,与操作系统无关。

suselinux怎么安装ftp?

有几种方法:

1命令的方法:ps-aux|grepftpdnetstat-na|grep21看看有没有启动。

2在界面模式下查看ftp服务有没有开启,比如suseLinux的,在yast中就能看到3你用ftp软件看看能否连到系统。这方法缺点明显,要是配置错了也连不上,呵呵。建议采用第一种,直接用命令查看。

Linux下如何启动ftp服务进程?

Linux下开启FTP服务方法:

1检测FTP服务是否开启通过查询提供FTP服务的进程是否存在Shell代码ps-ef|grepftp并未找到任何包含ftp关键字的进程信息,可判断服务未开启。通过查询是vsftpd服务是否存在Shell代码servicevsftpdstatusvsftpd是最常见的FTP服务器,一般Linux系统都是通过vsftpd来搭建FTP服务环境。发现处stopped状态。

2开启FTP服务Shell代码servicevsftpdstart成功开启并显示出pid(进程ID)为3401。再查下vsftpd开启状态已经显示running。再通过查询包含ftp关键字的进程信息,发现也找到一个进程ID为3401的FTP进程。

3简单配置实现匿名上传下载默认开启的vsftpd服务对匿名用户是不开放上传权限的。可修改vsftpd目下的配置文件vsftpdconf来开发权限。设置的方法就是取消对该行的注释即可(换句话说就是把前面#号删除就好)。

linux安装ftp能用手机访问吗?

可以访问,远程访问文件服务器是可以的

linux怎么连接ftp服务器?

1、首先,连接相应linux主机,进入到linux命令行状态下,等待输入shell指令。

2、其次,在linux命令行中输入:ftp101834115。

3、最后,按下回车键执行shell指令,此时会看到已成功连接上ftp服务,可输入ftp命令了。

小鸟云服务器niaoyun实例创建好之后,您可以使用以下任意一种方式登录服务器:

远程桌面连接(MicrosoftTerminalServicesClient,MSTSC):采用这种方式登录,请确保实例能访问公网。如果在创建实例时没有购买带宽,则不能使用远程桌面连接。

管理终端VNC:无论您在创建实例时是否购买了带宽,只要您本地有网页浏览器,都可以通过管理控制台的管理终端登录实例。

使用远程桌面连接(MSTSC)登录实例

打开开始菜单>远程桌面连接,或在开始菜单>搜索中输入mstsc。也可以使用快捷键Win+R来启动运行窗口,输入mstsc后回车启动远程桌面连接。

在远程桌面连接对话框中,输入实例的公网IP地址。单击显示选项。

输入用户名,如小鸟云默认为niaoyun。单击允许我保存凭据,然后单击连接。这样以后登录就不需要手动输入密码了。

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 0000:21   0000:        LISTEN 

#如果看到以上信息,证明ftp服务已经开启。

1首先应开启linuxh环境下的FTP service,过程如下:

http://wwwwitechcomcn/news/Article_ShowaspArticleID=48

或者输入命令: /etc/rcd/initd/vsftpd start

/etc/rcd/initd/ vsftpd restart

若要关闭这个服务:/etc/rcd/initd/ vsftpd stop

2配置文件:

进入/etc配置vsftpdftpusers和vsftpduser_list,用vi打开他们,将这两个文件里的root给去掉,保存退出。

3此时可以打开flshFXP,快速连接,输入IP地址、用户名及密码就可以连接linux系统的FTP服务器了,及可进行windows与linux系统的文件传输

vsftpd的配置

  在Red Hat Linux 90里的vsftpd共有3个配置文件,它们分别是:

  vsftpdftpusers:位于/etc目录下。它指定了哪些用户账户不能访问FTP服务器,例如root等。

vsftpduser_list:位于/etc目录下。该文件里的用户账户在默认情况下也不能访问FTP服务器,仅当vsftpd conf配置文件里启用userlist_enable=NO选项时才允许访问。

  vsftpdconf:位于/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/vsftpdbanned_emails,当启用deny_email_enable功能时,所需的电子邮件黑名单保存路径(默认为/etc/vsftpdbanned_emails)。

  (2)用户权限控制

  write_enable=YES,开启全局上传权限。

  local_umask=022,本地用户的上传文件的umask设为022(系统默认是077,一般都可以改为022)。

  anon_upload_enable=YES(这步的配置很重要不然会发现不能通过FTP软件向LINUX上传文件,能下载)允许匿名用户具有上传权限,很明显,必须启用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/vsftpdchroot_list,如果chroot_local_user=YES,则指定该列表(chroot_local_user)的保存路径(默认是/etc/vsftpdchroot_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=Welcome to blah FTP service,可以自定义FTP用户登录到服务器所看到的欢迎信息。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » linux怎么搭建ftp服务器

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情