Linux下搭建和简朴配置FTP服务器

打印 上一主题 下一主题

主题 1047|帖子 1047|积分 3141

一、前言

网络安全实验五中必要搭建FTP服务器举行实验,在踩了一些坑之后,记录下搭建和配置过程,希望其他人可以少走弯路。
本文中Linux下安装和配置FTP在VMware中Ubuntu 16下举行,对于CentOS等其他Linux系统不实用,其他系统的安装必要参照其他文章。
同时注意权限题目,有的命令必要sudo [原命令]才可实行,因此这里根本上都用了sudo。
下面是正文

二、根本安装

1.安装ftp服务器

分别实行下列命令
  1. sudo apt-get update
  2. sudo apt-get install vsftpd
  3. #这里遇到了问题1,解决方案在最下面。
复制代码
之后可以利用命令vsftpd --version 检测是否安装已经安装后的版本。
2.配置ftp服务器

(1)配置文件修改之前先备份,系列命令举行备份。

sudo cp /etc/vsftpd.conf /etc/vsftpd_bk.conf
(2)修改配置文件

可以利用vim,也可以利用gedit进入修改,本人感觉gedit操作相对简朴,因此这里利用的gedit.(下面命令2选1)
利用sudo vim /etc/vsftpd.conf大概 sudo gedit /etc/vsftpd.conf
(3)配置文件内容

我这里的配置文件vsftpd.conf中内容如下(对于更深入的要求,可在之后修改配置文件),此处只配置简朴的情形。
  1. listen=NO
  2. listen_ipv6=YES
  3. # Allow anonymous FTP? (Disabled by default).
  4. anonymous_enable=NO
  5. # Uncomment this to allow local users to log in.
  6. local_enable=YES
  7. # Uncomment this to enable any form of FTP write command.
  8. write_enable=YES
  9. # Default umask for local users is 077. You may wish to change this to 022,
  10. # if your users expect that (022 is used by most other ftpd's)
  11. local_umask=022
  12. # Activate directory messages - messages given to remote users when they
  13. # go into a certain directory.
  14. dirmessage_enable=YES
  15. #
  16. # If enabled, vsftpd will display directory listings with the time
  17. # in  your  local  time  zone.  The default is to display GMT. The
  18. # times returned by the MDTM FTP command are also affected by this
  19. # option.
  20. use_localtime=YES
  21. #
  22. # Activate logging of uploads/downloads.
  23. xferlog_enable=YES
  24. #
  25. # Make sure PORT transfer connections originate from port 20 (ftp-data).
  26. connect_from_port_20=YES
  27. # You may override where the log file goes if you like. The default is shown
  28. # below.
  29. xferlog_file=/var/log/vsftpd.log
  30. #
  31. # If you want, you can have your log file in standard ftpd xferlog format.
  32. # Note that the default log file location is /var/log/xferlog in this case.
  33. xferlog_std_format=YES
  34. # You may fully customise the login banner string:
  35. ftpd_banner=Welcome to FTP service.
  36. # You may specify an explicit list of local users to chroot() to their home
  37. # directory. If chroot_local_user is YES, then this list becomes a list of
  38. # users to NOT chroot().
  39. # (Warning! chroot'ing can be very dangerous. If using chroot, make sure that
  40. # the user does not have write access to the top level directory within the
  41. # chroot)
  42. chroot_local_user=YES
  43. chroot_list_enable=YES
  44. # (default follows)
  45. chroot_list_file=/etc/vsftpd.chroot_list
  46. # This option should be the name of a directory which is empty.  Also, the
  47. # directory should not be writable by the ftp user. This directory is used
  48. # as a secure chroot() jail at times vsftpd does not require filesystem
  49. # access.
  50. secure_chroot_dir=/var/run/vsftpd/empty
  51. #
  52. # This string is the name of the PAM service vsftpd will use.
  53. # pam_service_name=vsftpd
  54. pam_service_name=ftp
  55. # This option specifies the location of the RSA certificate to use for SSL
  56. # encrypted connections.
  57. rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
  58. rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
  59. ssl_enable=NO
  60. #
  61. # Uncomment this to indicate that vsftpd use a utf8 filesystem.
  62. utf8_filesystem=YES
复制代码
注意Ctrl+s生存。
对于终端中的警告暂时可以忽视(一般题目不大)。

三、添加用户

这里以添加用户t1为例,其他用户名同理可以添加。
1.先在/home下创建一个用户名目录

sudo mkdir /home/t1
2.接着绑定用户登录目录和shell

命令中-d 背面指定用户登入时的目录,-s指定用户登入后利用的shell
sudo useradd -d /home/t1 -s /bin/bash t1
3.添加用户t1的暗码

sudo passwd t1
之后暗码本身设置
4.设置/home/t1的拥有者为t1

sudo chown t1:t1 /home/t1
5.添加用户到/etc/vsftpd.user_list中

在下面命令打开的文件中添加一行,内容为t1(即你新建的用户的用户名),生存后退出。
sudo gedit /etc/vsftpd.user_list
文件中内容如下图

6.添加用户到/etc/vsftpd.chroot_list中,新增行内容也为t1,与上一步操作雷同。

sudo gedit /etc/vsftpd.chroot_list
末了尝试重启服务
systemctl restart vsftpd
根本配置完成

四、测试

1.Ubuntu本地测试ftp localhost



2.Windows下测试:

(1)cmd中: ftp IP所在



(2)所在栏

也可以在所在栏ftp:IP所在或ftp://IP所在/举行检察。


输入正确的用户名和暗码后出现


文件夹为空,由于我们还没有创建文件。
3.Ubuntu新建文件后测试:

在Ubuntu中新建一个文件
  1. cd /home/t1
  2. sudo gedit test.txt
复制代码
输入下列内容后退出


然后在windows下检察


打开txt得到


乐成搭建了简朴的FTP服务器

五、遇到的题目

1.sudo apt-get update之后的命令出现下列题目。

  1. E: 无法获得锁 /var/lib/dpkg/lock-frontend - open (11: 资源暂时不可用)
  2. E: 无法获取 dpkg 前端锁 (/var/lib/dpkg/lock-frontend),是否有其他进程正占用它?
复制代码
解决:
  1. sudo rm /var/cache/apt/archives/lock
  2. sudo rm /var/lib/dpkg/lock
  3. -frontend
复制代码
之后假如:
  1. E: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)
  2. E: 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?
复制代码
则:
  1. sudo rm /var/lib/dpkg/lock
复制代码
团体过程如下,乐成解决:


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

种地

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表