难得胡图 發表於 2021-11-10 10:23:23

Ubuntu14.04安装FTP服务器的实现步骤

<div id="navCategory"><h5 class="catalogue">目录</h5><ul class="first_class_ul"><li><a href="#_label0">安装</a></li><li><a href="#_label1">软件管理</a></li><li><a href="#_label2">匿名访问方式</a></li><ul class="second_class_ul"><li><a href="#_lab2_2_0">修改配置文件</a></li></ul><li><a href="#_label3">客户端登陆服务器</a></li><ul class="second_class_ul"><li><a href="#_lab2_3_1">命令行登陆</a></li><li><a href="#_lab2_3_2">在文件夹下连接服务器</a></li><li><a href="#_lab2_3_3">window下访问</a></li></ul><li><a href="#_label4">系统用户访问</a></li><ul class="second_class_ul"><li><a href="#_lab2_4_4">修改配置文件</a></li></ul><li><a href="#_label5">客户端登录服务器</a></li><ul class="second_class_ul"><li><a href="#_lab2_5_5">命令行登录</a></li><li><a href="#_lab2_5_6">文件夹下连接服务器</a></li><li><a href="#_lab2_5_7">window下访问</a></li></ul><li><a href="#_label6">虚拟用户访问方式</a></li><ul class="second_class_ul"><li><a href="#_lab2_6_8">安装工具</a></li><li><a href="#_lab2_6_9">创建账户</a></li><li><a href="#_lab2_6_10">修改总体配置</a></li><li><a href="#_lab2_6_11">配置每个用户信息</a></li><li><a href="#_lab2_6_12">客户端登录服务器</a></li><ul class="third_class_ul"><li><a href="#_label3_6_12_0">命令行登录</a></li></ul></ul></ul></div><p>FTP:文件传输协议,用于在两台计算机之间进行文件的上传和下载。</p>
<p>有时候我们需要将本地的文件上传到远程的Ubuntu 14.04服务器上,或者把远程Ubuntu 14.04服务器上的文件下载到本地,这就需要搭建FTP</p>
<p class="maodian"><a name="_label0"></a></p><h2>安装</h2>
<p>采用如下命令安装ftp服务器</p>
<div class="jb51code">
<pre class="brush:bash;">
sudo apt install vsftpd
</pre>
</div>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101433179.jpg" /></p>
<p class="maodian"><a name="_label1"></a></p><h2>软件管理</h2>
<p>软件管理方式</p>
<div class="jb51code">
<pre class="brush:bash;">
service vsftpd start   启动
service vsftpd restart重启
service vsftpd stop    停止
service vsftpd status查看状态</pre>
</div>
<p class="maodian"><a name="_label2"></a></p><h2>匿名访问方式</h2>
<p class="maodian"><a name="_lab2_2_0"></a></p><p class="maodian"><a name="_lab2_4_4"></a></p><h3>修改配置文件</h3>
<div class="jb51code">
<pre class="brush:bash;">
gedit /etc/vsftpd.conf</pre>
</div>
<p>并写入配置</p>
<div class="jb51code">
<pre class="brush:bash;">
anonymous_enable=YES
anon_root= /data/pub
local_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
#listen_ipv6=NO
pam_service_name=vsftpd
userlist_enable=NO
tcp_wrappers=YES
</pre>
</div>
<p>配置完成后,创建文件夹和文件,重启服务器</p>
<div class="jb51code">
<pre class="brush:bash;">
mkdir -p /data/pub
touch /data/pub/a.txt
chmod -R 777 /data
chmod a-w /data/pub
service vsftpd restart
</pre>
</div>
<p class="maodian"><a name="_label3"></a></p><h2>客户端登陆服务器</h2>
<p class="maodian"><a name="_lab2_3_1"></a></p><h3>命令行登陆</h3>
<div class="jb51code">
<pre class="brush:bash;">
ftp 127.0.0.1
然后输入用户名
Anonymous
最后输入ls如果初现如图所示的效果即代表创建成功</pre>
</div>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101434180.jpg" /></p>
<p class="maodian"><a name="_lab2_3_2"></a></p><h3>在文件夹下连接服务器</h3>
<p>使用文件夹访问服务器,最后能在文件夹下看到1.txt这个文件<br />
</p>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101434181.jpg" /><br />
</p>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101434182.jpg" /><br />
</p>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101435183.jpg" /></p>
<p class="maodian"><a name="_lab2_3_3"></a></p><p class="maodian"><a name="_lab2_5_7"></a></p><h3>window下访问</h3>
<p>首先获取linux的ip地址</p>
<div class="jb51code">
<pre class="brush:bash;">
ifconfig</pre>
</div>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101435184.jpg" /><br />
</p>
<p style="text-align: left">接着,在window的文件管理器下输入地址</p>
<p style="text-align: left"><code>ftp://192.168.183.128</code></p>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101435185.jpg" /></p>
<p class="maodian"><a name="_label4"></a></p><h2>系统用户访问</h2>
<h3>修改配置文件</h3>
<p>1、修改配置文件</p>
<div class="jb51code">
<pre class="brush:bash;">
gedit /etc/vsftpd.conf
</pre>
</div>
<p>并写入配置</p>
<div class="jb51code">
<pre class="brush:bash;">
anonymous_enable=NO
local_enable=YES
userlist_enable=YES
userlist_deny=NO</pre>
</div>
<p>2、写入允许访问的用户名</p>
<div class="jb51code">
<pre class="brush:bash;">
gedit /etc/vsftpd.user_list</pre>
</div>
<p>添加自己的用户,比如我的电脑用户是ubuntu,则在文件内写上ubuntu<br />
</p>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101436186.jpg" /><br />
</p>
<p>配置完成后重启,</p>
<div class="jb51code">
<pre class="brush:bash;">
service vsftpd restart</pre>
</div>
<p class="maodian"><a name="_label5"></a></p><h2>客户端登录服务器</h2>
<p>同样通过三种方式来访问该ftp</p>
<p class="maodian"><a name="_lab2_5_5"></a></p><h3>命令行登录</h3>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101436187.jpg" /></p>
<p class="maodian"><a name="_lab2_5_6"></a></p><h3>文件夹下连接服务器</h3>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101436188.jpg" /><br />
</p>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101437189.jpg" /></p>
<h3>window下访问</h3>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101437190.jpg" /></p>
<p class="maodian"><a name="_label6"></a></p><h2>虚拟用户访问方式</h2>
<p>系统用户模式虽然可以控制访问,但是如果用户过多,就会影响服务器系统的管理,对服务器安全造成威胁!而且我们需要的仅仅是可以使用搭建在服务器的FTP服务而已!<br />
那么就需要我们设置虚拟用户进行登录,这也是推荐的方式!这种方式更加安全!</p>
<p>虚拟用户就是没有实际的真实系统用户,而是通过映射到其中一个真实用户以及设置相应的权限来实现访问验证,虚拟用户不能登录Linux系统,从而让系统更加的安全可靠。</p>
<p class="maodian"><a name="_lab2_6_8"></a></p><h3>安装工具</h3>
<p>安装如下工具,用于生成密码账户校验</p>
<div class="jb51code">
<pre class="brush:bash;">
sudo apt install db-util
</pre>
</div>
<p class="maodian"><a name="_lab2_6_9"></a></p><h3>创建账户</h3>
<p>创建的ftpuser账户,用于接下来的实验,并修改密码</p>
<div class="jb51code">
<pre class="brush:bash;">
useradd ftpuser -s /sbin/nologin
passwd ftpuser </pre>
</div>
<p class="maodian"><a name="_lab2_6_10"></a></p><h3>修改总体配置</h3>
<div class="jb51code">
<pre class="brush:bash;">
gedit /etc/vsftpd.conf
</pre>
</div>
<p>并写入配置</p>
<div class="jb51code">
<pre class="brush:bash;">
anonymous_enable=NO
local_enable=YES
userlist_enable=YES
#userlist_deny=NO

