首页
归档
友链
关于
Search
1
网易云音乐黑胶会员月月免费赠送
3,738 阅读
2
十年之约RSS聚合订阅服务上线
3,266 阅读
3
工资发放日的区别
2,720 阅读
4
rsyslogd内存占用过高解决方案
2,480 阅读
5
Nginx反代MinIO后,上传文件签名异常
2,277 阅读
零碎
标本
码海
工具
其他
登录
Search
标签搜索
北京
摄影
生活
旅行
Java
学习笔记
教程
Linux
服务器
软件
日记
SpringBoot
Windows
服务
数据库
福利
Spring
系统
SQL
docker
萧瑟
累计撰写
198
篇文章
累计收到
1,412
条评论
首页
栏目
零碎
标本
码海
工具
其他
页面
归档
友链
关于
搜索到
38
篇与
其他
的结果
2022-10-29
CAS 单点登录服务端部署
CAS 介绍CAS是Central Authentication Service的缩写,中央认证服务,一种独立开放指令协议。CAS 是 耶鲁大学(Yale University)发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法,CAS 在 2004 年 12 月正式成为 JA-SIG 的一个项目。特点开源的企业级单点登录解决方案。CAS Server 为需要独立部署的 Web 应用。CAS Client 支持非常多的客户端(这里指单点登录系统中的各个 Web 应用),包括 Java, .Net, PHP, Perl, Apache, uPortal, Ruby 等。CAS属于Apache 2.0许可证,允许代码修改,再发布(作为开源或商业软件)。从结构上看,CAS 包含两个部分: CAS Server 和 CAS Client。CAS Server 需要独立部署,主要负责对用户的认证工作;CAS Client 负责处理对客户端受保护资源的访问请求,需要登录时,重定向到 CAS Server。下图 是 CAS 最基本的协议过程:CAS Client 与受保护的客户端应用部署在一起,以 Filter 方式保护受保护的资源。对于访问受保护资源的每个 Web 请求,CAS Client 会分析该请求的 Http 请求中是否包含 Service Ticket,如果没有,则说明当前用户尚未登录,于是将请求重定向到指定好的 CAS Server 登录地址,并传递 Service (也就是要访问的目的资源地址),以便登录成功过后转回该地址。用户在第 3 步中输入认证信息,如果登录成功,CAS Server 随机产生一个相当长度、唯一、不可伪造的 Service Ticket,并缓存以待将来验证,之后系统自动重定向到 Service 所在地址,并为客户端浏览器设置一个 Ticket Granted Cookie(TGC),CAS Client 在拿到 Service 和新产生的 Ticket 过后,在第 5,6 步中与 CAS Server 进行身份核实,以确保 Service Ticket 的合法性。在该协议中,所有与 CAS 的交互均采用 SSL 协议,确保,ST 和 TGC 的安全性。协议工作过程中会有 2 次重定向的过程,但是 CAS Client 与 CAS Server 之间进行 Ticket 验证的过程对于用户是透明的。另外,CAS 协议中还提供了 Proxy (代理)模式,以适应更加高级、复杂的应用场景,具体介绍可以参考 CAS 官方网站上的相关文档。CAS服务端部署PS:本服务搭建为测试服务,所使用域名和配置均为内网,仅供参考,不代表实际环境,且未部署HTTPS,如测试环境中报错,请配置HTTPS,错误描述为:“未认证授权的服务”环境要求CAS服务端war:下载地址Tomcat:下载地址MySQL5.7:自行配置部署教程1、将war包放入tomcat/webapps下,启动tomcat将会自动解压,启动成功后,我们将目录修改为cas-server;再次重启tomcat,访问:http://127.0.0.1:8080/cas-server/login出现以上界面,则说明服务正常启动。默认账户和密码为:casuser/Mellon2、登录MySQL数据库,创建用户表,用于对接CAS用户认证-- 创建cas_user表 DROP TABLE IF EXISTS `cas_user`; CREATE TABLE `cas_user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(30) DEFAULT NULL, `password` varchar(100) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8; -- 创建第一个用户 admin 默认密码123456 此处密码需使用MD5加密 insert into `cas_user`(`id`,`username`,`password`) values (1,'admin','e10adc3949ba59abbe56e057f20f883e');3、修改CAS服务端配置,配置自定义用户表,以及用户密码MD5加密打开 tomcat/webapps/cas-server/WEB-INF/classes/application.properties 文件,将初始密码注释,并添加MySQL配置信息。此处一般为该文件末尾。#CAS Authentication Credentials #cas.authn.accept.users=casuser::Mellon cas.authn.jdbc.query[0].url=jdbc:mysql://ip:3306/test_cas?serverTimezone=GMT cas.authn.jdbc.query[0].user=root cas.authn.jdbc.query[0].password=123456 cas.authn.jdbc.query[0].sql=select * from cas_user where username=? cas.authn.jdbc.query[0].fieldPassword=password cas.authn.jdbc.query[0].driverClass=com.mysql.jdbc.Driver cas.authn.jdbc.query[0].passwordEncoder.type=DEFAULT cas.authn.jdbc.query[0].passwordEncoder.characterEncoding=UTF-8 #MD5加密策略 cas.authn.jdbc.query[0].passwordEncoder.encodingAlgorithm=MD5 cas.tgc.secure=false cas.serviceRegistry.initFromJson=true4、将MySQL驱动Jar包放入:tomcat\webapps\cas\WEB-INF\lib 中,重启Tomcat服务,即可。MySQL 驱动Jar包:下载地址5、再次打开CAS登录页面,使用MySQL中配置的账号,即可登录系统。本文参考:https://github.com/apereo/cas-overlay-template
2022年10月29日
250 阅读
3 评论
2022-08-27
[福利]京东Plus会员免费领取体检套餐
活动仅限京东Plus会员,打开京东APP,扫码进入活动页面,免费领取爱康国宾体检套餐权益。【爱康国宾】价值499元体检免费领:体检项目包含心血管早期筛查、血尿常规、肝肾功能、血脂/尿酸等20余项,无二次消费;活动介绍领取时间:2022-08-19 15:03 至 2022-08-31 23:59兑换码有效期:2022年12月31日;此权益仅限在爱康集团旗下爱康国宾分院普检区域使用(爱康国宾VIP、爱康卓悦、爱康君安不可使用)。适用城市如下:北京、上海、南京、广州、深圳、成都、杭州、福州、沈阳、天津、苏州、重庆、长春、烟台、潍坊、威海、长沙、银川、固原、武汉、芜湖、西安、宁波、贵阳、六盘水、凯里、毕节、兴义、遵义、都匀、同仁、无锡、绵阳、镇江、青岛、佛山、东莞、张家界、温州、泰州、孝感、德阳、株洲、郑州、合肥此权益不能转售、不能兑换现金;如有疑问请咨询爱康体检宝APP在线客服。使用教程检测项目领取地址
2022年08月27日
1,566 阅读
6 评论
2022-08-17
Linux配置nginx开机自启动
今天部署服务,不小心搞坏服务器,后来重置了,从新部署了相关服务,其中重启了一次,发现Nginx没有启动,想起来没有配置开机自启,来做个记录,水篇文章。创建开机自启脚本cd /etc/systemd/system vi nginx.service内容:[Unit] Description=nginx service After=network.target [Service] Type=forking ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s quit PrivateTmp=true [Install] WantedBy=multi-user.targetNginx相关命令设置开机自启动systemctl enable nginx启动nginx服务systemctl start nginx.service重新启动服务systemctl restart nginx.service查看服务当前状态systemctl status nginx.service停止开机自启动systemctl disable nginx.service
2022年08月17日
486 阅读
12 评论
2022-07-25
免费半年通配符SSL(支持IP)申请教程
今天偶然在hostloc看到可以申请IP SSL证书的,顺手整理一下,防止下次找不到了。官方脚本使用说明## IPv6 acme.sh --issue -d 2402:4e00:1a10:1500:0:9557:d561:34ed --webroot /home/wwwroot/ --server https://acme.hi.cn/directory ## IPV4 acme.sh --issue -d 1.2.3.4 --webroot /home/wwwroot/ --server https://acme.hi.cn/directory ## 通配符 acme.sh --issue -d \*.example.com -d example.com --dns dns_dp --server https://acme.hi.cn/directory官方说明不支持.ru、.by、.su域名(DigiCert、Sectigo对俄罗斯、白俄罗斯禁入)。受限于与CA合作的条款,以及我们的EULA/TOS,禁止基于我们服务提供任何GUI。IPv6 、.onion有效期90天(CA限制)。不支持除 acme.sh 之外的客户端! ACME.sh YYDS!部署教程## 安装 acme.sh curl https://get.acme.sh | sh -s
[email protected]
## 安装完成后切换到安装目录 cd ~/.acme.sh/ ## 以宝塔为例 ## 创建网站,设置域名为自己的IP地址/域名,复制站点目录(BT:/www/wwwroot/[你的IP/域名]) ./acme.sh --issue -d [你的IP] --webroot [你的网站目录] --server https://acme.hi.cn/directory ## 申请成功后,在 /root/.acme.sh/[你的IP/域名] 目录 可以看到 ## [你的IP/域名].cer ## [你的IP/域名].key ## ca.cer ## fullchain.cer ## 复制[你的IP/域名].key的内容到BT的 密钥(KEY) 文本框中 ## 复制[你的IP/域名].cer ca.cer到pem格式的 证书(PEM格式) 文本框中效果如下:有需要的快来申请使用。 原文地址:https://hostloc.com/thread-1050449-1-1.html
2022年07月25日
544 阅读
13 评论
2022-07-11
Nacos集群部署
Nacos集群部署需提前准备 Nginx 服务和 MySQL 服务,Nginx的作用是做反向代理和负载均衡;本文档基于NACOS 2.1.0版本 服务器配置建议 2核 CPU / 4G 内存 及其以上,三个节点(官方建议)网络拓扑图其实 Nginx 应该部署到一台对外环境,而不是部署到节点中。 部署集群1.导入初始化默认SQL:将下载好的软件解压,在conf目录中有一个 nacos-mysql.sql 文件,导入到数据库中2.修改集群配置 将部署的三台节点的配置都修改成一样的 ## 当前位于解压后的nacos目录下 cd conf cp cluster.conf.example cluster.conf vi cluster.conf ## 将实例的删除或注释 替换成部署的节点地址 必须IP+端口 10.10.84.226:8848 10.10.84.229:8848 10.10.84.234:8848 ## 修改完保存配置3.修改数据库配置 将部署的三台节点的配置都修改成一样的 ## 当前位于解压后的nacos目录下 cd conf vi application.properties ## 找到 Config Module Related Configurations 将数据库修改为正式数据库地址和账号密码4.启动各节点服务## 当前位于解压后的nacos目录下 cd bin ## 直接执行启动脚本,无需添加任何参数 sh startup.sh5.查看服务环境默认账号密码:nacos/nacos 请勿将Nacos内部系统暴露到公网.集群管理→节点列表 各节点IP状态为UP则部署完成配置负载进入Nginx配置文件目录,修改nginx.conf文件,在server标签上 添加以下代码upstream nacos-cluster{ server 10.10.84.234:8848; server 10.10.84.226:8848; server 10.10.84.229:8848; }在80端口http标签内添加管理端反代location /nacos/{ proxy_pass http://nacos-cluster; }新建一个server标签监听指定端口,用于转发请求server { listen 8048; server_name localhost; location / { proxy_pass http://nacos-cluster/; } }这样配置就可以了。程序中直接配置 10.10.84.234:8048 可以将应用注册到Nacos集群中 8048端口会将请求均衡分散在三个节点上。
2022年07月11日
212 阅读
2 评论
2022-06-04
一次电脑网络异常排查
最近不知道为什么自己组装的台式机开机后2分钟后浏览器就无法打开网页。但是从主路由接线,电脑网络是正常的;从副路由接线,就只能联网2分钟,ping 网关和ping网址都是正常能解析的,网上找了一些方案,说是DNS、网关问题,试了好久都没有解决问题。重置了网卡也无法解决这个问题,找了好久一直都没解决这个。使用了火绒的火绒剑,排查了老久也没发现相关问题,今天偶然发现网卡里面竟然还有一个驱动,一般网卡上面没这玩意。取消这个网卡驱动后,网络竟然好了,查了查相关资料。这款软件是“cFosSpeed”,主要是流量优化的网络驱动程序。打开这个软件官网,发现是主板内置的软件,而我也安装了主板的驱动 Dragon Center打开软件发现有一个 局域网管理器 ,这个好像内置的就是cFosSpeed,我们关闭它就可以了,或者在网卡驱动那边取消勾选也是可以的。至此问题解决了,但是唯一很奇怪的是我副路由在它这个地方就没网,主路由则是正常的,很是奇怪。有空再深层次探讨一下这个软件,看具体怎么玩的。
2022年06月04日
569 阅读
9 评论
2022-01-09
Apple M1 使用nvm管理并安装Nodejs
本文使用 nvm 来管理和安装 node.js,研究和实验了半天,环境终于配置好了。安装nvm curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.6/install.sh | bash如果GitHub国内网络问题,可能需要配置一下本地host或者代理。## 方法一:修改host文件 sudo vim /etc/hosts ## 键盘输入 i 进入编辑 199.232.68.133 raw.githubusercontent.com ## 修改hosts文件后,按 esc 键退出,再按shift+:键,再输入w和q,保存退出 ## 方法二:终端内设置代理 ## 好处是简单直接,并且影响面很小(只对当前终端有效) export http_proxy=http://proxyAddress:port出现以下界面表示安装成功配置环境变量注:~/.bash_profile, ~/.zshrc, ~/.profile,~/.bashrc部分人没配置过环境变量可能这几个文件并不存在,建议提前新建一下。后期方便使用和配置其他环境变量。修改~/.bash_profile文件,最后添加上export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"执行命令:source ~/.bash_profile source ~/.zshrc配置完成后,输入 nvm --version可以检测当前安装版本,我的是0.33.6.安装Node.js## 获取Node.js所以版本列表 nvm ls-remote ## 安装最新稳定版 node ## 这里最新稳定版是v17.3.0 ## 因为版本太高导致项目无法启动, ## 安装低版本v14.18.2和v14.15.0,会出现错误, ## clang: error: no such file or directory: 'CXX=c++' ## 查找半天原因也无法解决,后来一个版本的试,发现v16.13.1可以安装,且项目能正常允许 ## 估计是arm版本适配问题吧。 nvm install stable ## 安装指定版本node.js nvm install 版本号 ## 切换node版本 nvm use v16.13.1 ## 设置默认 nvm alias default v16.13.1注意事项也在上面执行脚本内说明了。参考网址Mac os 安装node.js及环境变量的配置过程(Lifeispink - 博客园)Mac安装多个版本node - 简书Mac 中安装 nvm: 切换Node 不同版本 - 广东靓仔-啊锋 - 博客园Mac环境(m1适配)下node安装与卸载方法 - 简书Macbook M1 安装node-CSDN博客MAC下终端走代理的几种方法_Make-CSDN博客
2022年01月09日
1,684 阅读
0 评论
2022-01-05
SQLServer for Linux安装
前段时候,自己搭建了一个内网虚拟机,准备部署一下之前的项目,发现还缺少数据库,后来整理了一下,发现没必要使用Windows Server来部署,完全可以使用Liunx,包括IIS也是有软件可以替换。本文整理了一下SQL Server for Linux安装教程
2022年01月05日
351 阅读
0 评论
2022-01-04
2022年中国移动A股成功上市,感恩有礼
今天公司大群内领导分享了一个活动福利,是关于2022年中国移动A股成功上市,感谢有礼,送福利,我顺便也分享给大伙。
2022年01月04日
1,374 阅读
7 评论
2021-11-14
利用GitHub520提供hosts文件定时更新本地hosts文件
之前自己利用 Gitea 搭建了一个Git私服,镜像 GitHub 项目的时候经常无法访问,导致镜像失败。后来发现了一个不错的项目 GitHub520 ,只要去修改本地 hosts 文件就可以访问GitHub了。但是每次去修改服务器的 hosts 文件,就有些繁琐了。后来写一个脚本,并配合 Linux 的 Crontab 定时更新,完美解决问题。脚本内容#!/bin/bash # 定时更新GitHub Host内容 # 利用项目GitHub520提供Host文件定时更新本地Host # # # Author: xiaose # Email:
[email protected]
# Github: https://github.com/qingshanking # Date: 2021/08/23 sed -i '3,$d' /etc/hosts # 上述作用是从第三行开始 进行修改,保留系统自带的hosts内容 curl https://raw.hellogithub.com/hosts >> /etc/hosts # 拉取hosts文件 写入本地hosts项目详情Crontab定时任务[root@localhost ~]# crontab -e ## -e: 编辑crontab定时任务 ## -l: 查询crontab任务 ## -r: 删除当前用户所有的crontab任务12345 ## 每30分钟执行一次ModifyHost 修改hosts文件 */30 * * * * /root/ModifyHost.sh更多用法,可参考Linux Crontab 定时任务
2021年11月14日
1,192 阅读
1 评论
1
2
3
4