本文目录导读:
随着互联网的快速发展,云服务器已成为许多企业和个人用户的选择,在云服务器上配置FTP服务,可以实现文件的远程传输和管理,提高工作效率,本文将为您详细讲解如何在云服务器上配置FTP服务,包括基础设置、安全加固和高级技巧,让您轻松掌握FTP配置的全过程。
基础设置
1、安装FTP服务
以CentOS为例,使用以下命令安装FTP服务:
安装vsftpd yum install vsftpd -y 启动FTP服务 systemctl start vsftpd 设置开机自启 systemctl enable vsftpd
2、修改FTP配置文件
图片来源于网络,如有侵权联系删除
编辑FTP配置文件/etc/vsftpd/vsftpd.conf
,根据需要修改以下参数:
anonymous_enable=NO
:禁止匿名用户登录;
local_enable=YES
:允许本地用户登录;
write_enable=YES
:允许用户上传和下载文件;
chroot_local_user=YES
:用户登录后将被限制在主目录下,提高安全性;
allow_writeable_chroot=YES
:允许用户在主目录下上传和下载文件。
3、创建FTP用户
使用以下命令创建FTP用户:
创建用户 useradd -d /home/ftpuser -s /sbin/nologin ftpuser 设置用户密码 passwd ftpuser
安全加固
1、修改FTP默认端口
将/etc/vsftpd/vsftpd.conf
中的port=21
修改为其他端口号,如port=2222
,降低被恶意攻击的风险。
2、限制IP访问
在/etc/vsftpd/vsftpd.conf
中添加以下内容,限制特定IP访问:
allow_access_file=/etc/vsftpd/allowed_ip
创建/etc/vsftpd/allowed_ip
文件,并添加允许访问的IP地址,
图片来源于网络,如有侵权联系删除
192、168.1.1 192、168.1.2
3、修改FTP用户主目录权限
修改FTP用户主目录权限,禁止用户修改目录结构:
进入FTP用户主目录 cd /home/ftpuser 设置目录权限 chmod 755 . chmod 644
高级技巧
1、使用虚拟用户
虚拟用户可以限制用户登录FTP服务器的权限,提高安全性,以下是在CentOS上配置虚拟用户的方法:
(1)安装authz
包:
yum install authz -y
(2)创建虚拟用户文件:
在/etc/vsftpd
目录下创建user_list
文件,并添加虚拟用户信息,
userlist file If userlist.deny=NO, then this file will be checked against /etc/vsftpd/user_list for users that are not allowed to log in. corresponding entries in /etc/vsftpd/allowed_list are ignored. If userlist.deny=YES (default), this file will be checked against /etc/vsftpd/allowed_list for users that are allowed, and against the /etc/vsftpd/user_list for users that are not allowed. Entries in /etc/vsftpd/user_list must have group information added if needed. The /etc/vsftpd/user_list file should have the following format: user [group] [needaccount] [home dir] [shell] Allow virtual users userlist_enable=YES userlist_deny=NO The following entries are allowed in /etc/vsftpd/user_list They will be checked against /etc/vsftpd/allowed_list and /etc/vsftpd/user_list ftpuser
(3)修改FTP配置文件:
在/etc/vsftpd/vsftpd.conf
中添加以下内容:
Use virtual users userlist_enable=YES userlist_deny=NO pam_service_name=vsftpd guest_username=ftpuser
2、使用SSL加密FTP连接
(1)安装openssl
和openvpn
:
yum install openssl openvpn -y
(2)生成证书和私钥:
生成CA证书 openssl req -x509 -newkey rsa:4096 -keyout ca.key -out ca.crt -days 365 -nodes -subj "/C=CN/ST=Beijing/L=Beijing/O=MyCompany/CN=MyCompany" 生成服务器证书 openssl req -newkey rsa:4096 -keyout server.key -out server.crt -days 365 -nodes -subj "/C=CN/ST=Beijing/L=Beijing/O=MyCompany/CN=MyCompany" 生成客户端证书 openssl req -newkey rsa:4096 -keyout client.key -out client.crt -days 365 -nodes -subj "/C=CN/ST=Beijing/L=Beijing/O=MyCompany/CN=MyCompany"
(3)修改FTP配置文件:
图片来源于网络,如有侵权联系删除
在/etc/vsftpd/vsftpd.conf
中添加以下内容:
ssl_enable=YES ssl_tlsv1=YES ssl_sslv2=NO ssl_sslv3=NO ssl_ciphers=HIGH ssl_tlsv1.2 ssl_tlsv1.3 ssl_sslv2=NO ssl_sslv3=NO require_ssl_reuse=NO ssl_sslv2=NO ssl_sslv3=NO ssl_cert_file=/etc/vsftpd/server.crt ssl_key_file=/etc/vsftpd/server.key ssl_ciphers=HIGH:!aNULL:!MD5
3、使用虚拟主机
虚拟主机可以将多个FTP服务部署在同一台服务器上,提高资源利用率,以下是在CentOS上配置虚拟主机的步骤:
(1)创建虚拟主机配置文件:
在/etc/vsftpd/vsftpd.conf
目录下创建虚拟主机配置文件,例如vsftpd_ftp1.conf
,并添加以下内容:
Virtual Host configuration for ftp1 <VirtualHost *:21> ServerName ftp1.example.com ServerAlias ftp1.alias.com User ftpuser1 ChrootLocalUser YES AllowOverwrite YES # 其他配置... </VirtualHost>
(2)修改主配置文件:
在/etc/vsftpd/vsftpd.conf
中添加以下内容:
listen=YES listen_address=192.168.1.1 其他配置...
(3)创建虚拟主机用户:
使用以下命令创建虚拟主机用户:
创建用户 useradd -d /home/ftpuser1 -s /sbin/nologin ftpuser1 设置用户密码 passwd ftpuser1
(4)启动FTP服务:
重启FTP服务 systemctl restart vsftpd
至此,您已成功在云服务器上配置FTP服务,根据实际需求,您可以选择使用基础设置、安全加固和高级技巧,以满足不同的业务场景。
标签: #云服务器怎么配置ftp
评论列表