jenkins更改admin密码

找了半天, 从页面上没找着修改admin超级管理员密码的地方,只能从配置文件着手了: Jenkins 配置文件存放在用户目录下.jenkins中 例如root用户在路径  /root/.jenkins/ 其他用户在 /home/user/.jenkins/ cd  /root/.jenkins/ 在 .jenkins目录下有一个users目录,存放用户信息 cd users user目录下找到你的帐号目录,例如你的登录帐号是admin,那么目录就是admin cd admin 该目录下有个config.xml文件

  passwordHash 字段存放的是加密过后的密码 Jenkins的密码采用的是Java加解密工具 jBCrypt,我也是第一次接触到这种加密方式,实在被他惊叹到了!这种加密方式每次加密同一个明文竟然都是得到不一样的结果,那他又是通过怎样的方式来解密的呢?原来,他拿着用户的明文,和存储的密文去重新生成一串密文去判断。总结如下,它有以下特点: 关于bcrypt: 1、bcrypt是不可逆的加密算法,无法通过解密密文得到明文。 2、bcrypt和其他对称或非对称加密方式不同的是,不是直接解密得到明文,也不是二次加密比较密文,而是把明文和存储的密文一块运算得到另一个密文,如果这两个密文相同则验证成功。   下面, 用python生成加密后的密码:

修改 #jbcrypt:$2a$12$4OqwS9bCDIh3YHsYo5ApJeEqedGF5ehgK1Ei0T1F2E6p6J1c8EhTu 为 #jbcrypt:$2a$12$ldO4lUKecFxyMTgSntrVNuyaeRBIhN1onQvpXf2fQ1asnV6mkESBi 最后重启jenkins   注: 在python2里测试生成加密字符串的过程没有问题,但是在python3会报如下错误:

查找了下原因,是因为python3里,字符串有str和bytes两种形态,所以需要改成

另外,bcrypt有多种标准,我们需要的是2a,所以还要改成:

这样就得到正确结果了。

nginx反向代理和 ip重定向到域名配置

配置说明: 1 访问test.cn将会跳转到test.cn/cms。并重新匹配server里面的规则 2 将前端用户访问test.cn/cms 页面转发到 http://172.16.20.1:8080/cms/ 并且前端显示为test.cn/cms 3 将前端用户访问test.cn/u 页面转发到 http://172.16.20.2:8080/u/ 并且前端显示为test.cn/u 4 将前端用户访问‘test.cn/任意6个字符或者数字’ 页面转发到a.b.c/前端输入的任意6个字符或者数字。并且前端显示为‘test.cn/任意6个字符或者数字’ 5 将前端用户访问的163.177.111.111重定向到test.cn 并且前端显示为test.cn。如果用户输入163.177.111.111/test 页面会重定向到test.cn/test 6 将域名重定向到ip+端口的形式访问

 

nginx编译安装

Yum安装的nginx模块不全, 有时需要编译安装, 在centos7上编译安装前,需要安装一些依赖包,命令是:

可能会提示pcre已经装过或存在多重版本, 则可以去掉pcre 之后进入Nginx源码目录,进行安装:

 

openvpn一键安装脚本

openvpn一键安装脚本:

 

Markdown : An error occurred with the Html rendering component

Markdown : An error occurred with the Html rendering component 一,最近因为使用 Markdown 写一点东西,不过下载安装后,并不能正常使用 Markdown下载地址:https://markdownpad.com/download.html 安装以后出现: 查了些资料,应该是MarkdownPad 2 在win10下 出现HTML 渲染错误(This view has crashed) 的问题. 二,解决方法: 安装一个SDK的工具包: Installation:awesomium_v1.6.6_sdk_win 下载地址: http://markdownpad.com/download/awesomium_v1.6.6_sdk_win.exe 安装完成后, Markdown 就可以正常使用了。

OpenStack删除Cinder盘失败解决办法

OpenStack删除Cinder盘失败解决办法 问题 Openstack Mitaka版本,终止了云主机之后,发现无法删除对应的云硬盘,删除提示报错为云硬盘的状态不是错误或者可用状态  思路 1 切换至admin用户,进入数据库手动更新云硬盘的状态至错误状态 2 针对lvm,可以用命令lvdisplay列出所有卷的信息,如果现在应用命令lvremove来删除相应的卷,则会提示要删除的卷正在使用中,所以我们使用命令lsof查看相应卷所占用的进程,然后kill这个进程; 3 应用命令lvremove来删除相应的卷. 这里只针对第一种方法实践 操作 查看云硬盘状态:

  命令行删除,提示报错说还有依赖的快照 cinder delete XXX

  方法有很多,这里介绍一种简单的。采取暴力手段,进入元数据库。 show databases; use cinder; show tables; select找到出错的数据 删除元数据库中的数据,不过不能简单得把这个cinder盘的数据删除,以为数据库有外键依赖,而是要把cinder盘的error—deleting改成deleted 再次查看云硬盘状态: 发现已经成功得删除了出错的cinder盘 总结: 1、删除的时候注意id和volume-id两个字段,不要弄混掉了; 2、测试环境,暴力解决问题还是不太好,注意检查日志来对症下药。 3、不要简单得去删除表中数据,而是需要更改状态

