首页 文章 精选 留言 我的

精选列表

搜索[私有网络],共10012篇文章
优秀的个人博客,低调大师

企业私有云之rabbitmq高可用

默认openstack使用rabbitmq做信息队列,如果想是云高可用,那么需要对每个涉及的组件都进行高可用配置,本文主要介绍如何使用rabbitmq做高可用。 高可用的方法为: 通过Erlang的分布式特性(通过magiccookie认证节点)进行RabbitMQ集群,各RabbitMQ服务为对等节点,即每个节点都提供服务给客户端连接,进行消息发送与接收。 这些节点通过RabbitMQHA队列(镜像队列)进行消息队列结构复制。本方案中搭建3个节点,并且都是磁盘节点(所有节点状态保持一致,节点完全对等),只要有任何一个节点能够工作,RabbitMQ集群对外就能提供服务。 环境为: 系统centos 7.1 rabbitmq版本是3.6.2 主机信息 node110.10.33.163 node210.10.33.166 node310.10.33.167 /etc/hosts配置为 10.10.33.163ip-10-10-33-163 10.10.33.166ip-10-10-33-166 10.10.33.167ip-10-10-33-167 下面是开始安装 一、安装 安装第三方库与rabbitmq yuminstall-yepel-release yuminstallrabbitmq-server 启动服务 systemctlenablerabbitmq-server.service systemctlstartrabbitmq-server.service 二、配置 在node1里配置 将node1的/var/lib/rabbitmq/.erlang.cookie复制到node2与node3 修改权限(所有节点) chmod400/var/lib/rabbitmq/.erlang.cookie chown-Rrabbitmq:rabbitmq/var/lib/rabbitmq/.erlang.cookie 在node2里配置 [root@ip-10-10-33-166my.cnf.d]#rabbitmqctlstop_app Stoppingnode'rabbit@ip-10-10-33-166'... [root@ip-10-10-33-166my.cnf.d]#rabbitmqctljoin_clusterrabbit@ip-10-10-33-163 Clusteringnode'rabbit@ip-10-10-33-166'with'rabbit@ip-10-10-33-163'... Youhavenewmailin/var/spool/mail/root [root@ip-10-10-33-166my.cnf.d]#rabbitmqctlstart_app Startingnode'rabbit@ip-10-10-33-166'... 在node3里配置 [root@ip-10-10-33-167my.cnf.d]#rabbitmqctlstop_app Stoppingnode'rabbit@ip-10-10-33-167'... [root@ip-10-10-33-167my.cnf.d]#rabbitmqctljoin_clusterrabbit@ip-10-10-33-163 Clusteringnode'rabbit@ip-10-10-33-167'with'rabbit@ip-10-10-33-163'... [root@ip-10-10-33-167my.cnf.d]#rabbitmqctlstart_app Startingnode'rabbit@ip-10-10-33-167'... 查看集群状态 [root@ip-10-10-33-166my.cnf.d]#rabbitmqctlcluster_status Clusterstatusofnode'rabbit@ip-10-10-33-166'... [{nodes,[{disc,['rabbit@ip-10-10-33-163','rabbit@ip-10-10-33-166', 'rabbit@ip-10-10-33-167']}]}, {running_nodes,['rabbit@ip-10-10-33-163','rabbit@ip-10-10-33-167', 'rabbit@ip-10-10-33-166']}, {cluster_name,<<"rabbit@ip-10-10-33-163">>}, {partitions,[]}, {alarms,[{'rabbit@ip-10-10-33-163',[]}, {'rabbit@ip-10-10-33-167',[]}, {'rabbit@ip-10-10-33-166',[]}]}] 三、集群高可用配置 设计镜像队列策略 在任何一个节点执行 [root@ip-10-10-33-163~]#rabbitmqctlset_policyha-all'^(?!amq\.).*''{"ha-mode":"all"}' Settingpolicy"ha-all"forpattern"^(?!amq\\.).*"to"{\"ha-mode\":\"all\"}"withpriority"0"...

优秀的个人博客,低调大师

Google Docs漏洞可窃取私有文档截图

