ArchLinux笔记本电脑合盖不休眠的方法

2017年9月4日 没有评论

找了一个N270处理器的小上网本跑ArchLinux当开发服务器,结果发现合上屏幕就会休眠,于是祭起搜索引擎神器,在ArchLinux的Wiki宝典里面找到了如下的办法:

  • 修改/etc/systemd/logind.conf

其中:

  • HandlePowerKey:按下电源键后的动作
  • HandleSleepKey:按下挂起键后的动作
  • HandleHibernateKey: 按下休眠键后的动作
  • HandleLidSwitch:合上笔记本盖后待机

动作可以是:ignore、poweroff、reboot、halt、suspend、hibernate、hybrid-sleep、lock 或 kexec。

话说自己用还是喜欢ArchLinux,云上的话CentOS也可以忍受

分类: Linux 标签:

用yum给centos7安装nginx

2017年8月21日 没有评论

最近使用阿里云上的centos7的时候,发现直接yum install的nginx版本比较低,鉴于我是新版本强迫症,研究了一下怎么用nginx预编译的包,而不是centos仓库自带的。如下

1.在/etc/yum.repos.d目录下创建nginx.repo文件,内容如下:

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1

2.再用yum install nginx的时候,可以看到已经是最新的版本了。

这样做的好处有几个,可以直接用systemctl来控制Nginx服务了,再有以后yum update也能跟着更新。

分类: Linux 标签: ,

CentOS的firewalld与docker有冲突

2017年7月25日 没有评论

我这里表现为容器映射到宿主的端口,没有被防火墙保护。防火墙能用,但是报错,如下:

[root@localhost ~]# systemctl status firewalld
● firewalld.service – firewalld – dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) since 三 2017-07-26 00:42:31 CST; 7h left
     Docs: man:firewalld(1)
  Main PID: 760 (firewalld)
   Memory: 0B
   CGroup: /system.slice/firewalld.service
            └─760 /usr/bin/python -Es /usr/sbin/firewalld –nofork –nopid

7月 25 16:43:44 localhost.localdomain firewalld[760]: WARNING: COMMAND_FAILED: ‘/usr/sbin/iptables -w2 -t nat -C OUTPUT -m addrtype –dst-type LOCAL -j DOCKER ! –dst 127.0.0.0/8’ failed:
7月 25 16:43:44 localhost.localdomain firewalld[760]: WARNING: COMMAND_FAILED: ‘/usr/sbin/iptables -w2 -t filter -C FORWARD -o docker0 -j DOCKER’ failed:
7月 25 16:43:44 localhost.localdomain firewalld[760]: WARNING: COMMAND_FAILED: ‘/usr/sbin/iptables -w2 -t filter -C FORWARD -j DOCKER-ISOLATION’ failed:
7月 25 16:43:44 localhost.localdomain firewalld[760]: WARNING: COMMAND_FAILED: ‘/usr/sbin/iptables -w2 -t nat -C POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE’ failed:
7月 25 16:43:44 localhost.localdomain firewalld[760]: WARNING: COMMAND_FAILED: ‘/usr/sbin/iptables -w2 -t nat -C DOCKER -i docker0 -j RETURN’ failed:
7月 25 16:43:44 localhost.localdomain firewalld[760]: WARNING: COMMAND_FAILED: ‘/usr/sbin/iptables -w2 -D FORWARD -i docker0 -o docker0 -j DROP’ failed:
7月 25 16:43:44 localhost.localdomain firewalld[760]: WARNING: COMMAND_FAILED: ‘/usr/sbin/iptables -w2 -t filter -C FORWARD -i docker0 -o docker0 -j ACCEPT’ failed:
7月 25 16:43:44 localhost.localdomain firewalld[760]: WARNING: COMMAND_FAILED: ‘/usr/sbin/iptables -w2 -t filter -C FORWARD -i docker0 ! -o docker0 -j ACCEPT’ failed:
7月 25 16:43:44 localhost.localdomain firewalld[760]: WARNING: COMMAND_FAILED: ‘/usr/sbin/iptables -w2 -t filter -C FORWARD -o docker0 -m conntrack –ctstate RELATED,ESTABLISHED -j ACCEPT’ failed:
7月 25 16:43:44 localhost.localdomain firewalld[760]: WARNING: COMMAND_FAILED: ‘/usr/sbin/iptables -w2 -t filter -C FORWARD -o docker0 -j DOCKER’ failed:

