分类 Linux 下的文章
vmware设置共享文件夹
vmware 虚拟机(linux系统)设置中添加文件夹;
打开Linux终端,输入以下命令,需要在root用户下执行
(1)如果/mnt
下没有hgfs
文件夹,需要自己手动创建。输入:mkdir /mnt/hgfs
(2)输入vmhgfs-fuse .host:/ /mnt/hgfs
,共享文件挂载到hgfs目录下
(3)查看是否挂在成功ls mnt/hgfs
统信UOS V20编译安装PostgreSQL
更改yum源
由于统信V20服务器免费版无法使用官方yum源,需更改默认yum源。
cd /etc/yum.repos.d
mv UniontechOS.repo UniontechOS.repo.bak
#下载可用的repo文件
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
yum makecache
yum update
centos下Libreoffice版本升级
服务器libreoffice版本为7.1,在实际使用过程中发现如果word中包含大量的表格样式则转化过程特别慢,甚至需要1分钟。在其他装有libreoffice7.4的服务器中转换速度仅需3s左右,故尝试升级libreoffice版本。
升级步骤:
- 杀死当前进程
ps aux | grep soffice
kill -9 [PID]
- 卸载原版本
yum remove libreoffice*
- 删除目录文件
rm -rf /opt/libreoffice7.1/
- 重新安装,参考文档:https://www.r1989.com/note-1204.html
- 测试复杂word文件转化效率
find命令删除乱码文件
如服务器存在乱码文件,则可通过find命令来删除,如:
#找到文件节点
ls -i
1703907 ç¼?ç¨?ç? ç??é«?æ¸?pdfç??.pdf
#根据文件的node number删除
find ./ -inum 1703907 -exec rm {} \;
-exec选项find 搜索路径 [选项] 搜索内容 -exec 命令2 {} \;
阿里云标准-Nginx安全基线检查
[高危]
检查Nginx进程启动账号 服务配置
描述
Nginx进程启动账号状态,降低被攻击概率
加固建议
修改Nginx进程启动账号:
1、打开conf/nginx.conf配置文件;
2、查看配置文件的user配置项,确认是非root启动的;
3、如果是root启动,修改成nobody或者nginx账号;
4、修改完配置文件之后需要重新启动Nginx。
等保测评中对服务器、数据库等相关优化
等保测评中对服务器及数据库的部分安全处理
【服务器相关】
系统为CentOS7.8
- 密码有效期设置
/etc/login.defs
PASS_MAX_DAYS 90 #密码使用天数
PASS_MIN_DAYS 0
PASS_MIN_LEN 9
PASS_WARN_AGE 15 #提醒用户修改密码天数
注:修改配置后仅针对新增帐号才会生效,原帐号可通过chage
命令调整,可通过chage -l root
查看。
vi /etc/pam.d/system-auth
优先级高于login.defs
# 配置最小长度为8位,至少包含1位大写字母、1位小写字母、1位数字和1位特殊字符。
password requisite pam_cracklib.so minlen=8 dcredit=-1 ucredit=-1 ocredit=-1 lcredit=-1 retry=5 difok=3
# minlen:最小密码长度
# dcredit:最少数字
# ucredit:最少大写字母
# ocredit:最少特殊字符
# lcredit:最少小写字符
# retry:尝试次数
# difok:最少不同字符
chage:密码失效是通过此命令来管理的。
参数意思:
-m 密码可更改的最小天数。为零时代表任何时候都可以更改密码。
-M 密码保持有效的最大天数。
-W 用户密码到期前,提前收到警告信息的天数。
-E 帐号到期的日期。过了这天,此帐号将不可用。
-d 上一次更改的日期
-I 停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。
-l 例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。
按月全量备份/按天增量备份 脚本
backup.sh
月初全量备份,之后按天增量备份。建议将历年附件等归档内容下载备份后,线上不再备份此数据。每月备份目录可自动上传到OSS中。
#!/bin/bash
# 整站文件按月备份并同步到oss
# 按天增量备份
# /web仅保存增量备份
tar=/bin/tar
projectPath=/web_lv/
project=folderName
#增量备份存放位置
bakPath=/web/site/"$project"
#全量备份存在位置
fullPath=/web_lv/full_bak
ym=`date +%Y%m`
ymd=`date +%Y%m%d`
nowMonth=`date +%Y%m01`
last=`date -d"$nowMonth last month" +%Y%m`
monthBakPath=$fullPath/$ym
gidShot=Gid$project$ym
fullName=$ym
dailyName=$ymd
log=$bakPath/$project.log
chk_month()
{
if [ -e "$monthBakPath"/"$project"_"$ym"_month.tar.gz ];then
echo ""$project"_"$ym"_month.tar.gz file exist!! ====`date +%Y-%m-%d-%T` " >>$log
else
tar_month
fi
}
chk_daily()
{
while [ -e "$bakPath"/"$ym"/"$project"_"$dailyName"_daily.tar.gz ]
do
dailyName=`echo "$dailyName + 0.1" | bc `
done
}
#增量备份
tar_daily()
{
cd $projectPath
echo "START=====`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$dailyName"_daily.tar.gz" >> $log
sleep 3
$tar -g $fullPath/$gidShot -zcf $bakPath/$ym/"$project"_"$dailyName"_daily.tar.gz --exclude=runtime --exclude=app --exclude=sensen --exclude=vendor --exclude=public/tmp --exclude=public/uploads/tmp --exclude=public/uploads/attach/2021 $project
echo "END========`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$dailyName"_daily.tar.gz" >> $log
}
#全量备份
tar_month()
{
touch $fullPath/$gidShot
cd $projectPath
echo "START=====`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$fullName"_month.tar.gz" >> $log
$tar -g $fullPath/$gidShot -zcf $monthBakPath/"$project"_month.tar.gz --exclude=runtime --exclude=app --exclude=sensen --exclude=vendor --exclude=public/tmp --exclude=public/uploads/tmp --exclude=public/uploads/attach/2021 $project
echo "END========`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$fullName"_month.tar.gz" >> $log
}
# 废弃方法,直接将全量及增量数据备份到指定目录
move_full()
{
echo "start----move" >> $log
mv -f $monthBakPath/"$project"_month.tar.gz /web/site/full/
echo "end----move" >> $log
}
backup()
{
if [ -d $monthBakPath ]; then
#chk_month
chk_daily
tar_daily
else
#delete last month
echo "start----delete last month data" >> $log
rm -rf $bakPath/$last
rm -rf $fullPath/*
mkdir -p $fullPath/$ym
mkdir -p $bakPath/$ym
tar_month
#move_full
fi
}
if [ -d $bakPath ];then
backup
else
mkdir -p $bakPath
backup
fi