centos 7 vsftpd?centos镜像下载
大家好,关于centos 7 vsftpd很多朋友都还不太明白,今天小编就来为大家分享关于centos镜像下载的知识,希望对各位有所帮助!
基于CentOS7系统配置vsftpd服务(2)—虚拟用户模式加密传输
基于CentOS7系统配置vsftpd服务,实现虚拟用户模式下的加密传输,是本文的核心内容。首先,安装vsftpd服务,然后通过一系列步骤,如创建明文和哈希转换后的用户数据库文件、设置FTP用户权限、自签名证书生成、主配置文件的编辑,以启用FTP over TLS。安全配置上,包括Firewall和SeLinux的设置,确保加密传输的完整性。
在实践目标上,目标是实现FTP信息的加密传输,避免明文传输。在具体操作中,分为显式和隐式两种方式。显式FTP over TLS要求客户端通过特定端口(如21)连接,建立加密通道后进行登录和数据传输。隐式FTP over TLS则通过990端口,无需显式指定加密方式,同样建立安全连接。
通过FileZilla客户端的测试,可以看到加密传输过程中的报文交互和数据传输。总结来说,CentOS7下vsftpd的加密配置不仅提高了数据安全性,也区分了显式和隐式两种连接方式,值得在实际项目中应用。
Centos7.5搭建FTP服务-vsftpd(详细)
FTP,即文件传输协议,用于网络上进行文件传输的标准协议,属于应用层协议。CentOS 7.5中,使用vsftpd搭建FTP服务,步骤如下:
1.安装vsftpd:yum install vsftpd
2.设置防火墙允许FTP服务:firewall-cmd--add-service=ftp--permanent,并永久开放20/tcp和21/tcp端口。
3.设置SELinux:setsebool ftpd_full_access 1,允许访问FTP服务。
4.启动FTP服务并登录:使用ftp localhost命令登录。
5.局域网测试:配置本地网络参数,如IP、子网掩码、网关等,使用FileZilla Client进行测试。
6.配置vsftpd.conf,设置服务器参数,如用户认证、权限管理等。
7.使用虚拟用户认证,步骤包括建立数据库文件、创建虚拟用户、配置PAM认证文件等。
8.认识vsftpd传输模式,主动模式和被动模式的差异。
9.解决常见错误,如500 OOPS:priv_sock_get_cmd,检查SELinux和PAM文件配置。
CentOS 7.5搭建FTP服务使用vsftpd程序,通过配置vsftpd.conf文件设置服务器参数,并使用虚拟用户认证增强安全性。
CentOS64中出现Vsftpd中文乱码解决过程
Windows客户端访问FTP应用服务器出现乱码。这是由于UTF-8与GBK不兼容而头疼的引起的,采用源码方式编译安装就可将此问题解决。
乱码解决过程:
1、首先使用 rpm-e vsftpd卸载系统安装的默认VSFTPD应用服务器:
[root@localhost~]# rpm-e vsftpd
2、从网站下载vsftpd-2.2.2-11.el6_3.1.src.rpm源码包。
3、使用 rpm-ivh vsftpd-2.2.2-11.el6_3.1.src.rpm对该包进行安装:
[root@localhost birdofprey]# rpm-ivh vsftpd-2.2.2-11.el6_3.1.src.rpm
安装过程中系统会提示类似如下错误:
warning: vsftpd-2.2.2-11.el6_3.1.src.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
1:vsftpd warning: user mockbuild does not exist- using root
########################################### [100%]
warning: user mockbuild does not exist- using root
warning: group mockbuild does not exist- using root
warning: user mockbuild does not exist- using root
warning: group mockbuild does not exist- using root
warning: user mockbuild does not exist- using root
warning: group mockbuild does not exist- using root
此时需要使用adduser mockbuild命令创建mockbuild用户:
[root@localhost birdofprey]# adduser mockbuild
4、重新使用rpm-ivh vsftpd-2.2.2-11.el6_3.1.src.rpm对该包进行安装:
[root@localhost birdofprey]# rpm-ivh vsftpd-2.2.2-11.el6_3.1.src.rpm
warning: vsftpd-2.2.2-11.el6_3.1.src.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
1:vsftpd########################################### [100%]
5、使用命令 cd/root/ rpmbuild/SOURCES/vsftpd/SOURCES进入vsftpd源码包目录,并使用tar-zxvf vsftpd-2.2.2.tar.gz解压vsftpd-2.2.2.tar.gz源码包:
[root@localhost SOURCES]# tar-zxvf vsftpd-2.2.2.tar.gz
6、使用命令cd vsftdp-2.2.2进入vsfftpd-2.2.2源码目录:
[root@localhost SOURCES]# cd vsftpd-2.2.2
7、使用命令vi features.c修改 features.c文件;将行内容为:vsf_cmdio_write_raw(p_sess," UTF8\r\n");
修改为://vsf_cmdio_write_raw(p_sess," UTF8\r\n")。
8、使用命令vi opts.c修改 opts.c文件;
将handle_opts函数修改成如下:
复制代码代码如下:
void
handle_opts(struct vsf_session* p_sess)
{
str_upper(&p_sess->ftp_arg_str);
//if(str_equal_text(&p_sess->ftp_arg_str,"UTF8 ON"))
//{
//vsf_cmdio_write(p_sess, FTP_OPTSOK,"Always in UTF8 mode.");
//}
//else
//{
//vsf_cmdio_write(p_sess, FTP_BADOPTS,"Option not understood.");
//}
}
9、返回上层目录并使用 tar-zcvf vsftpd-2.2.2.tar.gz vsftpd-2.2.2/命令重新压缩vsftpd-2.2.2.tar.gz文件:
[root@localhost SOURCES]# tar-zcvf vsftpd-2.2.2.tar.gz vsftpd-2.2.2/
我们使用ls-命令可以看到列表中vsftpd-2.2.2.tar.gz文件创建时间已经为当前创建时间,如下所示:
复制代码代码如下:
-rw-rw-r--. 1 mockbuild mockbuild 186982 5月 3 15:39 vsftpd-2.2.2.tar.gz
-rw-r--r--. 1 mockbuild mockbuild 2828 2月 13 00:06 vsftpd-2.2.2-uint-uidgid.patch
-rw-r--r--. 1 mockbuild mockbuild 1640 2月 13 00:06 vsftpd-2.2.2-v6only.patch
-rw-r--r--. 1 mockbuild mockbuild 514 2月 13 00:06 vsftpd-close-std-fds.patch
-rwxr-xr-x. 1 mockbuild mockbuild 338 2月 13 00:06 vsftpd_conf_migrate.sh
-rw-r--r--. 1 mockbuild mockbuild 125 2月 13 00:06 vsftpd.ftpusers
-rwxr-xr-x. 1 mockbuild mockbuild 2824 2月 13 00:06 vsftpd.init
-rw-r--r--. 1 mockbuild mockbuild 335 2月 13 00:06 vsftpd.pam
-rw-r--r--. 1 mockbuild mockbuild 361 2月 13 00:06 vsftpd.user_list
-rw-r--r--. 1 mockbuild mockbuild 345 2月 13 00:06 vsftpd.xinetd
10、进入源码包下的 SPECS目录,并使用rpmbuild-bb vsftpd.spec命令生成vsftpd-2.2.2-11.el6.1.x86_64.rpm:
[root@localhost SPECS]# rpmbuild-bb vsftpd.spec
此时因为系统缺少依赖包会报如下错误:
error: Failed build dependencies:
libcap-devel is needed by vsftpd-2.2.2-11.el6.1.x86_64
tcp_wrappers-devel is needed by vsftpd-2.2.2-11.el6.1.x86_64
我们可以从CentOS6.4安装盘中找到如下RPM软件包进行手动安装,包名如下:
libattr-2.4.44-7.el6.i686.rpm libcap-devel-2.16-5.5.el6.x86_64.rpm
libattr-2.4.44-7.el6.x86_64.rpm tcp_wrappers-devel-7.6-57.el6.i686.rpm
libattr-devel-2.4.44-7.el6.i686.rpm tcp_wrappers-devel-7.6-57.el6.x86_64.rpm
libattr-devel-2.4.44-7.el6.x86_64.rpm tcp_wrappers-libs-7.6-57.el6.i686.rpm
libcap-2.16-5.5.el6.i686.rpm tcp_wrappers-libs-7.6-57.el6.x86_64.rpm
libcap-2.16-5.5.el6.x86_64.rpm vsftpd-2.2.2-11.el6_3.1.src.rpm
libcap-devel-2.16-5.5.el6.i686.rpm
11、将以上各包使用rpm-ivh*.rpm-force--nodeps命令进行强制安装:
[root@localhost rpm]# rpm-ivh*.rpm--force--nodeps
warning: libattr-2.4.44-7.el6.i686.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing...########################################### [100%]
1:libattr########################################### [ 8%]
2:libcap########################################### [ 17%]
3:tcp_wrappers-libs########################################### [ 25%]
4:libattr########################################### [ 33%]
5:libcap########################################### [ 42%]
6:tcp_wrappers-libs########################################### [ 50%]
7:tcp_wrappers-devel########################################### [ 58%]
8:libcap-devel########################################### [ 67%]
9:libattr-devel########################################### [ 75%]
10:tcp_wrappers-devel########################################### [ 83%]
11:libcap-devel########################################### [ 92%]
12:libattr-devel########################################### [100%]
12、再次使用rpmbuild-bb vsftpd.spec对vsftpd-2.2.2-11.el6.1.x86_64.rpm包重新进行编译:
[root@localhost SPECS]# rpmbuild-bb vsftpd.spec
13、进入x86_64目录,此时可以看到该目录下已经生成相关RPM包:
命令模式如下:
复制代码代码如下:
[root@localhost RPMS]# cd x86_64/
[root@localhost x86_64]# ls
vsftpd-2.2.2-11.el6.1.x86_64.rpm vsftpd-debuginfo-2.2.2-11.el6.1.x86_64.rpm
14、重新安装进行过源码修改的vsftpd应用服务器组件包:
[root@localhost x86_64]# rpm-ivh vsftpd-2.2.2-11.el6.1.x86_64.rpm
Preparing...########################################### [100%]
1:vsftpd########################################### [100%]
15、CentOS6.4修改系统默认字符集:
[root@localhost/]# vi/etc/sysconfig/i18n
将原文件修改为如下内容:
复制代码代码如下:
#LANG="zh_CN.UTF-8"
LANG="zh_CN.GB18030"
SUPPORTED="zh_CN.GB18030:zh_CN:zh:zh_CN.GB2312:en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"
此时所有修改工作已经完成,重起FTP应用服务器之后我们在windows系统中使用IE浏览器以及前期应用软件进行测试中文乱码问题消失。该解决办法同样适用于RHEL6系列操作系统中存在的VSFTPD于windows客户端字符集兼容原因导致的乱码问题。