分类: Linux 标签:

为SpringBoot做了一个Docker的Dockerfile

2017年7月25日 没有评论

话不多说,帖文件:

FROM java:openjdk-8u111-jdk

VOLUME /tmp

ADD springboot.jar app.jar

ENV JAVA_OPTS=""

ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -jar /app.jar" ]

分类: 未分类 标签:

关于服务器数字证书的几个问题

2017年7月17日 没有评论

1.数字证书的一般流程

数字证书一般要自己生成私钥(key文件),然后用私钥生成证书申请(csr文件),然后用证书申请文件去要求证书颁发机构来颁发签名证书(cer文件或者crt文件)。证书办法机构可以是企业的RootCA或者分支CA,也可以是第三方受信任的CA。

2.数字证书的格式

目前一般第三方受信任的CA的签名证书都是用PEM格式,也就是Base64文件方式,这种正式一般只有签名证书部分。在Nginx或者Aliyun的CDNShang,这种证书一般需要配合私钥使用。IIS上一般使用PKS格式的证书,这种可是的证书是包含私钥的,所以一般的PKS格式证书,需要用PEM格式的证书和私钥合并而成,合并的时候,还会要求密码。

Java使用另一套证书格式,比如Tomcat上要求的证书格式为jks文件,这是一种java使用的所谓的证书库

3.数字证书的加工

数字证书到手后,一般不需要加工,可以直接使用。但是随着现在浏览器环境的多样化,以及Google对于https的不懈推广,导致不使用https的网站,会被chrome或者firefox等浏览器直接标记为不可信任,,而使用了https的网站,证书或者ssl有什么问题,会被直接标记为不安全。在中文字面上,不安全在中文字面上反而比不被信任更让中国人不安。

这里面基于数字证书的加工,主要是将拿到手的第三方信任办法的数字证书与信任的根证书之间的中间证书与我们拿到手的数字证书做合并。

为什么会有中间证书?这是因为证书信任机制,是我们信任第三方根CA,相应其办法的证书,和使用其证书签名的下级证书,都是被信任的。因此,一般第三方CA不直接发证书,而是下级CA办法,这样,看上去就是我们到手的证书是由子级CA办法的,并且是由其证书签名的,而子级CA的证书是由根CA颁发的,由根CA的证书签名。这样子级CA的证书就被叫做中间证书。在一般的证书查看工具中,都能看到一整个证书链(当前证书->中间证书->根证书)。

为什么要将中间证书合并?前面提到,证书信任的不是证书本身,信任的是一条证书链,或者说链上的所有证书都被信任。但是现在一些浏览器不会自动的获取中间证书,也就是没有办法信任整条证书链,反而是一些ie浏览器对此支持的很好。这种情况下,为避免因此导致的不安全提示,所以,我们一般都获取中间证书再与手中的证书合并。

怎么做证书合并?首先要确保手中的证书是PEM格式的,因为PEM格式证书是Base64编码的,也就是说所有字节都是文本编辑器打开时可读的。PEM格式的证书是以—–BEGIN CERTIFICATE—–开头,并以—–END CERTIFICATE—–结尾的,中间内容为Base64编码的证书内容。而中间证书有两种方式获取,一种是直接从办法机构下载,下载的时候注意要下载PEM格式的。我们打开中间证书,可以看到也是以—–BEGIN CERTIFICATE—–开头的,并以—–END CERTIFICATE—–结束的。我们只需要将中间证书的全部内容复制,并粘贴在到手证书的新一行内,并保存就完成了证书合并。

另外一种获取中间证书的方式,就是在windows中打开证书,查看证书链,然后直接将证书链的中间证书保存。中间证书可能不只一个,所以有几个中间证书,就需要合并几个中间证书。保存的证书需要检查格式,如果不是PEM格式的话,就需要转换格式为PEM。

4.服务器使用数字证书的后期设置

