公司的旧版直播服务器使用的是CentOS 6.7,很多软件包都是几年前的了。最近很多安全相关的新闻充斥着IT圈,先是Intel芯片有重大安全漏洞,后面MacOS爆安全漏洞。所以,对于安全问题还真不能小觑。

接下任务,由于以前做华为核心网的项目,也有过相关的经验,大部分无非就是配置一下,或者升级软件包。经过一上午的折腾,终于完成升级包的制作,Linux就是方便。

升级脚本update.sh内容:

#!/bin/bash

#stop ntp
service ntpd stop
chkconfig --list ntpd
chkconfig ntpd off #openssl-flip
sudo tar xzvf openssl-fips-2.0.16.tar.gz
cd openssl-fips-2.0.16
sudo ./config
sudo make
sudo make install
cd .. #ssl
sudo tar xzvf openssl-1.0.2n.tar.gz
cd openssl-1.0.2n
sudo ./config fips --shared
sudo make
sudo make install sudo mv /usr/bin/openssl /usr/bin/openssl.OFF
sudo mv /usr/include/openssl /usr/include/openssl.OFF sudo ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
sudo ln -s /usr/local/ssl/include/openssl /usr/include/openssl
sudo echo "/usr/local/ssl/lib" >>/etc/ld.so.conf
sudo /sbin/ldconfig -v
sudo openssl version -a
cd .. #ssh
sudo tar xzvf openssh-7.6p1.tar.gz
cd openssh-7.6p1
sudo ./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-zlib --with-ssl-dir=/usr/local/ssl --with-md5-passwords --mandir=/usr/share/man
sudo make
sudo make install
sudo sed -i 's/#Protocol 2,1/Protocol 2,1/g' /etc/ssh/sshd_config
sudo sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config
sudo sed -i 's/#PermitRootLogin yes/PermitRootLogin yes/g' /etc/ssh/sshd_config
sudo sed -i 's/#StrictModes yes/StrictModes yes/g' /etc/ssh/sshd_config
sudo service sshd restart
cd .. #vsftp
#安装libcap依赖包
rpm -ivh libcap-devel-2.16-5.5.el6.x86_64.rpm
#此处卸载ftp的地方先看下原来装系统默认安装的是什么版本,使用rpm -qa vsftp可以查看安装包名称
rpm -e vsftpd-2.2.2-14.el6.x86_64
tar -xzf vsftpd-3.0.3.tar.tar
cd vsftpd-3.0.3
sudo make
sudo make install
cd ..
#如果要保留之前的配置文件,请先备份/etc/vsftp相关的配置
#新版的安装包对安全做了一些配置,所以要先修改配置文件,安装时直接拷贝到/etc/目录下
#具体配置见安装包
\cp -R vsftpd/ /etc/
\cp -rf xinetd.d/vsftpd /etc/xinetd.d/
\cp -rf init.d/vsftpd /etc/init.d/vsftpd
sudo chkconfig vsftpd on
service vsftpd restart
sudo chkconfig --list vsftpd
sudo echo "update success!"

作为服务的启动停止脚本文件/etc/init.d/sftpd

#!/bin/bash
#
# vsftpd This Shell script takes care of starting and stopping
# standalone vsftpd.
#
# chkconfig: - 60 50
# description: Vsftpd is a ftp daemon, which is the program
# that answers incoming ftp service requests.
# processname: vsftpd
# config: /etc/vsftpd.conf
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
[ -x /usr/local/sbin/vsftpd ] || exit 0
RETVAL=0
prog="vsftpd"
start() {
# Start daemons.
if [ -d /etc ] ; then
for i in `ls /etc/vsftpd/vsftpd.conf`; do
site=`basename $i .conf`
echo -n $"Starting $prog for $site: "
/usr/local/sbin/vsftpd $i &
RETVAL=$?
[ $RETVAL -eq 0 ] && {
touch /var/lock/subsys/$prog
success $"$prog $site"
}
echo
done
else
RETVAL=1
fi
return $RETVAL
}
stop() {
# Stop daemons.
echo -n $"Shutting down $prog: "
killproc $prog
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog
return $RETVAL
}
# See how we were called.
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 1
esac
exit $RETVAL

vsftp.conf配置文件修改:

pam_service_name=vsftpd
userlist_enable=YES
#此处需要指定user_list的路径
userlist_file=/etc/vsftpd/user_list
#如果没有启用则改成NO
tcp_wrappers=NO
userlist_deny=NO
chroot_local_user=YES
#如果FTP根目录有读写权限,需要修改为YES
allow_writeable_chroot=YES

另外vsftp还有很多安全相关的没有配置,有时间再慢慢研究

升级包下载地址:https://pan.baidu.com/s/1pMjjZLL