guest_enable=YES
guest_username=ftpuser#和前面创建的用户名一致
virtual_use_local_privs=YES
pam_service_name=vsftpd
user_config_dir=/etc/vsftpd/virtualconf#记住这个路径

</pre>
</div>
<p>创建配置文件夹,用于存放每个用户的配置</p>
<div class="jb51code">
<pre class="brush:bash;">
mkdir -p /etc/vsftpd/virtualconf
</pre>
</div>
<p>创建存放用户密码</p>
<div class="jb51code">
<pre class="brush:bash;">
vi /etc/vsftpd/virtusers
</pre>
</div>
<p>在文件中存入账户和密码<br />
</p>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101437191.jpg" /><br />
</p>
<p>同时使用db命令生成数据库文件</p>
<div class="jb51code">
<pre class="brush:bash;">
db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db
</pre>
</div>
<p>修改pam配置文件</p>
<div class="jb51code">
<pre class="brush:bash;">
gedit /etc/pam.d/vsftpd
</pre>
</div>
<p>把文件的内容全部删掉,替换以下配置</p>
<div class="jb51code">
<pre class="brush:bash;">
auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd/virtusers
account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd/virtusers
</pre>
</div>
<p class="maodian"><a name="_lab2_6_11"></a></p><h3>配置每个用户信息</h3>
<p>切换到用户配置目录下</p>
<div class="jb51code">
<pre class="brush:bash;">
mkdir -p /home/ftpuser/ftp1
chown ftpuser.ftpuser /home/ftpuser
cd /etc/vsftpd/virtualconf/
gedit ftp1
</pre>
</div>
<p>文件内写入如下配置</p>
<div class="jb51code">
<pre class="brush:bash;">
local_root=/home/ftpuser/ftp1
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

</pre>
</div>
<p>至此 ,配置全部完成</p>
<p class="maodian"><a name="_lab2_6_12"></a></p><h3>客户端登录服务器</h3>
<p>登录之前先重启以下ftp服务器</p>
<div class="jb51code">
<pre class="brush:bash;">
service vsftpd restart</pre>
</div>
<p>我们现在共享目录下创建一个文件用于后续验证查看</p>
<div class="jb51code">
<pre class="brush:bash;">
touch /home/ftpuser/ftp1/1.txt</pre>
</div>
<p>接下来,同样用三种方式登录</p>
<p class="maodian"><a name="_label3_6_12_0"></a></p><h4>命令行登录</h4>
<p>可以看到1.txt为刚刚创建的文件<br />
</p>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101438192.jpg" /></p>
<p>文件夹下连接服务器</p>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101438193.jpg" /><br />
</p>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101438194.jpg" /></p>
<p>window下访问</p>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101439195.jpg" /><br />
</p>
<p style="text-align: center"><img alt="在这里插入图片描述" src="https://img.jbzj.com/file_images/article/202111/20211110101439196.jpg" /></p>
<p>到这里ftp三种模式已经全部配置并实践完成</p>
<p>到此这篇关于Ubuntu14.04安装FTP服务器的实现步骤的文章就介绍到这了,更多相关Ubuntu14.04安装FTP内容请搜索琼殿技术社区以前的文章或继续浏览下面的相关文章希望大家以后多多支持琼殿技术社区!</p>
頁: [1]
查看完整版本: Ubuntu14.04安装FTP服务器的实现步骤