服务器上使用数字证书,也会被浏览器标记为不安全,这是因为服务器可能使用了被浏览器认为不安全握手协议或者加密算法。比如SSL3安全漏洞、Diffie-Hellman安全漏洞、RC4安全漏洞。IIS上可以使用注册表,将这些不安全的因素关闭掉。但是可能造成一些兼容性问题,比如XP上的IE6最高只支持SSL3,不支持新的TLS1,这样关闭了SSL3和SSL2之后,IE6就没办法连接了。

如果不考虑这些问题,可以直接使用下面链接提供的pwoershell脚本来开启所有安全设置。https://www.hass.de/content/setup-your-iis-ssl-perfect-forward-secrecy-and-tls-12

或者自己手动来做,可以参考前面连接,或者微软KBhttps://support.microsoft.com/zh-cn/help/2868725/microsoft-security-advisory-update-for-disabling-rc4

5.检验服务器安全

使用网站https://www.ssllabs.com/ssltest/ 来检验服务器安全

分类: 未分类 标签:

使用MySQL for Visual Studio创建EF模型的注意事项

2017年7月14日 没有评论

1 安装的MySQL for Visual Studio之前需要先安装MySQL的Connector/NET

2 Connector/NET和MySQL for Visual Studio建议都安装release的版本。

3 在项目中创建MySQL的EF模型前,项目里面需要先用Nuget安装MySQL.Data.Entity,同样建议安装release版本。

4 更新EnityFramework到最新的版本。

因为:

  • 如果没有按照1、2和3的顺序来做的话,会出现创建连接的时候没有mysql的驱动。
  • 不都是用同意的release版本的话,可能在创建完成数据连接以后,选择表之前,窗口闪退。闪退的情况在Visual Studio 2015和2017中都会发生。互联网上还有2013同类问题的报告。
  • EntityFramework不升级到最新版的话,会有提示问题你是否生产EF5的实体模型……

使用多处理器编译AUR

2017年5月10日 1 条评论

archlinux用aur编译的时候,根据top看,多处理器没有用起来,于是研究了一下,发现可以修改/etc/makepkg.conf来修改make的环境变量,启用多处理。具体如下:

去掉MAKEFLAGS前面的注释,并根据处理器数量修改-j后面数据,双核为-j2,四核为-j4

MAKEFLAGS="-j2"

这个提升还是比较明显的。

分类: Linux 标签:

解决在使用AUR编译pgadmin4的安装包的时候遇到找不到公钥的问题

2017年5月2日 没有评论

提示RSA的ID为某个值的公钥找不到。这个时候,需要用pgp命令下载公钥。

命令为pgp –recv-keys 公钥

参考链接:

http://www.cnblogs.com/daemon369/p/3204020.html

http://www.2cto.com/kf/201703/607171.html

分类: 未分类 标签:

今天闲的蛋疼给树莓派上nginx的默认页做压力测试

2017年2月11日 没有评论

树莓派2安装最新的ArchLinuxARM,然后安装标准的nginx。压力源使用VS2015中测试项目的WebLoadTest。

第一次没调nginx的工作进程数,第二次调成4个工作进程,于是…….真相如下:

7413978647@chatroom_1486811612135_38

7413978647@chatroom_1486811913517_83

最惨的是我自己的pc跑满了 0C915302

7413978647@chatroom_1486811501740_85

分类: Linux, Web 标签: ,

ArchLinux自2017年3月开始ISO不在支持i686

2017年2月11日 没有评论

1月份刚收了一个带有Raid卡和热插拔笼子的HP瘦客户机,上周刚给他装上2块500G的2.5寸硬盘,做好raid装好Arch,就看到了这个消息。

看到这个消息有点不舒服,不是因为这机器装的Arch一年后就没有更新了,而是突然回首发现已经玩了20年的Linux了。

不说这个了,给大家看看这个奇怪的瘦客户机。原机是HP的T5740,但是加厚扩展了4盘位的盘仓和Raid卡。卡是Sil 3114有点鸡肋,但是能扩充4盘位。机器内部还有一个8G SATA口的SSD。处理器是N280,单处理器,32位,好处就是省电低热。这机器主板不支持加载3114上的硬盘,所以/boot和grub都在这个8G的SSD上面。

638597461837233419

分类: Linux 标签: