CentOS6源码安装VSFTPD3
还是碰到老问题:安全扫描,由于CentOS6上VSFTPD最高支持到V2.2.2,目前已经是官方支持的最新版本(发布了几年...)
但有安全漏洞,又没法通过限制访问进行控制,只能想办法升级到最新版本了。
关闭服务 service vsftpd stop service iptables stop sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config;
检查旧版vsftpd版本 vsftpd -v
卸载旧版vsftpd yum remove -y vsftpd
安装依赖包: yum install -y libcap libcap-devel tcp_wrappers tcp_wrappers-devel
编译安装源码包 tar -xzvf vsftpd-3.0.3.tar.gz cd vsftpd-3.0.3
修改显示 sed -i 's/UTF8 ON/DISABLE UTF8 ON/g' opts.c
编译安装
make &;&; make install`
mkdir /etc/vsftpd/
cp vsftpd.conf /etc/vsftpd/
cp RedHat/vsftpd.pam /etc/pam.d/vsftpd #PAM认证文件
sed -i 's/lib///lib64///g' /etc/pam.d/vsftpd
如果不成功,手动修改/etc/pam.d/vsftpd中的lib为lib64
启动并查看
vsftpd /usr/local/sbin/vsftpd &
netstat -tunlp | grep 21
/usr/local/sbin/vsftpd -v
cp /usr/local/sbin/vsftpd /usr/sbin/vsftpd
制作启动脚本 vim /etc/xinetd.d/vsftpd disable = yes
重启xinetd服务service xinetd restart
修改启动脚本:
vim /etc/init.d/vsftpd
#!/bin/bash
#
# vsftpd This shell script takes care of starting and stopping
# standalone vsftpd. Customized to be used with CentOS 5.4
# and Monit by creating PID files for each process
#
# chkconfig: - 60 50
# description: Vsftpd is a ftp daemon, which is the program \
# that answers incoming ftp service requests.
# processname: vsftpd
# config: /etc/vsftpd/vsftpd.conf
# Source function library.
. /etc/rc.d/init.d/functions
RETVAL=0
prog="vsftpd"
site="$prog"
sbin="/usr/sbin/vsftpd"
conf="/etc/vsftpd/vsftpd.conf"
pidfile="/var/run/vsftpd/vsftpd.pid"
[ -d /var/run/$prog ] || mkdir -p /var/run/$prog
start() {
[ -x $sbin ] || exit 1
[ -r $conf ] || exit 1
if [ -f $pidfile ]; then
pid=`cat $pidfile`
ps -ef | grep -v grep | grep $pid | grep $sbin > /dev/null
if [ $? -eq 0 ]; then
echo "$prog already running!"
exit 1
else
rm -f $pidfile
fi
fi
echo -n $"Starting $prog: "
$sbin $conf &
[ $? -eq 0 ] && success || failure
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
pidcmd=`ps -ef | grep -v grep | grep $sbin | awk '{print $2}'`
echo $pidcmd > $pidfile
echo
return $RETVAL
}
stop() {
echo -n $"Shutting down $prog: "
killproc $prog
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog
rm -f $pidfile
return $RETVAL
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
stop
start
RETVAL=$?
;;
condrestart)
if [ -f /var/lock/subsys/$prog ]; then
stop
start
RETVAL=$?
fi
;;
status)
status $prog
RETVAL=$?
;;
*)
echo $"Usage: $0 {start|stop|restart|condrestart|status}"
exit 2
esac
exit $RETVAL
授权755
chmod 755 /etc/init.d/vsftpd
chkconfig vsftpd on
修改配置文件
vim /etc/vsftpd/vsftpd.conf
---
验证
service vsftpd restart
vsftpd -v
贴一个主要配置:
local_root=/home
chroot_local_user=YES
chroot_list_enable=YES
allow_writeable_chroot=YES
chroot_list文件不包含要使用的FTP用户名!
解决报错500 OOPS: vsftpd: refusing to run with writable root inside chroot ()
另,和以前版本不一样配置(估计没用):
cat /etc/vsftpd/user_config/ftpuser
write_enable=YES
CentOS6源码安装VSFTPD3的更多相关文章
- CentOS6源码安装vim8
CentOS6源码安装vim8 vim8相比vim7多了很多功能. 不过需要源码来进行安装. 移除旧版本的vim yum remove vim 安装依赖库 sudo yum install -y ru ...
- CentOS下源码安装vsftpd-3.0.0,并设置指定用户访问指定目录(附带完整配置文件)
1.卸载系统已经存在的ftp服务器 因为是源码安装,所以不能通过rpm -qa的方式查看是否已经安装ftp服务器,可以通过find / | grep vsftp*方式查看系统中存在哪些与vsftpd相 ...
- CentOS6源码安装zabbix服务器
1.下载安装包并解压 2.预环境搭建 3.创建zabbix用户,编译安装zabbix 4.配置mysql 5.配置zabbix-server 6.配置apache和php 7.添加开机自启动 1 yu ...
- Centos6 源码安装mysql5.6
这里介绍如何使用centos6.*来安装mysql5.6版本. 先做一下准备工作 确定好用于运行mysql的用户,安全起见,建议拒绝次用户登录,仅用于运行程序. useradd mysql -s/sb ...
- Centos6.6上源码安装Nodejs V4版本
本来就是想在vps上装一个Ghost博客,这个博客依赖的是Nodejs,然后推荐的是V4版本.然后我就对着官网的步骤安装,发现根本没有Centos6 i386的资源了(64位的还是有的), 我只能在那 ...
- CentOS6.7源码安装MySQL5.6
1.源码安装MySQL5.6 # CentOS6操作系统安装完成后,默认会在/etc目录下存在一个my.cnf, # 强制卸载了mysql-libs之后,my.cnf就会消失 rpm -qa | gr ...
- CENTOS6.5源码安装LNMP
CENTOS6.5源码安装LNMP 一.安装前准备 ########################################################################## ...
- [转帖]CENTOS6.6下mysql5.7.11带boost和不带boost的源码安装
CENTOS6.6下mysql5.7.11带boost和不带boost的源码安装 本文来自我的github pages博客http://galengao.github.io/ 即www.gaohuir ...
- CentOS6.5源码安装MySQL5.6.35
CentOS6.5源码安装MySQL5.6.35 一.卸载旧版本 1.使用下面的命令检查是否安装有mysql [root@localhost tools]# rpm -qa|grep -i mysql ...
随机推荐
- RHCE基础环境系统的搭建
RHCE基础环境系统的搭建 安装前提: 安装的时候对系统和硬件的要求: 红帽系统安装队系统的要求:Windows操作系统选择64位的内存至少6GCPU需要支持虚拟化技术在做红帽系统实验的时候,把360 ...
- 虚拟机centos无法连接外网时怎么处理
1. 首先查看service 如果没有启动请启动这2个服务. 2. 在虚拟机那重启网络端口 ifdown ens33 ifup ens33
- Word 测试下发布博客
目录 语法. 3 NULL,TRUE,FALSE 3 大小端存储 4 类型转换 4 转义字符 5 运算符的优先级 5 表达式(a=b=c) 7 *pa++=* ...
- MyBatis-Plugins 的创建流程与执行顺序
一.插件的解析,所有插件都会被添加到 InterceptorChain 类中,用于后续处理 org.apache.ibatis.builder.xml.XMLConfigBuilder private ...
- css3 rotate(1turn)的用法
1turn:一圈,一个圆共一圈. 90deg = 0.25turn.
- css3好看的background渐变背景色积累
1. Tippy.js background: linear-gradient(91deg,#f1eefc,#9dc6ff 70%,#a5bcff);(body背景色) background: lin ...
- jquery遇到的问题
1.关于$.fn $.fn是指jquery的命名空间,加上fn上的方法及属性,会对jquery实例每一个有效. 如扩展$.fn.abc(),即$.fn.abc()是对jquery扩展了一个abc方法, ...
- 打印流PrintStream
打印流PrintStream PrintStream extends OutputStream 1.打印流的特点 只负责数据的输出,不负责数据的读取 与其他的流不同,打印流永远不会抛出IOExcept ...
- Django之名称空间
由于name没有作用域,Django在反解URL时,会在项目全局顺序搜索,当查找到第一个name指定URL时,立即返回. project/urls.py urlpatterns = [ path('a ...
- 数据建模工具系列 之 让Oracle Data Modeler支持Vertica
引子 在上篇博客中重点介绍了几个建模工具的评估, 并选定了SQL Power Architect作为最终的建模工具, 在评估过程中也对Oracle Data Modeler支持Vertica做了点研究 ...