记录关于Devops运维,虚拟化容器云计算,数据库,网络安全等各方面问题。
申请Let's Encrypt永久免费SSL证书 Let's Encrypt作为一个公共且免费SSL的项目逐渐被广大用户传播和使用,是由Mozilla、Cisco、Akamai、IdenTrust、EFF等组织人员发起,主要的目的也是为了推进网站从HTTP向HTTPS过度的进程,目前已经有越来越多的商家加入和赞助支持。 Let's Encrypt免费SSL证书的出现,也会对传统提供付费SSL证书服务的商家有不小的打击。到目前为止,Let's Encrypt获得IdenTrust交叉签名,这就是说可以应用且支持包括FireFox、Chrome在内的主流浏览器的兼容和支持,虽然目前是公测阶段,但是也有不少的用户在自有网站项目中正式使用起来。 虽然目前Let's Encrypt免费SSL证书默认是90天有效期,但是我们也可以到期自动续约,不影响我们的尝试和使用。 第一、安装Let's Encrypt前的准备工作 根据官方的要求,我们在VPS、服务器上部署Let's Encrypt免费SSL证书之前,需要系统支持Python2.7以上版本以及支持GIT工具。这个需要根据我们不同的系统版本进行安装和升级,因为有些服务商提供的版本兼容是完善的,尤其是debian环境兼容性比CentOS好一些。 第二、快速获取Let's Encrypt免费SSL证书 PS:在获取某个站点证书文件的时候...
Nginx负载均衡与缓存的几种方式 负载均衡概述 早期的网站流量和业务功能都比较简单,单台服务器足以满足基本的需求,但是随着互联网的发展,业务流量越来越大并且业务逻辑也跟着越来越复杂,单台服务器的性能及单点故障问题就凸显出来了,因此需要多台服务器进行性能的水平扩展及避免单点故障出现。那么如何将不同用户的请求流量分发到不同的服务器上呢? 负载均衡的原理及处理流程 系统的扩展可以分为纵向扩展和横向扩展。 纵向扩展是从单机的角度出发,通过增加系统的硬件处理能力来提升服务器的处理能力 横向扩展是通过添加机器来满足大型网站服务的处理能力。 这里面涉及到两个重要的角色分别是"应用集群"和"负载均衡器"。 应用集群:将同一应用部署到多台机器上,组成处理集群,接收负载均衡设备分发的请求,进行处理并返回响应的数据。 负载均衡器:将用户访问的请求根据对应的负载均衡算法,分发到集群中的一台服务器进行处理。 负载均衡的作用 1、解决服务器的高并发压力,提高应用程序的处理性能。 2、提供故障转移,实现高可用。 3、通过添加或减少服务器数量,增强网站的可扩展性。 4、在负载均衡器上进行过滤,可以提高系统的安全性。 ...
1.Keepalived单实例主备模式集群方案     这是最简单的模式,不只考虑高可用集群,先不考虑后方的Nginx负载均衡集群,即后端的服务器集群,参考下面的图示:     其对应的Keepalived核心配置如下: lb01 global_defs { notification_email { acassen@firewall.loc failover@firewall.loc sysadmin@firewall.loc } notification_email_from Alexandre.Cassen@firewall.loc smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id lb01    # 用来标识一个Keepalived高可用集群中的一个节点服务器,因此是唯一的 } vrrp_instance VI_1 { state MASTER      # 主 interface eth0 virtual_router_id 55    # 主备两台服务器的该值应该要相同 priority 150  advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 10.0.0.12/24 dev eth0 label eth0:1 } } lb...
 
0

Linux crontab提权攻击

发表者:admin分类:应用服务2022-03-12 11:00:08 阅读[454]
Linux crontab提权攻击 crontab定时任务是LINUX上最常用的一个功能,不过使用不当很容易受到提权。使用crontab时请注意以下两点:crontab任务千万不要写到/etc/crontab文件里,这是很危险的。通过crontab -e去创建,让他写到默认的/var/spool/cron下;能不用 root 去创建尽量不用,如果一定要用root,请保存到一个其他用户进不去、改不了、看不了的位置(最好能用chattr处理下)。为什么有这样的警告,请看下面的示例。一、位置不当引发的提权假设当前我们用 root 用户创建了如下一个任务:*/2 * * * * root sh /home/elk/test.sh具体内容如下:echo www.361way.com > /tmp/test/home/elk/test.sh文件的权限我们设置为600,属主和属组都设为root,感觉上应该还挺安全的吧,实际呢?看下图:root并且为600权限,看起来确实不错,我们切换到elk用户时,使用echo确实发现无法正常写入(chown和chmod也不会成功的)。但由于文件存放的位置在elk的家目录下,所以elk用户实际上是有修改文件的权限的。使用vim编辑文件时,实际是可以强制修改的,而且修改后文件的属主也会变掉,当然也可以使用上面截图里的方法,mv走以后,再新建一个,内容是什么就随便你自己写了。而上面...
 
0

keepalived健康检查方式

发表者:admin分类:应用服务2022-03-11 11:27:08 阅读[471]
keepalived健康检查方式一、健康检查方式keepalived对后端realserver的健康检查方式主要有以下几种TCP_CHECK:工作在第4层,keepalived向后端服务器发起一个tcp连接请求,如果后端服务器没有响应或超时,那么这个后端将从服务器池中移除。HTTP_GET:工作在第5层,向指定的URL执行http请求,将得到的结果用md5加密并与指定的md5值比较看是否匹配,不匹配则从服务器池中移除;此外还可以指定http返回码来判断检测是否成功。HTTP_GET可以指定多个URL用于检测,这个一台服务器有多个虚拟主机的情况下比较好用。SSL_GET:跟上面的HTTP_GET相似,不同的只是用SSL连接MISC_CHECK:用脚本来检测,脚本如果带有参数,需将脚本和参数放入双引号内。脚本的返回值需为:            0)  检测成功            1)  检测失败,将从服务器池中移除            2-255)检测成功;如果有设置misc_dynamic,权重自动调整为 退出码-2,如退出码为200,权重自动调整为198=20...
shell判断变量的值是否为空方法判断一个脚本中的变量是否为空,我写了一个这样的shell脚本:#!/bin/sh#filename: test.shpara1=if [ ! -n $para1 ]; then echo "IS NULL"else echo "NOT NULL"fi然后把该脚本:test.sh通过chmod +x 改为可以执行的脚本,执行后输出的结果为: NOT NULL很是奇怪,最后,通过查询一些资料发现,|可以通过如下方式判断一个shell变量是否为空:1. 变量通过" "引号引起来      如下所示:,可以得到结果为 IS NULL.#!/bin/shpara1=if [ ! -n "$para1" ]; then echo "IS NULL"else echo "NOT NULL"fi2. 直接通过变量判断      如下所示:得到的结果为: IS NULL#!/bin/shpara1=if [ ! $para1 ]; then echo "IS NULL"else echo "NOT NULL"fi3. 使用test判断    得到的结果就是: dmin is not set! #!/bin/shdmin=if test -z "$dmin"then echo "dmin is not set!"else echo "dmin is set !"fi4. 使用""判断#!/bin/shdmin=if [ "$dmin&...
docker部署awvs14实测可用Acunetix Web Application Security Scanner Crack 211220100docker pull xsgcs/awvs14_crack_211220100:211220100docker run -it -d -p 8088:3443 xsgcs/awvs14_crack_211220100:211220100 /bin/bash /var/local/xsgcs.shGo to https://YOUR_IP:8088/Username:xsgcs@xsgcs.com Password:Xsgcs.com Crack_Version:211220100
 
