首页 > 编程知识 正文

搭建ftp服务器要什么,云服务器怎么搭建ftp服务

时间:2023-05-06 21:15:02 阅读:245712 作者:563

目录 5.5、FTP SSL设置准备工作(1)创建FTP用户访问组(2)编辑FTP站点【fjnu-ftp】的权限(3)创建SSL证书*配置FTP SSL验证(1)不加密访问FTP服务(2)TLS/SSL显式加密访问FTP服务(3)TLS/SSL隐式加密访问FTP服务 5.6、FTP服务器启用被动模式参考文献

5.5、FTP SSL设置 准备工作 (1)创建FTP用户访问组

①打开服务器本地【计算机管理】,在【系统工具】——>【本地用户和组】——>【用户】中创建FTP用户账户。在中间列表空白处点击鼠标右键选择【新用户】,分别创建ftp2和ftp3两个新用户。

②点击左侧菜单中的【组】,在中间列表空白处点击鼠标右键选择【新建组】,设置组名,将ftp1、ftp2和ftp3添加到成员中,最后点击【创建】。

(2)编辑FTP站点【fjnu-ftp】的权限

①打开IIS管理器,在左侧的菜单中右键点击f【fjnu-ftp】,选择【编辑权限】

②在弹出的【fjnu-ftp属性】对话框中,选择【安全】选项卡,点击【编辑】,然后在弹出的【安全】对话框中选择添加,输入:FTPGroup,点击【检查名称】,最后点击【确定】。

③添加完成后,为FTPGroup增加权限,在【允许】列中勾选【完全控制】,点击【确定】

(3)创建SSL证书

由于SSL证书需要购买,本次实验中,使用Windows Powershell的New-SelfSignedCertificate命令,该命令可以让用户在Windows上创建一个新的自签名证书来进行测试。

①用管理员权限启动Powershell。右键点击【开始】,选择【Windows PowerShell】。

②确认证书存储路径。使用命令:

Get-PSDrive | Format-Table -AutoSize -Wrap

③创建SSL证书。使用命令:

New-SelfSignedCertificate `-DnsName "fjnu.local" `-KeyAlgorithm RSA `-KeyLength 2048 `-CertStoreLocation "Cert:LocalMachineMy" `-NotAfter (Get-Date).AddYears(5)

关键字解释:

# 创建自签名证书# -DnsName (DNS名,如果未指定主题名称(Subject Name),第一个DNS名默认为颁发者名称。)# -KeyAlgorithm (指定用于对新证书进行签名的哈希算法名。这里使用RSA)# -KeyLength (指定新证书关联的密钥长度,以位(bits)为单位,这里密钥长度为2048 bits)# -CertStoreLocation (指定用于存储新证书的证书存储路径。)# -NotAfter (证书有效期 : 上面的示例有限期为5年。)

④打开Windows证书管理其,使用快捷键win+R,在【运行】中输入:certlm.msc,点击【确定】

⑤进入【certlm】后,右键点击【证书-本地计算机】,选择【刷新】,然后再次右键点击【证书-本地计算机】,选择【查找证书】。在弹出的对话框中输入刚才创建的SSL证书名:fjnu.local,进行查找。

⑥由Windows PowerShell自签名的证书,在创建完成后,系统会自动导入到certlm的【个人】和【中间证书颁发机构】中。

*配置FTP SSL

①返回IIS管理器中的【fjnu-ftp主页】,右键点击【fjnu-ftp】选择【刷新】,然后点击【FTP SSL设置】。

②进入【FTP SSL设置】界面,点击【选择】,在弹出的对话框中自动出现刚才创建的SSL证书,点击证书,然后点击【确定】。接下来在SSL策略中,选择【需要SSL连接】,最后在右侧【操作】栏中,点击【应用】。

验证

在PC2上用资源管理器访问FTP服务器,发现无法访问,这是因为FTP服务器设置了需要使用SSL通道才能连接FTP服务器。

在PC2上使用FTP客户端——WinSCP访问FTP服务器。WinSCP访问FTP服务时有三种模式,包括不加密、TLS/SSL显式加密和TLS/SSL隐式加密。其中不加密、TLS/SSL显式加密默认访问FTP服务器21号端口。TLS/SSL隐式加密默认访问FTP服务器990端口。三种方式的具体区别请参考《wireshark抓包分析FTP三种连接方式:不加密、TLS/SSL隐式加密和显式加密》一文

(1)不加密访问FTP服务

因为FTP以明文的方式传输数据,因此使用不加密的方式访问FTP服务时,用户名和密码以及访问的文件内容可能会被不法分子监听截获。

(2)TLS/SSL显式加密访问FTP服务

(3)TLS/SSL隐式加密访问FTP服务

使用TLS/SSL隐式加密访问FTP服务时,FTP服务器端的绑定端口必须和客户端的端口一直。FTP客户端的TLS/SSL隐式加密访问端口默认为990,因此,如果想使用该方式访问FTP服务,服务器中的绑定设置必须开放990端口。

FTP客户端和FTP服务器端口一致时,才能正常通过TLS/SSL隐式加密访问FTP服务

5.6、FTP服务器启用被动模式

(1)打开IIS管理器,点击fjnu-ftp主页中的【FTP防火墙支持】

(2)进入【FTP防火墙支持】界面,如果【数据通道端口范围】是灰色,无法添加端口的话,有以下两种可能:

①虚拟机网卡问题。

请把虚拟机中的NAT模式网卡关闭,使用网卡自定义模式。

②防火墙策略问题。

在Windows Defender防火墙的高级设置的入站规则中,将FTP Service这条规则的本地端口改为放行所有端口。

在数据通道端口输入端口范围,然后点击右侧【操作】栏中的【应用】。

(3)打开【控制面板】——>【系统和安全】——>【Windows Defender防火墙】——>【高级设置】——>【入站规则】。找到【FTP Service】这条规则,双击进入【FTP Service属性】界面。

(4)点击【协议和端口】选项卡,在【本地端口】处选择【特定端口】,然后在下方框中输入:21,5000-6000(与FTP防火墙支持的数据通道端口一致),最后点击【确定】。

验证

在PC2中使用WinSCP对FTP服务器进行FTP访问(不加密方式)。上传一个任意文件到FTP服务器中,然后使用命令提示符cmd,输入命令:netstat -n,可以看到PC2使用49674号端口(系统随机选择)向FTP服务器的21号端口发送PASV消息,在控制连接成功建立后,客户端向FTP传送传送数据时,使用49676号端口,而FTP服务器使用5001号端口(P端口)。这和我们在FTP防火墙支持中设置的数据通道端口范围一直(5000-6000)。

参考文献

FTP协议的主动模式和被动模式的区别

FTPサーバー : SSL/TLS の設定

New-SelfSignedCertificate

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。