没有合适的资源?快使用搜索试试~ 我知道了~
sftp配置全过程[参照].pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 156 浏览量
2021-10-12
00:23:35
上传
评论
收藏 207KB PDF 举报
温馨提示
试读
47页
sftp配置全过程[参照].pdf
资源推荐
资源详情
资源评论
1 Vsftp
3.2 VSFTP 安全与效能兼备的 ftp 服务器
3.2.1 VSFTP 概述
FTP,file transfer protocol ,这是档案传输的通讯协议,也是一般最常用来传送档案的方式。
读者在使用 RedHat9 的时候,可能会感受到 ftp server 有一些改变:第一,就是 ftp server 只
剩下 vsftp,原有的 wuftp 等都没放入第二,就是 vsftp 从 XINETD 中独立出来,并将设定档
从/etc/vsftpd.conf 之中移到 /etc/vsftpd/vsftpd.conf 。
为什么做这样的改变?可以想见的是 vsftp 已有独立运作的能力, 不需要 XINETD 来做更进
一步的管控,并且类似 sendmail、httpd、ssh、samba 等,将设定文件的放入 /etc 下独立的目
录。
FTP 分为两类,一种为 PORT FTP,也就是一般的 FTP 另一类是 PASVFTP,分述如下:
PORT FTP
这是一般形式的 FTP,首先会建立控制频道, 默认值是 port 21,也就是跟 port 21 建立联机,
并透过此联机下达指令。第二,由 FTP server 端会建立数据传输频道,默认值为 20,也就
是跟 port 20 建立联机,并透过 port 20 作数据的传输。
PASV FTP
跟 PORT FTP 类似,首先会建立控制频道,默认值是 port 21,也就是跟 port 21 建立联机,
并透过此联机下达指令。第二,会由 client 端做出数据传输的请求,包括数据传输 port 的数
字。
这两者的差异为何? PORT FTP 当中的数据传输 port 是由 FTP server 指定,而 PASV FTP 的
数据传输 port 是由 FTP client 决定。通常我们使用 PASV FTP ,是在有防火墙的环境之下,
透过 client 与 server 的沟通,决定数据传输的 port。
3.2.2 范例
3.2.1. 直接启动 VSFTP 服务
这个范例是套用 RedHat 的预设范例 ,直接启动 vsftp。
[root@relay vsftpd]# /sbin/service vsftpd start
Starting vsftpd for vsftpd: OK ]
3.2.2. 更换 port 提供服务:将预设的 port 21 更换为 2121
为了安全,或是以 port 来区隔不同的 ftp 服务,我们可能会将 ftp port 改为 21 之外的 port,
那么,可参考以下步骤。
Step1. 修改 /etc/vsftpd/vsftpd.conf
新增底下一行
listen_port=2121
Step2. 重新启动 vsftpd
[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]
3.2.3. 特定使用者 peter、 john 不得变更目录
使用者的预设目录为 /home/username,若是我们不希望使用者在 ftp 时能够
切换到上一层目录 /home,则可参考以下步骤。
Step1. 修改 /etc/vsftpd/vsftpd.conf
将底下三行
#chroot_list_enable=YES
# (default follows)
#chroot_list_file=/etc/vsftpd.chroot_list
改为
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list
Step2. 新增一个档案 : /etc/vsftpd/chroot_list
内容增加两行:
peter
john
Step3. 重新启动 vsftpd
[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]
若是 peter 欲切换到根目录以外的目录,则会出现以下警告:
ftp> cd /home
550 Failed to change directory.
3.2.4. 取消 anonymous 登入
若是读者的主机不希望使用者匿名登入,则可参考以下步骤。
Step1. 修改 /etc/vsftpd/vsftpd.conf
将
anonymous_enable=YES
改为
anonymous_enable=NO
Step2. 重新启动 vsftpd
[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]
3.2.5. 安排欢迎话语
若是我们希望使用者在登入时, 能够看到欢迎话语, 可能包括对该主机的说明, 或是目录的
介绍,可参考以下步骤。
首先确定在 /etc/vsftpd/vsftpd.conf 当中是否有底下这一行
dirmessage_enable=YES
2 楼
RedHat9 的默认值是有上面这行的。
接着,在各目录之中,新增名为 .message 的档案, 再这边假设有一个使用者 test1,且此使用
者的根目录下有个目录名为 abc,那首先我们在 /home/test1
之下新增 .message,内容如下:
Hello~ Welcome to the home directory
This is for test only...
接着,在 /home/test1/abc 的目录下新增 .message,内容如下:
Welcome to abc's directory
This is subdir...
那么,当使用者 test1 登入时,会看到以下讯息:
230- Hello~ Welcome to the home directory
230-
230- This is for test only...
230-
若是切换到 abc 的目录,则会出现以下讯息:
250- Welcome to abc's directory
250-
250- This is subdir ...
3.2.6. 对于每一个联机,以独立的 process 来运作
一般启动 vsftp 时,我们只会看到一个名为 vsftpd 的 process 在运作, 但若是读者希望每一个
联机,都能以独立的 process 来呈现,则可执行以下步骤。
Step1. 修改 /etc/vsftpd/vsftpd.conf
新增底下一行
setproctitle_enable=YES
Step2. 重新启动 vsftpd
[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]
使用 ps -ef 的指令,可以看告不同使用者联机的情形,如下图所示:
[root@home vsftpd]# ps -ef|grep ftp
root 2090 1 0 16:41 pts/0 00:00:00 vsftpd: LISTENER
nobody 2120 2090 0 17:18 ? 00:00:00 vsftpd: 192.168.10.244:
connected
test1 2122 2120 0 17:18 ? 00:00:00 vsftpd: 192.168.10.244/test1:
IDLE
nobody 2124 2090 0 17:19 ? 00:00:00 vsftpd: 192.168.10.244:
connected
test2 2126 2124 0 17:19 ? 00:00:00 vsftpd: 192.168.10.244/test2:
IDLE
root 2129 1343 0 17:20 pts/0 00:00:00 grep ftp
[root@home vsftpd]#
3.2.7. 限制传输档案的速度:
本机的使用者最高速度为 200KBytes/s ,匿名登入者所能使用的最高速度为 50KBytes/s
Step1. 修改 /etc/vsftpd/vsftpd.conf
新增底下两行
anon_max_rate=50000
local_max_rate=200000
Step2. 重新启动 vsftpd
[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]
在这边速度的单位为 Bytes/s,其中 anon_max_rate 所限制的是匿名登入的
使用者,而 local_max_rate 所限制的是本机的使用者。 VSFTPD 对于速度的限
制,范围大概在 80%到 120%之间,也就是我们限制最高速度为 100KBytes/s ,
但实际的速度可能在 80KBytes/s 到 120KBytes/s 之间,当然,若是频宽不足
时,数值会低于此限制。
3.2.8. 针对不同的使用者限制不同的速度:
假设 test1 所能使用的最高速度为 250KBytes/s ,test2 所能使用的最高速度为 500KBytes/s 。
Step1. 修改 /etc/vsftpd/vsftpd.conf
新增底下一行
user_config_dir=/etc/vsftpd/userconf
Step2. 新增一个目录: /etc/vsftpd/userconf
mkdir /etc/vsftpd/userconf
Step3. 在 /etc/vsftpd/userconf 之下新增一个名为 test1 的档案
内容增加一行:
local_max_rate=250000
Step4. 在 /etc/vsftpd/userconf 之下新增一个名为 test2 的档案
内容增加一行:
local_max_rate=500000
Step5. 重新启动 vsftpd
[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]
3.2.9-1. 建置一个防火墙下的 ftp server,使用 PORT FTP mode:
预设的 ftp port:21 以及 ftp data port:20
启动 VSFTPD 之后执行以下两行指令,只允许 port 21 以及 port 20 开放,其它关闭。
iptables -A INPUT -p tcp -m multiport --dport 21,20 -j ACCEPT
3 楼
iptables -A INPUT -p tcp -j REJECT --reject-with tcp-reset
3.2.9-2. 建置一个防火墙下的 ftp server,使用 PORT FTP mode:
ftp port:2121 以及 ftp data port:2020
Step1. 执行以下两行指令,只允许 port 2121 以及 port 2020 开放,其它关闭。
iptables -A INPUT -p tcp -m multiport --dport 2121,2020 -j ACCEPT
iptables -A INPUT -p tcp -j REJECT --reject-with tcp-reset
Step2. 修改 /etc/vsftpd/vsftpd.conf
新增底下两行
listen_port=2121
ftp_data_port=2020
Step3. 重新启动 vsftpd
[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]
在这边要注意, 8、9 两个例子中, ftp client(如 cuteftp)的联机方式不能够选择 passive mode,
否则无法建立数据的联机。也就是读者可以连上 ftp
server,但是执行 ls、get 等等的指令时,便无法运作。
3.2.10. 建置一个防火墙下的 ftp server,使用 PASS FTP mode:
ftp port:2121 以及 ftp data port 从 9981 到 9986。
Step1. 执行以下两行指令,只允许 port 2121 以及 port 9981-9990 开放,其它关闭。
iptables -A INPUT -p tcp -m multiport --dport
2121,9981,9982,9983,9984,9985,9986,9987,9988,9989,9990 -j ACCEPT
iptables -A INPUT -p tcp -j REJECT --reject-with tcp-reset
Step2. 修改 /etc/vsftpd/vsftpd.conf
新增底下四行
listen_port=2121
pasv_enable=YES
pasv_min_port=9981
pasv_max_port=9986
Step3. 重新启动 vsftpd
[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]
在这边要注意, 在 10 这个例子中, ftp client(如 cuteftp)的联机方式必须选择 passive mode,
否则无法建立数据的联机。也就是读者可以连上 ftp server,但是执行 ls,get 等等的指令时,
便无法运作。
3.2.11. 将 vsftpd 与 TCP_wrapper 结合
若是读者希望直接在 /etc/hosts.allow 之中定义允许或是拒绝的来源地址,可执行以下步骤。
这是简易的防火墙设定。
Step1. 确定 /etc/vsftpd/vsftpd.conf 之中 tcp_wrappers 的设定为 YES ,如下图所
示:
tcp_wrappers=YES
这是 RedHat9 的默认值,基本上不需修改。
Step2. 重新启动 vsftpd
[root@home vsftpd]# /sbin/service vsftpd restart
Shutting down vsftpd: OK ]
Starting vsftpd for vsftpd: OK ]
剩余46页未读,继续阅读
资源评论
czq131452007
- 粉丝: 2
- 资源: 12万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于风控模型的银行客户信用风险评估系统源码+项目说明+数据集(使用jupter notebook).zip
- python基于可变卷积改进的U-Net网络实现对胰腺细胞的精准切割源码(高分项目).zip
- python基于可变卷积改进的U-Net网络实现对胰腺细胞的精准切割源码(高分项目).zip
- 基于javascript实现的蚁群算法(JS代码)
- 基于python实现的随机森林(python代码)
- python读取excel到数据库中,简单的数据库管理脚本
- 7777端口抓包数据集
- IMG_0694.GIF
- 基于图像的三维模型重建C++源代码+文档说明(高分课程设计)
- 基于聚焦法的工件立体测量方案,根据数据进行三维重建 使用HALCON处理图像,MATLAB拟合数据+源代码+数据集+效果图
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功