首页
关于我们
友链链接
壁纸下载
更多
统计中心
热点搜索
图床上传
推荐
剩余价值
磁链清理
Search
1
[Win DD包] wes7-x86-cn-精简,安装后仅占用1.55G存储空间
25,511 阅读
2
保姆级教程!甲骨文ARM DD成Debian10并升级内核成5.10
6,209 阅读
3
v2rayN基础使用教程、配置说明、添加订阅、路由选择
5,529 阅读
4
N1教程:Openwrt安装docker webui界面(基于flippy openwrt n1固件)
5,237 阅读
5
ZFAKA小店Docker版之 数据的备份和迁移
5,091 阅读
Linux学堂
网站建设
网络资源
主题插件
固件工具
主机评测
登录
Search
标签搜索
vps
typecho
linux
bench
mysql
cloudflare
nginx
lnmp
ssl
empirecms
openwrt
centos
google
docker
n1
301
qbittorrent
telegram
free
onedrive
V+变量
累计撰写
278
篇文章
累计收到
215
条评论
首页
栏目
Linux学堂
网站建设
网络资源
主题插件
固件工具
主机评测
页面
关于我们
友链链接
壁纸下载
统计中心
热点搜索
图床上传
推荐
剩余价值
磁链清理
搜索到
278
篇与
的结果
2021-05-02
SEO优化:nginx 301重定向带www的https链接配置方法-方法一
不少浏览器都开始逐渐更新至只支持https的网站,所以很多http网站都需要添加对https的支持,这时就需要涉及到www和不加www的跳转问题,由于www和不加www使用的是不同的证书,所以需要做301跳转处理。最近博客启用了https,为了实现http://vvars.com、http://www.vvars.com、https://vvars.com 用301重定向https://www.vvars.com查了很多资料 ,没有找到完美的解决方案,经过一番探索,特记录下折腾过程,下面是方法1。server { listen 80; server_name vvars.com www.vvars.com; return 301 https://www.vvars.com$request_uri; } server { listen 443 ssl; ssl_certificate /home/wwwroot/PHP7/etc/vvarsssl/vvars.crt; ssl_certificate_key /home/wwwroot/PHP7/etc/vvarsssl/vvars.key; server_name vvars.com; return 301 https://www.vvars.com$request_uri; } server { listen 443 ssl; ssl_certificate /home/wwwroot/PHP7/etc/vvarsssl/vvars.crt; ssl_certificate_key /home/wwwroot/PHP7/etc/vvarsssl/vvars.key; server_name www.vvars.com; ....... } 说明:第一段代码是将http://www.vvars.com和http://vvars.com  ; 301重定向https://www.vvars.com,第二段代码是将https://vvars.com 301重定向https://www.vvars.com,第三段代码为指定主机用ssl连接,......为网站程序的配置文件。然后用站长工具 http://tool.chinaz.com/pagestatus/ 检查下http状态:nginx强制启用https方法http 301跳转到带www的https链接方法可以看到返回状态码均为301,所有http和不带www的域名都301重定向到了带www的https链接,这样有利于SEO。
2021年05月02日
3,650 阅读
0 评论
1 点赞
2021-05-01
nohup.out相关介绍,作用,使用,清空
1.nohup.out的由来及作用用途:LINUX命令用法,不挂断地运行命令。 语法:nohup Command [ Arg ... ] [ & ] 描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。 例子: nohup ./startWeblogic.sh & 意思是即使退出ssh界面,命令仍然在后台执行,并且打印过程日志到nohup.out,当然也可以将nohup.out的输出转向到其他文件,高级应用请参考扩展阅读。2.nohup.out的查看方式与方法实际使用过程中,往往人们为了省心(嗯,没错,就是懒),经常没有给nohup.out进行重定向输出,也没有按日期分割文件,会造成这个文件特别巨大,达到2G或者3G,这个使用想查看文件,搜索出错内容就比较痛苦了。一般有两种方式1.linux本机查看:使用tail 命令,查看最新的日志,或滚动监控日志打印。例如命令 tail -1000 nohup.out (查看最后1000行日志文本) tail -f nohup.out(监控日志打印)2.ftp下载到windown主机查看:一般小的log文件都没有问题,但是过G的,一般的文本文档查看就显得无力了。推荐使用UltraEdit进行打开。3.nohup.out维护管理方法(清空nohup.out)如上文所述出现了超大号的文件简直是令人讨厌的事情,而且nohup.out会一直一直自己增长下去,如果你的服务器硬盘不给力的话,很容易把应用也挂掉(硬盘没空间 ,啥都玩不转),但是又不能一味的直接删。因为直接删除,可能会造成应用无法打印后续的错误日志,该问题常见于weblogic服务器,jboss服务器等这些大型中间件,这个在生产环境上要尤为注意。因此就有了我们不停止服务直接,清空nohup.out文件的方法。两个可以不用停止WEB服务就可以清空nohup.out的命令。第一种:cp /dev/null nohup.out第二种:cat /dev/null > nohup.out4.nohup的重定向,一劳永逸解决nohup.out文件过大的问题以下是定义日志打印级别,除了高于级别2的告警信息记录到log文件外,其余直接不记录只输出错误信息到日志文件 nohup ./program >/dev/null 2>log & 什么信息也不要 nohup ./program >/dev/null 2>&1 &
2021年05月01日
3,094 阅读
0 评论
0 点赞
2021-04-30
Linux升级命令yum upgrade和yum update的区别
Linux升级命令有两个分别是yum upgrade和yum update, 这个两个命令是有区别的:yum -y update升级所有包同时也升级软件和系统内核yum -y upgrade只升级所有包,不升级软件和系统内核实验分别测试 yum -y upgrade和yum -y update升级前系统版本: centos5.5 内核版本: 2.6.18-194.el5 升级前做过简单配置文件修改yum -y upgrade 升级后系统版本: centos5.7 内核版本: 2.6.18-194.el5yum -y update 升级后系统版本: centos5.7内核版本: 2.6.18-238.el5
2021年04月30日
1,745 阅读
0 评论
0 点赞
2021-04-29
LightUploader,一个轻量化的网盘上传工具,支持OD/世纪互联/GD
相比于rclone,它更轻量,只需要一个文件就可以上传文件,全自动配置,过程不超过10秒,占用资源极少,同时支持Telegram的实时推送。实测使用香水家公认的CPU较弱的VPS上传200G(文件超过80个)无Bug上传。相比于当年萌咖大佬做的那个版本,加入了他不想加的实时网速显示(伪实时网速,只能看个大概),同时开源,在教程中说明了如何替换为自己的API,防止高峰期卡顿的现象。喜欢可以点个Star:https://github.com/gaowanliang/LightUploader更新【2021.04.29】 目前支持世纪互联、Google Drive,预计后期会添加对Mega,Telegram等平台的支持 【2021.04.02】 目前同时支持国际版、个人版(家庭版)。 【2021.04.01】 修复授权失败、上传文件大小为0等问题。 现已支持arm、x86、x64平台的系统。 【2021.03.27】 新增多线程上传、MacOS客户端。 修复了一个致命bug,建议之前装过的更新下程序。 功能支持上传文件和文件夹到指定目录,并保持上传前的目录结构。支持命令参数使用,方便外部程序调用。支持自定义上传分块大小。支持多线程上传(多文件同时上传)。支持根据文件大小动态调整重试次数,对抗不好的网络环境。可以使用Telegram Bot实时监控上传进度Github地址:https://github.com/gaowanliang/LightUploader萌咖大佬写了一个 非常好的版本 ,可惜并没有开源,而且已经好久都没有更新了。这个项目作为从 DownloadBot 中独立出来的一个简易上传工具,旨在用更轻量化的方式让在各种平台都能快速的向各个网络硬盘上传数据。这里只详细说下Linux的用法,Windows后面大概说下。Windows、MacOS系统下载地址→传送门,直接将程序下载到本地后,按照下面方法进行授权、初始化,然后就可以使用命令上传了。授权认证点击右侧URL登录并授权,授权地址→【国际版、个人版(家庭版)】,【世纪互联】,Google Drive的授权链接是实时生成的,下面会说。授权后会获取一个localhost开头打不开的链接,这里复制好整个链接地址,包括localhost。安装LightUploader打开这个界面,选择适合你系统的版本:https://github.com/gaowanliang/LightUploader/releases这里以Linux 64位为例,当前最新版本为v2.0-beta,应该下载 LightUploader_Linux_x86_64.tar.gz 这个文件# 下载文件 wget https://github.com/gaowanliang/LightUploader/releases/download/v2.0-beta/LightUploader_Linux_x86_64.tar.gz # 解压文件 tar -zxvf LightUploader_Linux_x86_64.tar.gz -C /usr/local/bin/ # 给予权限 chmod +x /usr/local/bin/LightUploader # 可选 软链接 类似于 Windows 的快捷方式 ln -s /usr/local/bin/LightUploader /usr/bin/LightUploader 初始化配置# OneDrive 国际版,将url换成你上面复制的授权地址,包括http://loaclhost。 LightUploader -a "url" -l zh-CN # OneDrive 个人版(家庭版),将url换成你上面复制的授权地址,包括http://loaclhost。 LightUploader -a "url" -v 1 -l zh-CN # OneDrive 中国版(世纪互联),将url换成你上面复制的授权地址,包括http://loaclhost。 LightUploader -a "url" -v 2 -l zh-CN 如果提示注册成功类似信息,则初始化成功。使用命令Usage of LightUploader: -a string // 初始化授权 Setup and Init auth.json. -b string // 自定义上传分块大小, 可以提高网络吞吐量, 受限于磁盘性能和网络速度. -c string // 配置文件路径 -r string // 上传到网盘中的某个目录, 默认: 根目录 -l string // 软件语言 -f string // *必要参数, 要上传的文件或文件夹 -t string // 线程数, 同时上传文件的个数. 默认: 3 -to int //单个数据包超时时间,默认为60s -tgbot string //使用Telegram机器人实时监控上传,此处需填写机器人的access token,形如123456789:xxxxxxxxx,输入时需使用双引号包裹。当写入内容为“1”时,使用配置文件中的BotKey和UserID作为载入项 -uid string // 使用Telegram机器人实时监控上传,此处需填写接收人的userID,形如123456789 -m int // 选择模式,0为替换网盘中同名文件,1为跳过,默认为0 -v int // 选择版本,其中0为 OneDrive 国际版,1为 OneDrive 个人版(家庭版),2为 OneDrive 世纪互联,3为Google Drive,默认为0 命令示例# 一些示例: # 将同目录下的 mm00.jpg 文件上传到 OneDrive 网盘根目录 LightUploader -c xxx.json -f "mm00.jpg" # 将同目录下的 Download 文件夹上传到 OneDrive 网盘根目录 LightUploader -c xxx.json -f "Download" # 将同目录下的 Download 文件夹上传到 OneDrive 网盘Test目录中 LightUploader -c xxx.json -f "Download" -r "Test" # 将同目录下的 Download 文件夹上传到 OneDrive 网盘根目录中, 使用 10 线程 LightUploader -c xxx.json -t 10 -f "Download" # 将同目录下的 Download 文件夹上传到 OneDrive 网盘根目录中, 使用 10 线程,并跳过同名文件 LightUploader -c xxx.json -t 10 -f "Download" -m 1 # 将同目录下的 Download 文件夹上传到 OneDrive 网盘根目录中, 使用 10 线程,同时设置超时时间为30秒 LightUploader -c xxx.json -t 10 -f "Download" -to 30 # 将同目录下的 Download 文件夹上传到 OneDrive 网盘根目录中, 使用 10 线程,同时使用 Telegram Bot 实时监控上传进度 LightUploader -c xxx.json -t 10 -f "Download" -tgbot "123456:xxxxxxxx" -uid 123456789 # 将同目录下的 Download 文件夹上传到 OneDrive 网盘根目录中, 使用 10 线程,同时使用配置文件中的 Telegram Bot 参数载入程序实时监控上传进度(前提是配置文件中含有Telegram Bot 的参数) LightUploader -c xxx.json -t 10 -f "Download" -tgbot "1" # 将同目录下的 Download 文件夹上传到 OneDrive 网盘根目录中, 使用 15 线程, 并设置分块大小为 20M LightUploader -c xxx.json -t 15 -b 20 -f "Download" /urs/local/auth.json为初始化时,生成的*.json绝对路径地址,本文默认/root/auth.json,自行调整。Aria2自动上传同样的这里也会提供个配套的Aria2自动上传脚本上传脚本代码如下:#!/bin/bash GID="$1"; FileNum="$2"; File="$3"; MaxSize="157286400"; Thread="3"; #默认3线程,自行修改,服务器配置不好的话,不建议太多 Block="20"; #默认分块20m,自行修改 RemoteDIR=""; #上传到Onedrive的路径,默认为根目录,如果要上传到Test目录,""里面请填成Test LocalDIR="/www/download/"; #Aria2下载目录,记得最后面加上/ Uploader="/usr/local/bin/LightUploader"; #上传的程序完整路径,默认为本文安装的目录 Config="/root/auth.json"; #初始化生成的配置auth.json绝对路径,参考第3步骤生成的路径 if [[ -z $(echo "$FileNum" |grep -o '[0-9]*' |head -n1) ]]; then FileNum='0'; fi if [[ "$FileNum" -le '0' ]]; then exit 0; fi if [[ "$#" != '3' ]]; then exit 0; fi function LoadFile(){ if [[ ! -e "${Uploader}" ]]; then return; fi IFS_BAK=$IFS IFS=$'\n' tmpFile="$(echo "${File/#$LocalDIR}" |cut -f1 -d'/')" FileLoad="${LocalDIR}${tmpFile}" if [[ ! -e "${FileLoad}" ]]; then return; fi ItemSize=$(du -s "${FileLoad}" |cut -f1 |grep -o '[0-9]*' |head -n1) if [[ -z "$ItemSize" ]]; then return; fi if [[ "$ItemSize" -ge "$MaxSize" ]]; then echo -ne "\033[33m${FileLoad} \033[0mtoo large to spik.\n"; return; fi ${Uploader} -c "${Config}" -t "${Thread}" -b "${Block}" -f "${FileLoad}" -r "${RemoteDIR}" if [[ $? == '0' ]]; then rm -rf "${FileLoad}"; fi IFS=$IFS_BAK } LoadFile; 编辑好上传脚本后,可以检测下脚本编码是否正确,比如我脚本路径为/root/upload.sh,使用命令:bash /root/upload.sh 如果无任何输出,则正确,反之输出类似$’r’: command not found错误,则需要转换下编码格式,具体步骤如下。先安装dos2unix:#CentOS系统 yum install dos2unix -y #Debian/Ubuntu系统 apt install dos2unix -y 再转换编码: #后面为脚本路径 dos2unix /root/upload.sh Windows使用 这里就随便补充下Windows使用,先下载程序文件,下载地址→传送门。比如我将exe文件放到D盘,然后使用Win+R,输入CMD运行,调出窗口后,使用命令:#进入D盘 cd /d D:\ #国际版初始化,将url换成你上面复制的授权地址,包括http://loaclhost。 LightUploader.exe -a "url" -l zh-CN #个人版(家庭版)初始化,将url换成你上面复制的授权地址,包括http://loaclhost。 LightUploader.exe -a "url" -v 1 -l zh-CN #世纪互联初始化,将url换成你上面复制的授权地址,包括http://loaclhost。 LightUploader.exe -a "url" -v 2 -l zh-CN 然后上传命令和上面一样,只需要把LightUploader改成LightUploader.exe即可。更换自己的API我本来想着做一个简单更换API的方法,但是思来想去不知道怎么弄好,因为本身这个软件是单文件的,首次就需要API进行登录,这个API存储在哪里就很麻烦了,索性就不弄了,和大家说一下如何通过自行编译的方式更换自己的API。使用VSCode/Goland等工具,进行全局替换,需要查找的值有这几个:OneDrive 国际版/家庭版 客户端ID:ad5e65fd-856d-4356-aefc-537a9700c137 (国际版不需要密钥)OneDrive 世纪互联 客户端ID:4fbf37cf-dc83-4b60-b6c1-6230546e247bOneDrive 世纪互联 密钥:y-L73QIBxO_UmJvOVw8YMlX~8B_h4D6zzTGoogle Drive 授权文件:见gdUpload.go#L224因为GoogleDrive还是测试版,目前传文件很不稳定,这里先简单的说一下OneDrive怎么弄Azure.com 应用注册Azure.cn (世纪互联) 应用注册没有说明的随意填写即可选择 任何组织目录(任何 Azure AD 目录 - 多租户)中的帐户重定向 url 键入并保存 http://localhost/onedrive-login保存 客户端ID去 证书和密码 ,添加并保存 客户端密码(国际版不需要)API 权限(Microsoft Graph)添加 offline_access, Files.Read, Files.Read.All 三个权限。下载好源代码后,使用上面说的工具,按下Ctrl+Shift+H,根据自己的情况将上面的值直接全局替换即可,因为我软件的依赖库都直接绑到代码里了,所以装好golang直接go build -o LightUpload .编译即可,不会出现依赖问题。
2021年04月29日
2,779 阅读
0 评论
0 点赞
2021-04-25
Rclone:使用rclone进行转移文件时经常会遇到的一些命令
前言Rclone是一款很强大的支持多网盘的程序。可以轻松的将文件从各大网盘之间镜像相互转移,上传、下载。下面会列出一些在进行转移文件时经常会使用到的命令正文复制,下载文件复制命令,可以说是使用频率最高的了,复制的时候加上transfers参数,可以设置线程数量rclone copy /home/wwwroot/Backup/Download sharepoint:Downloads #源路径 复制路径 网盘路径用:分隔 可以是2个网盘互相复制查看文件列表rclone ls sharepoint:Downloads #查看该网盘内backup文件夹内所有的文件 rclone lsl sharepoint:Downloads # 比上面多显示一个上传时间 rclone lsd sharepoint:Downloads # 只显示文件夹而不显示文件新建文件夹rclone mkdir sharepoint:Downloads #此命令将在名字为od的网盘根目录下创建一个叫做Downloads的文件夹。挂载和卸载rclone mount sharepoint:Downloads /home/wwwroot/sharepoint & 挂载到od网盘的backup目录到/home/wwwroot目录下的sharepoint文件夹 fusermount -u /home/wwwroot/sharepoint 卸载home/wwwroot目录下sharepoint的挂载下面是一些不怎么常用的命令其他rclone config - 以控制会话的形式添加rclone的配置,配置保存在.rclone.conf文件中。 rclone copy - 将文件从源复制到目的地址,跳过已复制完成的。 rclone sync - 将源数据同步到目的地址,只更新目的地址的数据。 –dry-run标志来检查要复制、删除的数据 rclone move - 将源数据移动到目的地址。 rclone delete - 删除指定路径下的文件内容。 rclone purge - 清空指定路径下所有文件数据。 rclone mkdir - 创建一个新目录。 rclone rmdir - 删除空目录。 rclone check - 检查源和目的地址数据是否匹配。 rclone ls - 列出指定路径下所有的文件以及文件大小和路径。 rclone lsd - 列出指定路径下所有的目录/容器/桶。 rclone lsl - 列出指定路径下所有文件以及修改时间、文件大小和路径。 rclone md5sum - 为指定路径下的所有文件产生一个md5sum文件。 rclone sha1sum - 为指定路径下的所有文件产生一个sha1sum文件。 rclone size - 获取指定路径下,文件内容的总大小。. rclone version - 查看当前版本。 rclone cleanup - 清空remote。 rclone dedupe - 交互式查找重复文件,进行删除/重命名操作。
2021年04月25日
3,160 阅读
0 评论
0 点赞
2021-04-22
网站安全:使用 fail2ban 防御 SSH 服务器的暴力破解攻击
对于SSH服务的常见的攻击就是暴力破解攻击——远程攻击者通过不同的密码来无限次地进行登录尝试。当然SSH可以设置使用非密码验证验证方式来对抗这种攻击,例如公钥验证或者双重验证。将不同的验证方法的优劣处先放在一边,如果我们必须使用密码验证方式怎么办?你是如何保护你的 SSH 服务器免遭暴力破解攻击的呢?fail2ban 是 Linux 上的一个著名的入侵保护的开源框架,它会监控多个系统的日志文件(例如:/var/log/auth.log 或者 /var/log/secure)并根据检测到的任何可疑的行为自动触发不同的防御动作。事实上,fail2ban 在防御对SSH服务器的暴力密码破解上非常有用。在这篇指导教程中,我会演示如何安装并配置 fail2ban 来保护 SSH 服务器以避免来自远程IP地址的暴力攻击。在linux上安装Fail2ban为了在CentOS 或 RHEL上安装fail2ban,首先设置EPEL仓库,然后运行以下命令。$ sudo yum install fail2ban在Fedora上安装fail2ban,简单地运行以下命令:$ sudo yum install fail2ban在ubuntu,Debian 或 Linux Mint上安装fail2ban:$ sudo apt-get install fail2ban为SSH服务器配置Fail2ban现在你已经准备好了通过配置 fail2ban 来加强你的SSH服务器。你需要编辑其配置文件 /etc/fail2ban/jail.conf。 在配置文件的“[DEFAULT]”区,你可以在此定义所有受监控的服务的默认参数,另外在特定服务的配置部分,你可以为每个服务(例如SSH,Apache等)设置特定的配置来覆盖默认的参数配置。在针对服务的监狱区(在[DEFAULT]区后面的地方),你需要定义一个[ssh-iptables]区,这里用来定义SSH相关的监狱配置。真正的禁止IP地址的操作是通过iptables完成的。下面是一个包含“ssh-iptables”监狱配置的/etc/fail2ban/jail.conf的文件样例。当然根据你的需要,你也可以指定其他的应用监狱。$ sudo vi /etc/fail2ban/jail.local[DEFAULT]以空格分隔的列表,可以是 IP 地址、CIDR 前缀或者 DNS 主机名用于指定哪些地址可以忽略 fail2ban 防御ignoreip = 127.0.0.1 172.31.0.0/24 10.10.0.0/24 192.168.0.0/24客户端主机被禁止的时长(秒)bantime = 86400客户端主机被禁止前允许失败的次数maxretry = 5查找失败次数的时长(秒)findtime = 600mta = sendmail[ssh-iptables]enabled = truefilter = sshdaction = iptables[name=SSH, port=ssh, protocol=tcp]sendmail-whois[name=SSH,
[email protected]
,
[email protected]
]Debian 系的发行版logpath = /var/log/auth.logRed Hat 系的发行版logpath = /var/log/securessh 服务的最大尝试次数maxretry = 3根据上述配置,fail2ban会自动禁止在最近10分钟内有超过3次访问尝试失败的任意IP地址。一旦被禁,这个IP地址将会在24小时内一直被禁止访问 SSH 服务。这个事件也会通过sendemail发送邮件通知。一旦配置文件准备就绪,按照以下方式重启fail2ban服务。在 Debian, Ubuntu 或 CentOS/RHEL 6:$ sudo service fail2ban restart在 Fedora 或 CentOS/RHEL 7:$ sudo systemctl restart fail2ban为了验证fail2ban成功运行,使用参数'ping'来运行fail2ban-client 命令。 如果fail2ban服务正常运行,你可以看到“pong(嘭)”作为响应。$ sudo fail2ban-client pingServer replied: pong测试 fail2ban 保护SSH免遭暴力破解攻击为了测试fail2ban是否能正常工作,尝试通过使用错误的密码来用SSH连接到服务器模拟一个暴力破解攻击。与此同时,监控 /var/log/fail2ban.log,该文件记录在fail2ban中发生的任何敏感事件。$ sudo tail -f /var/log/fail2ban.log根据上述的日志文件,Fail2ban通过检测IP地址的多次失败登录尝试,禁止了一个IP地址192.168.1.8。检查fail2ban状态并解禁被锁住的IP地址由于fail2ban的“ssh-iptables”监狱使用iptables来阻塞问题IP地址,你可以通过以下方式来检测当前iptables来验证禁止规则。$ sudo iptables --list -nChain INPUT (policy ACCEPT)target prot opt source destinationfail2ban-SSH tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22Chain FORWARD (policy ACCEPT)target prot opt source destinationChain OUTPUT (policy ACCEPT)target prot opt source destinationChain fail2ban-SSH (1 references)target prot opt source destinationDROP all -- 192.168.1.8 0.0.0.0/0RETURN all -- 0.0.0.0/0 0.0.0.0/0如果你想要从fail2ban中解锁某个IP地址,你可以使用iptables命令:$ sudo iptables -D fail2ban-SSH -s 192.168.1.8 -j DROP当然你可以使用上述的iptables命令手动地检验和管理fail2ban的IP阻塞列表,但实际上有一个适当的方法就是使用fail2ban-client命令行工具。这个命令不仅允许你对"ssh-iptables"监狱进行管理,同时也是一个标准的命令行接口,可以管理其他类型的fail2ban监狱。为了检验fail2ban状态(会显示出当前活动的监狱列表):$ sudo fail2ban-client status为了检验一个特定监狱的状态(例如ssh-iptables):$ sudo fail2ban-client status ssh-iptables上面的命令会显示出被禁止IP地址列表。为了解锁特定的IP地址:$ sudo fail2ban-client set ssh-iptables unbanip 192.168.1.8注意,如果你停止了Fail2ban 服务,那么所有的IP地址都会被解锁。当你重启 Fail2ban,它会从/etc/log/secure(或 /var/log/auth.log)中找到异常的IP地址列表,如果这些异常地址的发生时间仍然在禁止时间内,那么Fail2ban会重新将这些IP地址禁止。设置 Fail2ban 自动启动一旦你成功地测试了fail2ban之后,最后一个步骤就是在你的服务器上让其在开机时自动启动。在基于Debian的发行版中,fail2ban已经默认让自动启动生效。在基于Red-Hat的发行版中,按照下面的方式让自动启动生效。在 CentOS/RHEL 6中:$ sudo chkconfig fail2ban on在 Fedora 或 CentOS/RHEL 7:$ sudo systemctl enable fail2ban总结在该教程中,我演示了如何安装并配置fail2ban来保护一个SSH服务器。当然fail2ban可以缓解暴力密码攻击,但是请注意,这并不能保护SSH服务器避免来自复杂的分布式暴力破解组织,这些攻击者通过使用成千上万个机器控制的IP地址来绕过fail2ban的防御机制。
2021年04月22日
1,583 阅读
0 评论
0 点赞
2021-04-22
提高网站安全性:修改SSH端口号,避免被暴力破解
相信很多站长朋友都有这样的经历,每次登录SSH的时候都是一堆失败登录,全都是暴力破解的,非常头疼。本文就来教大家如何简单修改SSH端口号,减少被暴力破解风险。WARNING! The remote SSH server rejected X11 forwarding request. Last failed login: Thu Apr 22 22:28:02 CST 2021 from 116.5.168.215 on ssh:notty There were 163897 failed login attempts since the last successful login. Last login: Thu Apr 1 00:22:11 2021 from 14.127.75.38 1.登录SSH。2.编辑SSH配置文件:vi /etc/ssh/sshd_config在#Port 22行去掉#号注释,同时加入想要使用的端口号如 Port 61347 还有一种方法就是不删除22端口号直接增加新端口号,可以直接用下面的命令:echo 'Port 61347' > /etc/ssh/sshd_config && reboot 3.重启SSH服务 service sshd restart4.整个世界终于清净了。
2021年04月22日
3,257 阅读
0 评论
0 点赞
2021-04-21
【干货】谷歌站长工具套件(Google Webmaster Tools)怎么用来做谷歌搜索引擎优化
谷歌站长工具,我相信只要是做谷歌SEO的基本上都应该知道的工具之一,比如谷歌关键词/Google shopping/谷歌分析/Google Adsense/我们都有介绍过,今天包括以后也会陆续给大家介绍很多,谷歌工具和很多的工具介绍,用于网站和SEO!谷歌站长可以让你更快的被谷歌收录,你可以用它帮助你管理外链,检测在Google优化过程中的成绩,可以给你提供很多的信息和报告!1.网站绑定你的谷歌站长工具使用Google账号登陆:https://www.google.com/webmasters/tools/,然后点击添加属性(add a site),然后使用您合适的方式验证网站所有权。添加了以后需要验证以后才能使用,验证方法有好几种,不过最常用的就是下载验证文件上传到网站根目录还有就是使用你的谷歌分析账号绑定验证。验证成功后,就可以使用了,前提是你的网站已经提交谷歌收录了,robots文件允许访问和抓取,然后过一段时间以后你就会看到站长工具左侧谷歌索引里面你的网站慢慢被收录的曲线2.开设邮件提醒功能导航栏可以设定让Google给你邮件提醒,站长工具有时候也会给你一些命令和反馈邮件,比如抓取错误或者匹配失败等!(日常关注你的邮箱也会帮助你有很多的收获)3.搜索结果的显示搜索结果往往包含了结构数据/复合数据/数据标注工具,重点当然是搜索数据标注工具,网站有权重了,你的结果会跟别人的不一样的!我们知道SEO的工作原理就是索引-收录-排名,索引和收录是排名的前提,等你的站持续被谷歌收录以后,如果你的站内优化比较完善,配合适当的外链,慢慢的网站就会有一些长尾词的排名。这个主要是在站长工具的搜索分析里可以看到。4.搜索流量报告分析流量分析是最基础的功能了,点击侧边栏的搜索分析,在报告分析中,可以看到很多信息,比如:点击次数/展示次数/点击率/排名数据等!当然可以选择和很多的数据分析依据,比如国家不同,访问设备等!详细如图所示:定位,可以看数据...5.网站外链的指向在做seo过程中,肯定是需要外链建设的,点击指向网址外链可以分析你的外链情况,也可以作为参考标准之一,但是注意一下垃圾外链,不然会影响你的网站权重!可以查看你网站的页面之间互相链接的次数6.Google索引这个主要用来看Google收录的页面,以及移除没用的垃圾页面等。我们在做谷歌seo过程中,尽量保证所以收录的网页都是对用户有价值的页面。即你网站的页面收录情况是怎么样的,每一个时间段有多少被收录了,这个结果每周更新一次7.网站抓取这里主要是测试Google蜘蛛在抓取网站的过程中,robots写的对不对。以及网站平时服务器问题,或者页面丢失问题造成的抓取错误。在新站建设初期我们可以利用站点地图功能提交网站地图来加快Google的收录。Google抓取工具可在这里输入你网站的链接后缀,提交给Google收录还有很多其他的功能就不一一分析,比如:Robots测试工具可以在这里检测你的robots是否有错误,如果你的robots有更改,比如网站做好放开收录时,也可以在这里进行提交robots文件,允许GG来收录你的网站。方法很简单,先在域名后面的框中,输入robots.txt,然后点击测试,再点击提交,在弹出的窗口中选择3即可。站点地图这里可以测试和提交你的SITEMAP,当你网站完成并放开robots后,需要在这里提交sitemap,有利于GG快速收录你的网站方法也简单,点击添加/测试站点地图,在弹出的框中输入XML地图的链接地址,如果你的地图是用yoast seo插件生成的,那就输入sitemap_index.xml,然后点击测试或提交都行。
2021年04月21日
1,565 阅读
1 评论
0 点赞
2021-04-16
CentOS 7.5静默安装Oracle 11g
现在linux系统越来越被大家普及,但是linux一般没有桌面想要部署oralce难度很大,今天来给大家介绍一下linux环境部署oracle 11g1.安装前环境准备1.1.配置本地yum源#因公司内网环境,没有互联网,所以需要配置本地yum源,安装所需依赖包等。 #挂载ios镜像centos7.5-1804 [root@oracle ~]#mount /dev/cdrom /mnt #备份原配置文件 [root@oracle ~]#cd /etc/yum.repos.d/ [root@oracle ~]#mkdir bak [root@oracle ~]#mv * bak #创建yum配置文件 [root@oracle ~]#vi /etc/yum.repos.d/local.repo #添加以下内容 [local] name=local baseurl=file:///mnt gpgcheck=0 enabled=1 #清空yum所有源信息 [root@oracle ~]#yum clean all #查看本地源的所有软件 [root@oracle ~]#yum list1.2上传解压oracle 11g安装包#将下载的linux.x64_11gR2_database_1of2.zip和linux.x64_11gR2_database_2of2.zip解压到/usr/local/apps/oracle目录 [root@oracle ~]# mkdir -p /usr/local/apps/oracle [root@oracle ~]# cd /usr/local/apps/oracle [root@oracle oracle]# unzip p13390677_112040_Linux-x86-64_1of7.zip && unzip p13390677_112040_Linux-x86-64_2of7.zip #没有安装unzip命令工具的安装一下 [root@oracle ~]# yum install unzip –y #解压后会产生一个database目录,即/usr/local/apps/oracle/database,目录里面是oracle11g企业版的安装文件1.3.给本机服务IP地址作个映射#添加本机IP地址和主机名 [root@oracle oracle]# vim /etc/hosts 10.0.0.10 oracle 1.4.关闭selinux#修改SELINUX=disabled [root@oracle ~]#vi /etc/selinux/config SELINUX=disabled [root@oracle ~]#setenforce 0 setenforce: SELinux is disabled1.5.关闭防火墙[root@oracle ~]#service iptables stop [root@oracle ~]#systemctl stop firewalld [root@oracle ~]#systemctl disable firewalld 1.6.安装Oracle 11g依赖包 [root@oracle ~]#yum install gcc make ksh libaio libaio-devel numactl-devel sysstat unixODBC unixODBC-devel pcre-devel –y1.7.添加安装用户和用户组#创建用户组 [root@oracle ~]#groupadd oinstall [root@oracle ~]#groupadd dba #创建oracle用户并指定用户组 [root@oracle ~]#useradd -g oinstall -G dba oracle #为oracle用户设置密码 [root@oracle ~]#passwd oracle #查看用户信息 [root@oracle ~]#id oracle uid=1001(oracle) gid=1001(oinstall) 组=1001(oinstall),1002(dba) #如显示以上类似信息则表示添加用户和用户组成功 1.8.修改内核参数[root@oracle ~]#vi /etc/sysctl.conf #添加以下内容 fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 1073741824 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 #其中shmmax是单个共享内存段的最大值,一般设置为本机物理内存的一半,单位为byte,可根据自己的实际情况做相应调整 #使新内核参数生效 [root@oracle ~]#sysctl –p1.9.修改用户的限制文件[root@oracle ~]#vi /etc/security/limits.conf #添加以下内容 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 102401.10.修改/etc/pam.d/login文件[root@oracle ~]#vi /etc/pam.d/login #添加以下内容 session required /lib64/security/pam_limits.so session required pam_limits.so 1.11.修改/etc/profile文件[root@oracle ~]#vi /etc/profile #添加以下内容 if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi #使之生效 [root@oracle ~]#source /etc/profile 1.12.创建安装目录和设置文件权限[root@oracle ~]#mkdir -p /usr/local/apps/oracle/product/11.2.0 [root@oracle ~]#mkdir /usr/local/apps/oracle/oradata [root@oracle ~]#mkdir /usr/local/apps/oracle/inventory [root@oracle ~]#mkdir /usr/local/apps/oracle/fast_recovery_area [root@oracle ~]#chown -R oracle:oinstall /usr/local/apps/oracle [root@oracle ~]#chmod -R 775 /usr/local/apps/oracle 1.13.设置oracle用户环境变量[root@oracle ~]#su - oracle #此处注意,切换用户时切记要加"-",加-会拥有目标用户的环境变量,不加"-"则没有,详细的可自行网上搜索找解答 [oracle@oracle ~]$vi .bash_profile #添加如下内容 ORACLE_BASE=/usr/local/apps/oracle ORACLE_HOME=$ORACLE_BASE/product/11.2.0 ORACLE_SID=orcl PATH=$PATH:$ORACLE_HOME/bin export ORACLE_BASE export ORACLE_HOME export ORACLE_SID export PATH #使配置生效 [oracle@oracle ~]$source .bash_profile 1.14.编辑静默安装响应文件[oracle@oracle ~]$cp -R /usr/local/apps/oracle/database/response/ /home/oracle [oracle@oracle ~]$cd /home/oracle/response [oracle@oracle ~]$vi db_install.rsp #需要设置的选项如下,注意只修改以下设置,其他设置不变,否则会报错。 oracle.install.option=INSTALL_DB_SWONLY ORACLE_HOSTNAME=oracle UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/usr/local/apps/oracle/inventory SELECTED_LANGUAGES=en,zh_CN ORACLE_HOME=/usr/local/apps/oracle/product/11.2.0 ORACLE_BASE=/usr/local/apps/oracle oracle.install.db.InstallEdition=EE oracle.install.db.DBA_GROUP=dba oracle.install.db.OPER_GROUP=dba DECLINE_SECURITY_UPDATES=true 2根据响应文件静默安装Oracle11g Enterprise Edition企业版[oracle@oracle ~]$cd /usr/local/apps/oracle/database [oracle@oracle ~]$./runInstaller -silent -responseFile /home/oracle/response/db_install.rsp -ignorePrereq #Oracle开始在后台静默安装,如果提示Successfully则表示安装成功 #按照要求执行脚本,打开终端,以root用户登录,执行脚本 [root@oracle ~]#/usr/local/apps/oracle/inventory/orainstRoot.sh [root@oracle ~]#/usr/local/apps/oracle/product/11.2.0/root.sh3.以静默方式配置监听#以oracle用户登录,执行 [oracle@oracle ~]$netca /silent /responsefile /home/oracle/response/netca.rsp #通过netstat命令查看1521端口是否在监听中 [oracle@oracle ~]$ss -tnulp | grep 1521 4.以静默方式建立新库,同时也建立一个对应的实例4.1.修改dbca.rsp配置文件 [oracle@oracle ~]$vim /home/oracle/response/dbca.rsp #设置以下参数 [CREATEDATABASE] GDBNAME = "orcl" SID = "orcl" SYSPASSWORD = "123456" SYSTEMPASSWORD = "123456" SYSMANPASSWORD = "123456" DBSNMPPASSWORD = "123456" DATAFILEDESTINATION =/usr/local/apps/oracle/oradata RECOVERYAREADESTINATION=/usr/local/apps/oracle/fast_recovery_area CHARACTERSET = "AL32UTF8" TOTALMEMORY = "800" #其中TOTALMEMORY = "800"为800MB,一般设置为物理内存的80%4.2.进行静默配置创建实例[oracle@oracle ~]$dbca -silent -responseFile /home/oracle/response/dbca.rsp #建库后进行实例进程检查 [oracle@oracle ~]$ps -ef | grep ora_ | grep -v grep #查看监听状态 [oracle@oracle ~]$lsnrctl status #登录查看实例状态 [oracle@oracle ~]$sqlplus / as sysdba SQL> select status from v$instance; #如显示 STATUS ------------ OPEN #则表示实例是启动状态 #查看数据库编码 SQL> select userenv('language') from dual; #查看数据库版本 SQL> select * from v$version;5.Oracle开机自启动设置5.1.修改启动脚本文件#修改/usr/local/apps/oracle/product/11.2.0/bin/dbstart [oracle@oracle ~]$vi /usr/local/apps/oracle/product/11.2.0/bin/dbstart #将ORACLE_HOME_LISTNER=$1修改为ORACLE_HOME_LISTNER=$ORACLE_HOME #修改/usr/local/apps/oracle/product/11.2.0/bin/dbshut [oracle@oracle ~]$vi /usr/local/apps/oracle/product/11.2.0/bin/dbshut #将ORACLE_HOME_LISTNER=$1修改为ORACLE_HOME_LISTNER=$ORACLE_HOME5.2.修改/etc/oratab文件[oracle@oracle ~]$vi /etc/oratab #将orcl:/usr/local/apps/oracle/product/11.2.0:N中最后的N改为Y,成为orcl:/usr/local/apps/oracle/product/11.2.0:Y #输入dbshut和dbstart测试 [oracle@oracle ~]$dbshut #Oracle监听停止,进程消失 [oracle@oracle ~]$dbstart #Oracle监听启动,进程启动5.3.切换到root账户建立自启动脚本[oracle@oracle ~]$su - [root@oracle ~]#vim /etc/rc.d/init.d/oracle #添加以下内容(有些值如ORA_HOME和ORA_USER等根据实际情况可以修改): #!/bin/sh # chkconfig: 35 80 10 # description: Oracle auto start-stop script. # # Set ORA_HOME to be equivalent to the $ORACLE_HOME # from which you wish to execute dbstart and dbshut; # # Set ORA_OWNER to the user id of the owner of the # Oracle database in ORA_HOME. ORA_HOME=/usr/local/apps/oracle/product/11.2.0 ORA_OWNER=oracle if [ ! -f $ORA_HOME/bin/dbstart ] then echo "Oracle startup: cannot start" exit fi case "$1" in 'start') # Start the Oracle databases: echo "Starting Oracle Databases ... " echo "-------------------------------------------------" >> /var/log/oracle date +" %T %a %D : Starting Oracle Databases as part of system up." >> /var/log/oracle echo "-------------------------------------------------" >> /var/log/oracle su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart" >>/var/log/oracle echo "Done" # Start the Listener: echo "Starting Oracle Listeners ... " echo "-------------------------------------------------" >> /var/log/oracle date +" %T %a %D : Starting Oracle Listeners as part of system up." >> /var/log/oracle echo "-------------------------------------------------" >> /var/log/oracle su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start" >>/var/log/oracle echo "Done." echo "-------------------------------------------------" >> /var/log/oracle date +" %T %a %D : Finished." >> /var/log/oracle echo "-------------------------------------------------" >> /var/log/oracle touch /var/lock/subsys/oracle ;; 'stop') # Stop the Oracle Listener: echo "Stoping Oracle Listeners ... " echo "-------------------------------------------------" >> /var/log/oracle date +" %T %a %D : Stoping Oracle Listener as part of system down." >> /var/log/oracle echo "-------------------------------------------------" >> /var/log/oracle su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop" >>/var/log/oracle echo "Done." rm -f /var/lock/subsys/oracle # Stop the Oracle Database: echo "Stoping Oracle Databases ... " echo "-------------------------------------------------" >> /var/log/oracle date +" %T %a %D : Stoping Oracle Databases as part of system down." >> /var/log/oracle echo "-------------------------------------------------" >> /var/log/oracle su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut" >>/var/log/oracle echo "Done." echo "" echo "-------------------------------------------------" >> /var/log/oracle date +" %T %a %D : Finished." >> /var/log/oracle echo "-------------------------------------------------" >> /var/log/oracle ;; 'restart') $0 stop $0 start ;; esac5.4.修改/etc/init.d/oracle服务文件权限[root@oracle ~]#chmod 755 /etc/init.d/oracle5.5.添加开机自启服务[root@oracle ~]#chkconfig oracle on5.6.需要在关机或重启机器之前停止数据库,做一下操作#关机 [root@oracle ~]ln -s /etc/init.d/oracle /etc/rc0.d/K01oracle #重启 [root@oracle ~]ln -s /etc/init.d/oracle /etc/rc6.d/K01oracle #进行测试 [root@oracle ~]# service oracle start #启动oracle [root@oracle ~]# service oracle stop #关闭oracle 5.7.重启查看Oracle监听和实例进程是否均能自动启动[root@oracle ~]#reboot
2021年04月16日
1,238 阅读
0 评论
0 点赞
2021-04-15
网站建设:腾讯云轻量服务流量超出限制自动关机脚本
腾讯云近期活动很多,价格也比某套路云优惠很多,唯一的问题是流量用完后会收取高额的流量费,很多MJj发现时已经为时已晚。本脚本来源于Hostloc大佬2lifetop开发,项目地址是:https://github.com/2lifetop/LightHouse_Automatic_Shutdown介绍和配置说明如下:流量超标自动关机脚本——超详细版使用方法1、简介本脚本为腾讯云轻量服务器的流量监控脚本,可以定时监控多账户多地域多机器的流量使用情况,当已使用流量占总流量的百分比达到设定值(默认为95%)时会自动发出关机请求,避免流量超标,产生不必要的费用。2、获取腾讯云API密钥由于需要对腾讯云账号内的轻量服务器进行查询关机等操作,所以需要申请腾讯云API密钥。先登录上腾讯云官网,然后点开下面这个链接:https://console.cloud.tencent.com/cam/capi进入API密钥管理页面。保存SecretId、SecretKey3、获取TG酱 token(用于通知关机信息)TG酱依托于目前海外最流行之一的即时通讯软件Telegram(以下简称TG),如果你想启用改功能请申请一个账号 https://telegram.org/然后在浏览器中点击 @realtgchat_bot或者在TG搜索点击start后输入/token 机器人返回的值就是你的账号token记下这个token4、部署至GitHub Action4.1、fork项目由于需要使用自己的API密钥以及GitHub Action所以请务必先FORK本项目fork完之后接下来的操作请在自己账号下的刚fork的repository下进行操作4.2、添加密钥项目中按照 Setting--Secrets--New repository secert的顺序添加secrets依次添加之前保存的三个值SecretId #腾讯云api密钥ID 以英文逗号分隔SecretKey #腾讯云api密钥key 以英文逗号分隔tgToken #TG酱token 加上引号""多账户需要注意腾讯云账号密钥的ID 和KEY的顺序,不能乱,单账号直接复制粘贴即可,另外TG酱Token需要加上英文引号。添加后密钥显示名称会统一更换为大写字母。依次添加完成即可。效果检验点击build就可以看到输出日志了详细配置修改流量百分比可以在LH.py中修改如果自建TG消息机器人也可以在该文件中修改。更改运行频率默认每小时运行一次 想要修改频率可以修改 .github/workflows/LH.yml中schedule的cron参数,具体使用方法可以前往 crontab使用方法查看
2021年04月15日
3,311 阅读
0 评论
0 点赞
1
...
23
24
25
...
28