0
容器化部署nessus安全扫描工具Latest Version: 10.1.1 (#61) LINUX on Centos8Plugin Set: 202202171941Usage:1.docker pull sakurashiro/nessus:latest2.docker run -p 8834:8834 -it -d --name nessus --privileged sakurashiro/nessus:latest /usr/sbin/init3.Visit website on your browser https://YOUR_IP:88344.Wait it initialize and input username&passwordInfo:Username:sakuraPassword:sakura
maven多个模块指定一个模块打包方法mvn clean package install -pl 指定的模块名 -am这个不仅install 到target目录下也会install到本地仓库。mvn clean package -pl 指定的模块名 -am这个打包到target目录下如对ruoyi-cloud中的gateway模块打包。PS W:\学习代码\RuoYi-Cloud>    mvn clean package -pl ruoyi-gateway -amDownloaded from aliyun-public: https://maven.aliyun.com/repository/public/org/apache/commons/commons-lang3/3.7/commons-lang3-3.7.jar (500 kB at 116 kB/s)[INFO] Replacing main artifact with repackaged archive[INFO] ------------------------------------------------------------------------[INFO] Reactor Summary for ruoyi 3.2.0:[INFO][INFO] ruoyi .............................................. SUCCESS [  0.283 s][INFO] ruoyi-common ....................................... SUCCESS [  0.006 s][INFO] ruoyi-common-core .................................. SUCCESS [ 47.210 s][INFO] ruoyi-common-redis ................................. SUCCESS [  3.027 s][INFO] ruoyi-gateway .......
k8s组件controller-manager与scheduler状态为Unhealthy处理master初始化完成后,以下两个组件状态显示依然为Unhealthyroot@master1:~$ sudo kubectl get cs NAME STATUS MESSAGE ERROR controller-manager Unhealthy Get http://127.0.0.1:10252/healthz: dial tcp 127.0.0.1:10252: connect: connection refused scheduler Unhealthy Get http://127.0.0.1:10251/healthz: dial tcp 127.0.0.1:10251: connect: connection refused etcd-0 Healthy {"health":"true"}网上说修改root@master1:~$ ls /etc/kubernetes/manifests/etcd.yaml kube-apiserver.yaml kube-controller-manager.yaml kube-scheduler.yaml修改清单文件,注释掉--port=0这一行,在对清单文件进行修改时先做备份操作注意:在对清单文件做备份时,不要直接把清单文件备份在平级目录里,即/etc/kubernetes/manifests目录,需要备份到其他目录中或在平级目录再创建一个类似/etc/kubernetes/manifests/bak的备份...
    总共266页,当前第17页 | 页数:
  1. 7
  2. 8
  3. 9
  4. 10
  5. 11
  6. 12
  7. 13
  8. 14
  9. 15
  10. 16
  11. 17
  12. 18
  13. 19
  14. 20
  15. 21
  16. 22
  17. 23
  18. 24
  19. 25
  20. 26
  21. 27