分类 linux 下的文章

服务器资源

数量:3
CPU:2
内存:4

具体信息如下表:
| 系统类型 | IP地址 | 节点角色 | CPU | Memory | Hostname |
| :------: | :--------: | :-------: | :-----: | :---------: | :-----: |
| centos-7.5 | 192.168.31.92 | master | 2h | 4G | node-1 |
| centos-7.5 | 192.168.31.93 | master | 2h | 4G | node-2 |
| centos-7.5 | 192.168.31.94 | worker | 2h | 4G | node-3 |

- 阅读剩余部分 -

系统:Ubuntu 20.04.4 LTS

软件:dnsmasq

安装dnsmasq

apt install dnsmasq -y

操作dnsmasq的常用命令


service dnsmasq status # 查看状态
service dnsmasq stop # 停止
service dnsmasq restart # 重启
service dnsmasq start # 启动

关闭systemd-resolve

因为systemd-resolve服务会占用53端口,如果我们的DNS服务要绑定到0.0.0.0上,就会有冲突。

systemctl stop systemd-resolved # 关闭systemd-resolve

systemctl disable systemd-resolved  # 也可以用mask完全屏蔽

修改配置

安装好dnsmasq之后,默认的配置在/etc/dnsmasq.conf

创建一个目录,用来放自定义的dnsmasq配置文件

mkdir /data/dnsmasq

创建上级DNS配置文件

touch /data/dnsmasq/resolv.conf

内容如下

nameserver 119.29.29.29
nameserver 114.114.114.114
nameserver 8.8.8.8

创建dnsmasq.d目录,用来存放自定义的配置

mkdir /data/dnsmasq/dnsmasq.d

创建自定义hosts文件

touch /data/dnsmasq/dnsmasq.hosts

之后修改配置文件

# 端口,默认53
port=53


# 上级DNS配置
resolv-file=/data/dnsmasq/resolv.conf

# 开启严格顺序,这样查询上级DNS会从上到下依次查询
strict-order

# 修改监听配置,0.0.0.0允许任何IP访问
listen-address=0.0.0.0

# 自定义host
addn-hosts=/data/dnsmasq/dnsmasq.hosts

# 指向自定义配置目录
conf-dir=/data/dnsmasq/dnsmasq.d,*.conf

创建解析

解析说明:

# SRV 记录
#srv-host=<_service>.<_prot>.[<domain>],[<target>[,<port>[,<priority>[,<weight>]]]]
# A, AAAA 和 PTR 记录 
#host-record=<name>[,<name>....],[<IPv4-address>],[<IPv6-address>][,<TTL>]
# TXT 记录
#txt-record=<name>[[,<text>],<text>]
# PTR 记录 
#ptr-record=<name>[,<target>]
#naptr-record=<name>,<order>,<preference>,<flags>,<service>,<regexp>[,<replacement>]
# CNAME 别名记录
#cname=<cname>,<target>[,<TTL>]

比如说我现在需要把test.ibfpig.com通过A记录解析到本地的127.0.0.1

创建一个conf文件,比如ibfpig_com.conf

内容如下:

host-record=test.ibfpig.com,127.0.0.1

比如说我现在需要把*.ibfpig.top这样的泛域名解析到192.168.1.1

就可以追加内容如下:


address=/.ibfpig.top/192.168.1.1


修改配置文件后需要重启服务

Elasticsearch从6.8开始,就已经允许免费用户使用X-Pack的安全功能,如此,裸奔的ES就有基础的安全认证了

我们基于docker-compose来搭建该环境

先找个目录来存放docker-compose.yaml以及es的数据和日志等文件

我这里存放在~/DockerFile/es

创建docker-compose文件以及数据文件

mkdir work # 数据和日志都会放这里
mkdir work/data # 存放数据
mkdir work/logs # 存放日志
touch work/elasticsearch.yml # es相关配置
touch work/kibana.yml  # kibana相关配置

- 阅读剩余部分 -

今天在deepin的系统里使用docker login的时候,提示了如下错误

Error saving credentials: error storing credentials - err: exit status 1, out: `Cannot autolaunch D-Bus without X11 $DISPLAY`

遇事不解先Google

找到了前人的解决办法,原文在这

sudo apt install gnupg2 pass # 安装gnupg2 pass
gpg2 --full-generate-key # 生成证书

一路确认就可以了,是在我自己的虚拟机上用,所以没有设置任何的密码,过期时间也设置的是0

gpg2 -k
pass init "whatever key id you have" # 前一步trustdb.gpg的路径

之后再执行docker login就没有任何问题了

出现这个问题的原因:

原文有这样提到:

再往下看 Issue,感谢 chriswue 给出的详细回答,他提到这是在 Ubuntu (Mint 同样是基于 Ubuntu 的发行版)下使用 docker 特有的 bug ,而修复办法不需要特意去卸载 docker-compose ,只要 “pass” 掉验证步骤。

连接ssh时,需要10~20s以上,难以忍受,在网上找了一圈,基本上都是说修改sshd以下三个配置

GSSAPIAuthentication no
UsePAM no
UseDNS no

三个参数挨个尝试了下,发现影响最大的是UsePAM

大概了解了下这三个参数,都是安全相关的

  • GSSAPIAuthentication是

  • UseDNS主要是是反向查客户端的主机名

  • UsePAM是Unix的PAM登陆机制,基于用户名和 ip 地址段的登陆认证和限制

由于GSSAPIAuthenticationUseDNS两个影响不大,

隐藏着两项我并未关闭,

大概了解了一下,PAM登录机制,在我的服务器中并未有必要需求,

并且我另外设置了PermitEmptyPasswords,PasswordAuthentication,在安全性上对UsePAM依赖不高

所以我这里直接关闭了,具体业务还是要具体看

参考文档

ubuntu ssh登入速度太慢的解决办法

配置 sshd 使用 pam 认证小结