[服务器安全]升级OpenSSH,OpenSSL,vsftp,关闭NTP服务的更多相关文章

  1. centos7.6 升级openssh openssl

    centos7.3和centos7.6升级完毕测试登录ssh以及重启后登录ssh均无问题. 前期请自行配置好yum源(如果不会请百度) 整个过程不需要卸载原先的openssl包和openssh的rpm ...

  2. CentOS 7升级OpenSSH

    目录 下载openssh安装包 安装telnet 卸载旧的openssh 安装依赖 安装openssh 重启验证 关闭telnet服务 参考 下载openssh安装包 下载地址 wget https: ...

  3. centos6.3 配置NTP服务

    NTP简介: NTP(Network Time Protocol)是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源做同步化,它可以提供高精准度的时间校正.本例讲解如何在CentOS ...

  4. 末学者笔记--NTP服务和DNS服务

    NTP时间服务器 一.概念: 作用:ntp主要是用于对计算机的时间同步管理操作. 时间是对服务器来说是很重要的,一般很多网站都需要读取服务器时间来记录相关信息,如果时间不准,则可能造成很大的影响. 二 ...

  5. CentOS 6.9 升级OpenSSH版本 关闭ssh服务后门

    最近用低版本的OpenSSH(5.9p1版本) 的漏洞给系统留了个后门 , 可以劫持root密码或者给root开启后门密码 : 利用Openssh后门 劫持root密码 如果公司还在用CentOS6的 ...

  6. 升级OPENSSH 和 OPENSSL

    升级OPENSSH 和 OPENSSL   首先安装telnet服务,防止在操作过程中导致ssh远程中断   # 安装Telnetyum install telnet-server -y chkcon ...

  7. openssh/openssl升级到7.4和1.0.2j 源码方式

    #!/bin/bashtar -xvf openssh-7.4p1.tar.gztar -xvf openssl-1.0.2j.tar.gz 升级 openssl 到1.0.2jcd openssl- ...

  8. 升级openssh基于openssl

    OpenSSH is the premier connectivity tool for remote login with the SSH protocol. It encrypts all tra ...

  9. redhat6.4升级openssh至6.7

    1:简介 最近浙江电信对线上服务器进行漏洞扫描,暴露出原有的openssh有漏洞,建议升级openssh版本: 2:操作环境 Red Hat Enterprise Linux Server relea ...

随机推荐

  1. Flask实战第60天:帖子分页技术实现

    编辑manage.py,添加测试帖子 @manager.command def create_test_post(): for x in range(1, 100): title = '标题{}'.f ...

  2. [AGC026B]rng_10s

    题意:一个商店,第一天早上有$A$罐苹果汁,一个人每天上午都会来买$B$罐,每天晚上如果剩余罐数$\leq C$那么会增加$D$罐,问能否无限买 收集一个套路...? 首先如果$B\gt A$或者$B ...

  3. rmq问题:ST表

    存板子.O(nlogn)预处理,O(1)查询.空间O(nlogn). int d[1000006][25]; int mn[1000006]; void rmq_init() { for(int i= ...

  4. 企鹅----sap+裂点

    企鹅 题目描述 在靠近南极的某处,一些企鹅站在许多漂浮的冰块上.由于企鹅是群居动物,所以它们想要聚集到一起,在同一个冰块上.企鹅们不想把自己的身体弄湿,所以它们在冰块之间跳跃,但是它们的跳跃距离,有一 ...

  5. python基础之dict和set

    dict dict是dictionary的缩写,python内置了字典,在其他语言中也称为map,使用键值对储存,具有极快的查找速度. 如果是只用list来实现,就需要两个list,先在第一个list ...

  6. Oracle Linux logoOracle Linux

    http://www.oschina.net/p/oracle_enterprise_linux

  7. MYSQL复习笔记1-物理文件和系统架构

    date:20140101auth:Jin 一.物理组成(一) 日志文件参考:http://dev.mysql.com/doc/refman/5.1/en/server-logs.html1.错误日志 ...

  8. 激活Debian 7 的桌面(把图标放在桌面上)

    转:http://www.acyoo.com/archives/3017.html Debian 7的默认桌面是Gnome 3,  刚装好时无法在桌面进行任何操作,不过只需要设置一下就可以了: 左上角 ...

  9. jQuery:validate添加自定义验证

    jQuery.validator.addMethod添加自定义的验证规则 addMethod:name, method, message 简单实例:单个验证的添加 <!DOCTYPE html ...

  10. [Android Pro] Android的Animation之LayoutAnimation使用方法

    用于为一个里面的控件,或者是一个里面的控件设置动画效果,可以在文件中设置,亦可以在代码中设置. 一种直接在XML文件中设置 1.  在res/anim文件夹下新建一个XML文件,名为list_anim ...