如何实现ftp的安全 简易的防火墙tcp_wrappers 和ca认证
2012-12-19 21:58
429 查看
实现安全的ftp访问
方法一:利用vsftp主配置文件中的tcp_wrappers (简易的防火墙)实现
方法二:利用CA认证实现安全的ftp访问
方法一的实现步骤:
1.主要修改的文件是/etc/hosts.allow /etc/hosts.deny
[root@mail ~]# ldd `which vsftpd`
2.控制实现的效果是只有192.168.1.0网络的能访问,其他的无法访问
[root@mail ~]# man 5 hosts.allow
[root@mail ~]# vim /etc/hosts.allow
vsftpd:192.168.1.0/255.255.255.0:allow (改写的东西)
[root@mail ~]# vim /etc/hosts.deny
vsftpd:all:deny
3.要实现针对于1.1的这个主机不能ftp。其他的都能。
[root@mail ~]# vim /etc/hosts.allow
vsftpd:192.168.1.1:deny
vsftpd:all:allow (添加的东西)
这样就可以实现效果了。这里只改写了allow文件,那个deny文件已经不起作用了,主要是系统先看allow的才看deny的
CA实现ftp的安全
[root@mail Server]# ll wir*
-r--r--r-- 328 root root 94405 2007-01-19 wireless-tools-28-2.el5.i386.rpm
-r--r--r-- 327 root root 24200 2007-01-19 wireless-tools-devel-28-2.el5.i386.rpm
-r--r--r-- 220 root root 11130359 2009-06-11 wireshark-1.0.8-1.el5_3.1.i386.rpm
-r--r--r-- 220 root root 686650 2009-06-11 wireshark-gnome-1.0.8-1.el5_3.1.i386.rpm
[root@mail Server]# yum install wireshark-1.0.8-1.el5_3.1.i386.rpm
[root@mail Server]# tshark -ni eth0 -R "tcp.dstport eq 21" (用于抓包通过这个端口的流量)
[root@mail ftproot]# cd /etc/pki/CA/
[root@mail pki]# vim ./tls/openssl.cnf
[root@mail CA]# touch index.txt serial
[root@mail CA]# mkdir certs newcerts crl
[root@mail pki]# echo "01" >serial
[root@mail CA]# openssl genrsa 1024 >private/cakey.pem
[root@mail CA]# chmod 600 private/*
[root@mail CA]# openssl req -new -key private/cakey.pem -x509 -out cacert.pem
[root@mail pki]# mkdir -pv /etc/vsftpd/certs
[root@mail pki]# mkdir -pv /etc/vsftpd/certs
mkdir: 已创建目录 “/etc/vsftpd/certs”
[root@mail pki]# cd /etc/vsftpd/certs/
[root@mail certs]# openssl genrsa 1024 >vsftpd.key
[root@mail certs]# openssl req -new -key vsftpd.key -out vsftpd.crq
[root@mail certs]# openssl ca -in vsftpd.crq -out vsftpd.cert
[root@mail certs]# ll
总计 12
-rw-r--r-- 1 root root 3061 12-19 03:11 vsftpd.cert
-rw-r--r-- 1 root root 647 12-19 03:10 vsftpd.crq
-rw-r--r-- 1 root root 887 12-19 03:09 vsftpd.key
[root@mail certs]# chmod 600 /etc/pki/CA/certs/*
[root@mail certs]# ll
总计 12
-rw------- 1 root root 3061 12-19 03:11 vsftpd.cert
-rw------- 1 root root 647 12-19 03:10 vsftpd.crq
-rw------- 1 root root 887 12-19 03:09 vsftpd.key
实现服务器与CA的连接
[root@mail certs]# vim /etc/vsftpd/vsftpd.conf
force_local_data_ssl=YES #指定vsftpd强制非匿名用户使用加密的数据传输
force_local_logins_ssl=YES #指定vsftpd强制非匿名用户使用加密登录
ssl_enable=YES #指定vsftpd支持加密协议
ssl_sslv2=YES #指定vsftpd支持安全套接字层v2
ssl_sslv3=YES #指定vsftpd支持安全套接字层v3
ssl_tlsv1=YES #指定vsftpd支持tls加密方式v1
rsa_cert_file=/etc/vsftpd/certs/vsftpd.cert #指定ftp-server的证书路径
rsa_private_key_file=/etc/vsftpd/.sslkey/vsftpd.key #指定ftp-server的私路径
6)只有lftp命令和第三方工具才支持访问ftps。下面以FlashFXP为例讲述如何连接到ftps。
a.打开FlashFXP后,选择"站点"-->"站点管理器",新建一个站点,如下图:
本文出自 “于东华的博客” 博客,请务必保留此出处http://yudonghua.blog.51cto.com/6111084/1094501
方法一:利用vsftp主配置文件中的tcp_wrappers (简易的防火墙)实现
方法二:利用CA认证实现安全的ftp访问
方法一的实现步骤:
1.主要修改的文件是/etc/hosts.allow /etc/hosts.deny
[root@mail ~]# ldd `which vsftpd`
2.控制实现的效果是只有192.168.1.0网络的能访问,其他的无法访问
[root@mail ~]# man 5 hosts.allow
[root@mail ~]# vim /etc/hosts.allow
vsftpd:192.168.1.0/255.255.255.0:allow (改写的东西)
[root@mail ~]# vim /etc/hosts.deny
vsftpd:all:deny
3.要实现针对于1.1的这个主机不能ftp。其他的都能。
[root@mail ~]# vim /etc/hosts.allow
vsftpd:192.168.1.1:deny
vsftpd:all:allow (添加的东西)
这样就可以实现效果了。这里只改写了allow文件,那个deny文件已经不起作用了,主要是系统先看allow的才看deny的
CA实现ftp的安全
[root@mail Server]# ll wir*
-r--r--r-- 328 root root 94405 2007-01-19 wireless-tools-28-2.el5.i386.rpm
-r--r--r-- 327 root root 24200 2007-01-19 wireless-tools-devel-28-2.el5.i386.rpm
-r--r--r-- 220 root root 11130359 2009-06-11 wireshark-1.0.8-1.el5_3.1.i386.rpm
-r--r--r-- 220 root root 686650 2009-06-11 wireshark-gnome-1.0.8-1.el5_3.1.i386.rpm
[root@mail Server]# yum install wireshark-1.0.8-1.el5_3.1.i386.rpm
[root@mail Server]# tshark -ni eth0 -R "tcp.dstport eq 21" (用于抓包通过这个端口的流量)
[root@mail ftproot]# cd /etc/pki/CA/
[root@mail pki]# vim ./tls/openssl.cnf
[root@mail CA]# touch index.txt serial
[root@mail CA]# mkdir certs newcerts crl
[root@mail pki]# echo "01" >serial
[root@mail CA]# openssl genrsa 1024 >private/cakey.pem
[root@mail CA]# chmod 600 private/*
[root@mail CA]# openssl req -new -key private/cakey.pem -x509 -out cacert.pem
[root@mail pki]# mkdir -pv /etc/vsftpd/certs
[root@mail pki]# mkdir -pv /etc/vsftpd/certs
mkdir: 已创建目录 “/etc/vsftpd/certs”
[root@mail pki]# cd /etc/vsftpd/certs/
[root@mail certs]# openssl genrsa 1024 >vsftpd.key
[root@mail certs]# openssl req -new -key vsftpd.key -out vsftpd.crq
[root@mail certs]# openssl ca -in vsftpd.crq -out vsftpd.cert
[root@mail certs]# ll
总计 12
-rw-r--r-- 1 root root 3061 12-19 03:11 vsftpd.cert
-rw-r--r-- 1 root root 647 12-19 03:10 vsftpd.crq
-rw-r--r-- 1 root root 887 12-19 03:09 vsftpd.key
[root@mail certs]# chmod 600 /etc/pki/CA/certs/*
[root@mail certs]# ll
总计 12
-rw------- 1 root root 3061 12-19 03:11 vsftpd.cert
-rw------- 1 root root 647 12-19 03:10 vsftpd.crq
-rw------- 1 root root 887 12-19 03:09 vsftpd.key
实现服务器与CA的连接
[root@mail certs]# vim /etc/vsftpd/vsftpd.conf
force_local_data_ssl=YES #指定vsftpd强制非匿名用户使用加密的数据传输
force_local_logins_ssl=YES #指定vsftpd强制非匿名用户使用加密登录
ssl_enable=YES #指定vsftpd支持加密协议
ssl_sslv2=YES #指定vsftpd支持安全套接字层v2
ssl_sslv3=YES #指定vsftpd支持安全套接字层v3
ssl_tlsv1=YES #指定vsftpd支持tls加密方式v1
rsa_cert_file=/etc/vsftpd/certs/vsftpd.cert #指定ftp-server的证书路径
rsa_private_key_file=/etc/vsftpd/.sslkey/vsftpd.key #指定ftp-server的私路径
6)只有lftp命令和第三方工具才支持访问ftps。下面以FlashFXP为例讲述如何连接到ftps。
a.打开FlashFXP后,选择"站点"-->"站点管理器",新建一个站点,如下图:
本文出自 “于东华的博客” 博客,请务必保留此出处http://yudonghua.blog.51cto.com/6111084/1094501
相关文章推荐
- 如何实现安全的FTP服务
- Linux如何启用tcp_wrappers防火墙
- 云安全之Neutron 是如何实现虚机防火墙的 [How Neutron Implements Security Group]
- 如何在 CentOS 7 中安装、配置和安全加固 FTP 服务
- FTP服务器工作原理及如何通过PAM认证实现虚拟用户登录;
- firewall-cmd 防火墙命令详解 及 TCP Wrappers
- 在Linux下如何快速搭建安全的FTP服务器
- tcp服务器和防火墙是如何识别已连接套接字的???
- Android开发:如何实现TCP和UDP传输
- Win10如何搭建FTP服务器以实现快速传输文件?
- 在Android操作系统中如何使用Socket编程实现简易聊天室
- 云管理平台如何帮助企业实现云安全管理
- 在线教育网站如何更好的实现视频安全视频保护?
- TCP_Wrappers实现访问控制
- Tomcat如何实现资源安全管理
- TCP在P2P技术中如何实现NAT
- 如何实现基于tcp进行http交互
- vsftpd+mysql+pam实现基于数据库的安全的ftp服务
- 如何使用网络单片机W7100A实现TCP通信?