kolla之reconfigure

kolla的配置管理主要是管理openstack service config文件; 主要实现是

reconfigure 使用 下面以1个例子来演示下 修改nova.conf,重启相关服务 在部署节点 新建/etc/kolla/config/nova/nova.conf

reconfigure 代码流程 kolla-ansible 的核心代码在ansible实现的 先介绍下ansible role是什么?如何使用 先看看下面nova role的代码目录

ansible role是什么? Ansible Role 是一种分类 & 重用的概念,透过将 vars, tasks, files, templates, handler … 等等根据不同的目的(例如:nova、glance、cinder),规划后至于独立目录中,后续便可以利用 include 的概念來使用。 若同样是 include 的概念,那 role 跟 include 之间不一样的地方又是在哪里呢? 答案是:role 的 include 机制是自动的! 我們只要事前將 role Read more…

基于官方镜像制作tomcat-alpine镜像

由于此镜像内要求安装glibc, 用于在镜像内支持docker命令,下面是网上搜索到的一个Dockerfile配置:

由于镜像内下载github很慢, 而且下载GLIBC_PKG_VERSION 2.3版本的会报错, 在此下载最新版本2.26-r0:

下面是我自己的构建脚本。 注: 构建时需要传参数IMAGE_N=‘all(7.0.88-jre7-alpine 7.0.88-jre8-alpine 8.0.52-jre7-alpine 8.0.52-jre8-alpine 8.5.29-jre8-alpine 9.0.8-jre8-alpine)’ :

  其中confdownload 是配置中心,pinpoint-agent是apm监控,entrypoint.sh内容如下:

下面是自定义tomcat-jdk的脚本:

  tomcat-jre版本:

————————–分隔线 ————————– 最新更新: 将此基础镜像脚本提交到了git, 重新修改了内容: 生成Dockerfile及构建脚本: build.sh

2. entrypoint.sh

3. 由于将fish做为默认shell, 修改fish_greeting内容:~/.config/fish/functions/fish_greeting.fish

更新(2019-01-07), 将所需下载的文件全部放到了nginx上供远程下载, 将java基础镜像也揉合进脚本了:

  参考: http://heiber.im/post/creating-a-solid-docker-base-image/

centos7上Virtualenv从python3.4升级到Python3.7.4

目前我的虚拟环境python版本是3.4,  想升级到最新的3.7.4, 总结步骤如下: 首先激活当前env_py3环境, 并导出当前依赖包:

首先安装依赖: 注意: libffi-devel必须安装, 不然编译安装会失败而导致安装不完整, 而创建虚拟环境时会报错(No module named ‘_ctypes’ )

下载安装python3.7:

创建软链接:

配置虚拟环境:

附: 我的系统配置文件: .bashrc:

  旧的:升级python2.7.14: 在系统上升级python还是需要慎重, 严重的会导致系统命令不可用, 建议最好不要覆盖系统原本的/usr/bin/python文件 下面是升级脚本:

  解决升级python导致的salt启动失败: centos7重新编辑安装了python2.7.14, 原来是2.7.5, 导致salt-minion启动失败。 解决: 由于之前备份了python执行文件为python2.7.5, 新的Python安装在/usr/local/目录。由于脚本误把之前版本的pip包删除了, 所以重新安装salt需要的模块: 首先更改salt执行文件: sed -i ‘s|^#!/usr/bin/python$|#!/usr/bin/python2.7.5|’ /usr/bin/salt* 如提示没有yaml块, 则安装之: wget http://pyyaml.org/download/pyyaml/PyYAML-3.12.tar.gz; tar -xvzf PyYAML-3.12.tar.gz; python2.7.5 setup.py install Read more…

梅林固件安装SS【shadowsocks】插件教程

梅林固件安装SS【shadowsocks】插件教程 注:本教程不适用于N66U和AC66U两款机型。   由于不可抗拒的因素现在已经无法再软件中心安装SS了, 那么接下来我们就解决这个问题:手动安装shadowsocks 首先刷好梅林之后进入系统设置界面,在Enable SSH里选择LAN ONLY,其它不用动,选择下面的应用设置。  之后用putty或者SecureCRT软件链接路由器,推荐使用SecureCRT, 点我下载 打开securecrt,创建新连接,协议选择SSH2,地址选择你的路由器地址,端口22不变,用户名填路由器管理员,默认是admin。 点击链接之后输入密码。登陆成功后如下图,可能是配色原因,默认为白色。  接下来开始下载并且安装ss 一行一行的复制,然后右键在SecureCRT粘贴回车执行。

之后重启路由器你就会在软件中心中看见了shadowsocks了。 另附 shadowsocks3.6.0下载 ,可直接在软件中心后台离线安装 点我下载 离线安装说明: 使用chrome浏览器,进入路由器梅林固件页面,然后进入软件中心-离线安装中心,根据提示,将安装包改名为shadowsocks.tar.gz上传安装。可能会提示上传安装中而没有下一步指示,此时只需等待3分钟后刷新页面重新进入软件中心即可看到插件。  转自:http://blog.sina.com.cn/s/blog_4891cbc50102x5ly.html