包括Google Docs在内的许多谷歌产品都有"Send feedback"或"Help Docs improve"的选项,允许用户发送包含截图的反馈来改善产品。该反馈特征部署在谷歌的主网www.google.com,并通过iframe元素集成在其他域名中,在iframe元素可以从feedback.googleusercontent.com 加载弹窗内容。 试想我们使用Google Docs (https://docs.google.com/document) 并提交一个反馈。点击Help--> Send Feedback 后,就可以看到弹出的弹窗加载了文档的截图。Iframe的源(www.google.com) 与Google docs (docs.google.com)是不同的,因此要成功提交该截图必须要进行跨域通信。实际上,Google docs会通过postmessage发送每个像素的RGB值给www.google.com,然后再通过postmessage重定向这些RGB值到其iframe feedback.googleusercontent.com,然后从像素的RGB值渲染图像,并将base64编码的数据URI发送回主iframe。 这一过程完成后,要写一个feedback的描述,并点击发送描述和图像到https://www.google.com。 研究人员Sreeram在消息发送到feedback.googleusercontent.com的过程中发现了一个安全漏洞,攻击者利用该漏洞可以修改frame未任意的外部网站,因此,可以窃取和劫持要上传到谷歌服务的Google Docs截图。 漏洞产生的原因是Google Docs域名缺乏X-Frame-Options header,因此有可能修改消息的目标源(target origin),并利用页面和frame的跨域通信来实现攻击。 该攻击是需要用户交互的,比如点击“send feedback”按钮,漏洞利用可以获取要上传的截图并窃取和发送到恶意站点。攻击者只需要将Google Docs文件嵌入到虚假/恶意网站的iframe就可以劫持feedback弹窗来重定向内容到攻击者控制的域名。 POC视频参见:https://www.youtube.com/embed/isM-BXj4_80 更多技术细节参见:https://blog.geekycat.in/google-vrp-hijacking-your-screenshots/ 本文翻译自:https://thehackernews.com/2020/12/a-google-docs-bug-could-have-allowed.html 【责任编辑: 赵宁宁 TEL:(010)68476606】

优秀的个人博客,低调大师

教你搭建个人/企业私有云盘-kodexplorer

环境说明: 系统版本:CentOS 6.9 x86_64 软件版本:nginx-1.12.2php-5.5.38 可道云kodexplorer4.37 1、nginx的编译安装 1.1 创建目录mkdir -p /service/toolsmkdir /applicationcd /service/toolswget http://nginx.org/download/nginx-1.12.2.tar.gz 下载或者上传nginx包 1.2 解压tar zxvf nginx-1.12.2.tar.gz 1.3 编译安装yum install gcc gcc-c++ glibc -y #安装编译器yum install pcre-devel zlib-devel openssl-devel –y 装pcre为了重写rewrite提供正则表达式库,装zlib为了gzip提供数据压缩用的函数库,装openssl为 Nginx 模块(如 ssl )提供密码算法、证书以及 SSL 协议等功能C语言源码包,需要编译才能使用编译安装三部曲 ./configure(指定编译参数:安装目录及版本) cd nginx-1.12.2 ./configure --prefix=/application/nginx-1.12.2 --pid-path=/var/run/nginx.pid --user=nginx --group=nginx --with-http_ssl_module ./configure -help #查看帮助 生成Makefile文件makemake是用来编译的,它从Makefile中读取指令,然后编译 cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/os/unix -I objs -I src/http -I src/http/modules \ -o objs/src/http/modules/ngx_http_geo_module.o \ src/http/modules/ngx_http_geo_module.c make installmake install是用来安装的,它也从Makefile中读取指令,安装到指定的位置 [root@Web01 nginx-1.12.2]# cd /application/nginx-1.12.2/ [root@Web01 nginx1.12.2]# ls -1 conf #配置文件 html #网站html文件 logs #日志 sbin #二进制的执行文件 1.4 配置 创建软链接 ln -s /application/nginx-1.12.2 /application/nginx ln -s /application/nginx/sbin/nginx /usr/bin/ useradd -M -s /sbin/nologin -r -u 88 nginx #创建用户 -M 不创建用户的HOME目录 -s shell 指定默认登录shell -r 创建系统账户 -u uid 为账户指定一个唯一的UID conf目录 fastcgi.conf 配合php uwsgi_params 配合python nginx.conf 主配置文件 mime.types 多媒体资源类型配置文件 最小化配置文件 grep -Ev '^$|#' nginx.conf.default >nginx.conf [root@Web01 conf]# grep -Ev '^$|#' nginx.conf.default >nginx.conf [root@Web01 conf]# cat nginx.conf worker_processes 1; #工作进程数 events { #event模块 worker_connections 1024; #默认工作连接数 } http { #http模块,nginx核心模块 include mime.types; #加载的多媒体资源类型配置文件 default_type application/octet-stream; #默认类型(16进制) sendfile on; #优化配置选项 keepalive_timeout 65; #长连接超时时间65秒 server { listen 80; #默认监听的端口 server_name localhost; #网站域名 location / { #网站站点根目录位置 root html; #网站文件 index index.html index.htm; #网站首页 } error_page 500 502 503 504 /50x.html; #错误页面500,502.503.504返回50x.html location = /50x.html { root html; } } } 1.5 启动 /application/nginx/sbin/nginx –t #语法检查并测试 /application/nginx/sbin/nginx #启动 /application/nginx/sbin/nginx -s reload #平滑重启,不影响用户访问 /application/nginx/sbin/nginx -s stop #关闭 /application/nginx/sbin/nginx -V #查看版本及安装的模块 启动后会生成几个temp目录浏览器访问 编译安装Nginx完成 2、编译安装php 2.1下载并安装相关编译器mkdir -p /service/tools #创建目录 cd /service/tools/ wget http://mirrors.sohu.com/php/php-5.5.38.tar.gz #下载包 tar xf php-5.5.38.tar.gz #解压 yum install gcc gcc-c++ glibc -y #安装编译器,如果已经编译安装了nginx则不需要此步骤 yum install -y libxml2-devel curl curl-devel libjpeg-devel libpng-devel freetype-devel 安装编译时所需库 cd php-5.5.38 #进入php-5.5.38目录 2.2 编译安装编译生成makefile** ./configure --prefix=/application/php-5.5.38 --with-jpeg-dir=/usr/lib64 --with-freetype-dir=/usr/lib64/ --with-curl --enable-fpm --enable-mbstring --with-gd --with-fpm-user=nginx --with-fpm-group=nginx make && make install 3、配置 [root@Web02 php-5.5.38]# ln -s /application/php-5.5.38 /application/php #创建软链接 [root@Web02 php-5.5.38]# ln -s /application/php/bin/* /usr/bin/ #创建命令软链接 [root@Web02 php-5.5.38]# cp php.ini-production /application/php-5.5.38/etc/php.ini 拷贝默认配置文件 [root@Web02 php-5.5.38]# cp /application/php-5.5.38/etc/php-fpm.conf.default /application/php-5.5.38/etc/php-fpm.conf 拷贝默认php-fpm配置文件,php-fpm 启动进程数 4、启动 [root@Web02 php-5.5.38]# /application/php/sbin/php-fpm #启动php [root@Web02 php-5.5.38]# netstat -lntup|grep 9000 #查看进程9000端口 tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 97399/php-fpm 5、配置nginx使其支持php 查看nginx.conf.default有关php的部分(65-71行),将此内容添加到nginx.conf中,并修改fastcgi_param指定script文件名documentrootdocumentrootfastcgi_script_name可以在/application/nginx/conf/fastcgi.conf查看 65 #location ~ \.php$ { 66 # root html; 67 # fastcgi_pass 127.0.0.1:9000; 68 # fastcgi_index index.php; 69 # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; 70 # include fastcgi_params; 71 #} [root@Web02 php-5.5.38]# cd /application/nginx/conf/ [root@Web02 conf]# vim nginx.conf server { listen 80; server_name localhost; index index.php index.html index.htm; location / { root html; } location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME documentrootdocumentrootfastcgi_script_name; include fastcgi_params; } } } 这个配置的意思是 在浏览器中访问的.php文件,实际读取的是 $document_root(网站根目录)下的.php文件 -- 也就是说当访问127.0.0.1/index.php的时候,需要读取网站根目录下面的index.php文件,如果没有配置这一配置项时,nginx不回去网站根目录下访问.php文件,所以返回空白 配置项目中:include fastcgi_params; fastcgi_params 文件中含有各个nginx常量的定义,默认情况 SCRIPT_FILENAME = /scripts$fastcgi_script_name检查语法nginx -t 6、配置网盘,下载解压可道云kodexplorer [root@Web02 conf]# cd ../html/ #进入到站点目录 [root@Web02 html]# ls 50x.html index.html [root@Web02 html]# rm -rf * #删除原有的站点文件 [root@Web02 html]# wget http://static.kodcloud.com/update/download/kodexplorer4.37.zip 下载 [root@Web02 html]# unzip kodexplorer4.37.zip #解压 [root@Web02 html]# nginx #启动nginx 浏览器访问 根据提示操作 su -c 'setenforce 0' #关闭selinux,su -c 指定命令,用root执行 chmod -R 777 /var/www/html/ #按照提示修改权限 刷新页面重新访问,成功,设置管理员用户名和密码,进行登录及后续图形界面操作

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册