设为首页 收藏本站
查看: 2876|回复: 0

[经验分享] Vsftpd完全攻略(三)基于系统用户支持ftp上传 访问和vsftp安全设置

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-3-9 08:43:29 | 显示全部楼层 |阅读模式
1.关闭匿名用户登录ftp支持匿名登录是不安全,所以要禁止匿名ftp登录
/etc/vsftpd/vsftpd.conf修改以下三项
anonymous_enable=NO
#anon_upload_enable=YES
#anon_mkdir_write_enable=YES

[iyunv@red-hat-5 ~]# service vsftpd restart
关闭vsftpd                                             [确定
vsftpd启动vsftpd                                     [确定
[iyunv@red-hat-5 ~]# ftp 127.0.0.1
Connected to 127.0.0.1.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (127.0.0.1:root): anonymous
331 Please specify the password. ------>提示登录失败说明已经禁
                                用匿名登录
Password:
530 Login incorrect.
Login failed.

2.创建一个系统用户来登录ftp
[iyunv@red-hat-5 ~]# useradd -s /sbin/nologin viong
建设一个不能登录系统用户. 只用来登录ftp服务 ,这里如果没设置用户目录。默认是在home

[iyunv@red-hat-5 ~]# passwd viong
Changing password for user viong.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
[iyunv@red-hat-5 ~]# ftp 127.0.0.1
Connected to 127.0.0.1.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (127.0.0.1:root): viong
331 Please specify the password. ------>提示登录成功
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.

接下来测试权限

ftp> put viong.txt 上传viong.txt文件成功
local: viong.txt remote: viong.txt
227 Entering Passive Mode (127,0,0,1,98,115)
150 Ok to send data.
226 File receive OK.
ftp> mkdir hong 创建hong目录文件成功
257 "/home/viong/hong" created
ftp> rmdir hong 删除hong目录文件成功
250 Remove directory operation successful.
ftp> pwd  显示家目录
257 "/home/viong"
ftp> cd /etc 切换/etc成功
250 Directory successfully changed.
ftp> mget passwd 下载passwd
mget passwd?
227 Entering Passive Mode (127,0,0,1,220,77)
150 Opening BINARY mode data connection for passwd (1429 bytes).
226 File send OK.
1429 bytes received in 5.9e-05 seconds (2.4e+04 Kbytes/s)
ftp> !ls 显示下载passwd成功
anaconda-ks.cfg  install.log  install.log.syslog  passwd  viong.txt

3.加强vsftp安全设置从以上可以看出ftp家目录存在安全漏洞所以要修改以下设置:
(1)限制系统用户锁定在家目录
Vi /etc/vsftpd/vsftpd.conf

去掉前面#
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list 限制更多系统用户

然后把所有用户加入/etc/vsftpd/chroot_list即可

[iyunv@red-hat-5 ~]# ls /etc/vsftpd/ chroot_list
默认是不存在需要我们手动建立
ftpusers  user_list  vsftpd.conf  vsftpd_conf_migrate.sh

[iyunv@red-hat-5 ~]# touch /etc/vsftpd/chroot_list
[iyunv@red-hat-5 ~]# cut -d : -f  1 /etc/passwd>>/etc/vsftpd/chroot_list
把本地用户都加入到chroot_list

cut命令是切去某一列-d是每列的分隔符-f 是切取第几列然后重定向到chroot文件

[iyunv@red-hat-5 ~]# ll /etc/vsftpd/
总计 24
-rw-r--r-- 1 root root  197 12-25 19:57 chroot_list
-rw--------1 root root 125 2007-12-13 ftpusers
ftpusers指的是阻止这个文件中的用户登陆
-rw------- 1 root root  361 2007-12-13 user_list
-rw------- 1 root root 4396 12-25 19:19 vsftpd.conf
-rwxr--r-- 1 root root  338 2007-12-13 vsftpd_conf_migrate.sh

(2)限制重要系统用户不能登录ftp权限
[iyunv@red-hat-5 ~]# cat /etc/vsftpd/ftpusers
默认会加入一些比较重要系统用户
# Users that are not allowed to login via ftp
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody

[iyunv@red-hat-5 ~]# echo viong >> /etc/vsftpd/ftpusers
把之前建的viong账号加进去测试

[iyunv@red-hat-5 ~]# ftp 127.0.0.1
Connected to 127.0.0.1.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (127.0.0.1:root): viong
331 Please specify the password.  ----->提示登录失败,说明生效了
Password:
530 Login incorrect.
Login failed.

(3)利用ftp用户策略允许登录ftp的系统用户
系统添加一个用户也默认有ftp的登陆权限,是不安全,要一个个设置,有点繁琐。利用ftp用户策略解决这个问题,user_list文件设置,只有user_list中存在的用户才能登录系统

修改配置文件:vi  /etc/vsftpd/vsftpd.conf

userlist_enable=YES文件后面添加
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list

[iyunv@red-hat-5 ~]# service vsftpd restart
关闭vsftpd                                             [确定
vsftpd启动vsftpd                                     [确定

[iyunv@red-hat-5 ~]# ftp 127.0.0.1
Connected to 127.0.0.1.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (127.0.0.1:root): viong
530 Permission denied.   ------------->提示登录失败
Login failed.
[iyunv@red-hat-5 ~]# echo viong >> /etc/vsftpd/user_list
viong账号加入到 user_list

[iyunv@red-hat-5 ~]# ftp 127.0.0.1
Connected to 127.0.0.1.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (127.0.0.1:root): viong
331 Please specify the password.  ------------->提示登录成功
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.

(4)设置登录ftp目标ip地址
为了让ftp更安全我们设置ftp目标ip地址访问

C:\Users\Administrator>ipconfig 查看本地ip

...................................

以太网适配器 VMware Network Adapter VMnet1:6

   连接特定的 DNS 后缀 . . . . . . . :
   IPv4 地址 . . . . . . . . . . . . : 192.168.184.1
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . :

只允许这个ip地址访问ftp ssh,可以写条iptable做限制.
如下

[iyunv@red-hat-5 ~]# iptables -A INPUT -p tcp -s 192.168.184.1 --dport 22 -j ACCEPT
允许192.168.184.1访问本地 22端口
[iyunv@red-hat-5 ~]# iptables -A INPUT -p tcp -s 192.168.184.1 --dport 21 -j ACCEPT
允许192.168.184.1访问本地 21端口
[iyunv@red-hat-5 ~]# iptables -A INPUT -p tcp -s 192.168.184.1 --dport 65341:65351 -j ACCEPT
允许192.168.184.1访问本地 PASV端口
[iyunv@red-hat-5 ~]# iptables -P INPUT DROP  禁止任何输入的数据包
[iyunv@red-hat-5 ~]# service iptables save 保存iptables设置
将当前规则保存到 /etc/sysconfig/iptables:                 [确定
[iyunv@red-hat-5 ~]# service iptables status 检查iptables的设置
表格:filter
Chain INPUT (policy DROP)
num  target     prot opt source               destination         
1    RH-Firewall-1-INPUT  all  --  0.0.0.0/0            0.0.0.0/0           
2    ACCEPT     tcp  --  192.168.184.1        0.0.0.0/0           tcp dpt:22
3    ACCEPT     tcp  --  192.168.184.1        0.0.0.0/0           tcp dpt:21
4    ACCEPT    tcp -192.168.184.1        0.0.0.0/0      tcp dpts:65341:65351

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-44700-1-1.html 上篇帖子: Vsftpd完全攻略(二)设置匿名用户也支持下载和上传与创建目录 下篇帖子: Vsftpd完全攻略(四)搭建支持SSL加密传输的vftpd 完全攻略 用户
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表