ftp服务配置

ftp服务配置vim

ftp是file transfer protocol(文件传输协议)的英文简写形式,用于在因特网上控制文件的双向传输。它同时也是一个应用程序,用户能够经过它把本身的PC机与世界各地全部运行ftp协议的服务器相连,以访问服务器上的大量程序和信息。安全

ftp的主要做用就是让用户所链接一个远程计算机(这些计算机上运行着ftp服务器程序),并查看远程计算机中的文件,而后把文件从远程计算机复制到本地计算机,或把本地计算机的文件传送到远程计算机。ftp方便传输数据,因此我的用户不少,可是企业应用较少,主要缘由仍是安全问题。服务器

1、使用vsftpd搭建ftp服务session

1.1安装vsftpd工具

直接使用yum工具安装vsftpd包测试

yum install -y vsftpd db4-utilsci

  • db4-utils是用来生成密码库文件

1.二、创建虚拟帐号hash

vsftpd默承认以支持系统帐号登陆,可是有安全隐患。因此咱们能够建立虚拟帐号登陆it

1.2.一、创建与虚拟帐号相关联的系统帐号io

useradd -s /sbin/nologin virftp

1.2.二、建立虚拟帐户登陆文件

#建立虚拟帐户登陆信息文件

vim /etc/vsftpd/vsftpd_login

#写入如下内容

test1

123456

test2

asdfgh

#修改文件权限

chmod 600 /etc/vsftpd/vsftpd_login

#生成密码库文件

db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db

  • 奇数行为用户名,偶数行为密码。主要行尾空格
  • 应为vsftpd使用的密码文件不是明文的,须要生成对应库文件

1.2.三、建立用户对应配置文件

建立配置文件存放目录

mkdir /etc/vsftpd/vsftpd_user_conf

cd /etc/vsftpd/vsftpd_user_conf

#建立用户配置文件

vim test1

#写入如下内容

local_root=/home/virftp/test1

anonymous_enable=NO

write_enable=YES

local_umask=022

anon_upload_enable=NO

anon_mkdir_write_enable=NO

idle_session_timeout=600

data_connection_timeout=120

max_clients=10

#test2配置文件与test1大体同样,修改local_root便可

  • 配置文件的名称应该与密码文件中的用户名一致
  • 配置详解以下

local_root:指定虚拟用户家目录

anonymous_enable:是否容许匿名用户登陆

write_enable:是否可写

local_umask:建立后的文件umask

anon_upload_enable:是否容许匿名用户上传

anon_mkdir_write_enable:匿名用户是否可写

idle_session_timeout:连接超时时间

data_connection_timeout:文件传输超时时间

max_clients:最大连接数

1.2.四、建立认证文件

vim /etc/pam.d/vsftpd

#在最前面加上

auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

  • 注意该文件/lib64/security/pam_userdb.so 是否存在。

1.三、修改全局配置文件/etc/vsftpd/vsftpd.conf

vim /etc/vsftpd/vsftpd.conf

#将anonymous_enable=YES 改成 anonymous_enable=NO

#将#anon_upload_enable=YES 改成 anon_upload_enable=NO

#将#anon_mkdir_write_enable=YES 改成 anon_mkdir_write_enable=NO

#再增长以下内容

chroot_local_user=YES

guest_enable=YES

guest_username=virftp

virtual_use_local_privs=YES

user_config_dir=/etc/vsftpd/vsftpd_user_conf

allow_writeable_chroot=YES

  • 修改后启动vsftpd服务:systemctl start vsftpd

1.四、建立测试文件

mkdir /home/virftp/test1

touch /home/virftp/test1/test.txt

chown -R virftp:virftp /home/virftp

1.五、测试

Linux使用lftp

yum install -y lftp

下载文件

上传文件