第N次重装系统之Ubtntu

前言

又一次换了服务器,由于centOS已经完成了自己的生命周期,接下来我会转去使用Ubtntu系统。

当然,大部分docker命令是不会收到影响的,但是一部分安装过程可能就要重新学习了。

其实这个系统也有自己的老牌包管理器apt,所以跟使用yum其实是很相似的。

本文是参考着本系列前文内容所作,如有不解请翻看前文。

这一次的服务器我是选择了Ubuntu 18.04。

君匡魔改

Root密码

修改root密码的命令。

sudo passwd root

新建用户

新建一个用户,用户名以keen为例,之后将他添加到sudo用户组中。

: 新增用户
adduser keen

: 获取sudo的权限
sudo adduser keen sudo

之后可以将这个用户添加到其他的用户组中,然后这个用户就能够拥有其他的权限了。

SSH链接

通过阿里云的远程连接更改root账号的密码。

用命令复制密钥实现免密码登入。

ssh-copy-id -i ~/.ssh/ali_rsa.pub root@104.168.172.40

修改配置文件以防端口爆破。

: 修改/etc/ssh/sshd_config

vim /etc/ssh/sshd_config

防火墙UFW

系统默认安装了ufw防火墙,只是需要简单地配置和使用就可以了。当然,如果你觉得裸奔无妨完全可以跳过这一段。

查看防火墙的状态

sudo ufw status
  • inactive:表示防火墙存在,但是没有开启
  • active:表示防火墙存在,并且显示允许的端口号。

开启防火墙

: 开启防火墙
sudo ufw enable 

会出现一个提示,说这个命令可能会中断现有的ssh连接,问是否继续操作。

大家都知道SSH要想正常使用,一般是默认22端口号的。下文引用自CSDN的文章。

这里分为两种情况,如果开启防火墙时在防火墙之中检测到22端口已添加为防火墙的开放端口,那么输入y继续操作以后,当前Xshell会自动断开连接;相反,如果开启防火墙时在防火墙之中没有检测到22端口,那么输入y继续操作以后22端口将会不再支持其他连接,只支持当前已有的这个连接,保持当前连接的原因是可以通过该连接开放22端口。

这里之前没有设置过,直接输入y继续执行————————————————版权声明:本文为CSDN博主「Aaron_Run」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:blog.csdn.net/qq_36938617/article/details/95234909

管理端口

不论是开放还是个关闭,修改之后,都需要重启防火墙才能生效。

: 开放22端口
sudo ufw allow 22

: 关闭21端口
sudo ufw delete allow 21

: 重启ufw防火墙
sudo ufw reload

重启之后,再查看防火墙的状态。

常用端口

  • 80端口:正常访问http服务
  • 22端口:SSH的默认访问端口,为了安全建议改成其他端口
  • 443端口:正常访问HTTPS服务
  • 137端口和138端口:允许传入UDP连接
  • 139端口和445端口:允许传入TCP连接

安装软件

安装Docker

确保系统的内核版本高于3.10,并且之前没有安装过docker或者已经完全卸载之后,再进行安装。

建议使用管理员账号来操作。在安装过过程中会用到几个工具,为了防止安装过程中出现工具缺失导致失败,所以要提前安装。

: 登入管理员账号
su root

: 安装工具
apt update
apt-get install -y ca-certificates curl apt-transport-https software-properties-common gpg-agent

使用到的工具有以下几点。

  • curl:为无用户交互下传输数据

  • ca-certificates:证书的维护

  • apt-transport-https:允许系统通过 HTTPS 协议安全访问存储库

  • software-properties-common:管理发行版和独立软件供应商的软件源。

过程中可能会出现一个提示框,直接选yes就可以了,最后会输出完成的提示。

接着安装证书,并写入软件源信息。

: 安装证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

: 写入软件源信息
add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" 

最后就可以直接安装。

: 安装社区版的命令行,服务器及容器运行时环境
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io

启动并加入开机启动。

#启动
systemctl start docker

#开机自启
sudo systemctl enable docker

使用语句查看已经自启的服务,如果列表中存在即为设置成功!

systemctl list-unit-files | grep enable

配置docker就不再赘述,前文已经有了。

安装Nginx

如果直接安装的话,那么他是只有1.14.0的版本可以选择。然而如果我们添加新的源,就可以发现安装其他较新版本了。

: 安装证书
curl -fsSL http://nginx.org/keys/nginx_signing.key | sudo apt-key add -

写入软件源信息有两个办法,一个是直接用命令行;另一个是手动修改文件。

: 写入软件源信息
add-apt-repository "deb  http://nginx.org/packages/mainline/ubuntu/ $(lsb_release -cs) nginx" 

# 修改文件
# vim /etc/apt/sources.list
# 文件末尾添加以下两行并保存
# deb http://nginx.org/packages/mainline/ubuntu/ bionic nginx
# deb-src http://nginx.org/packages/mainline/ubuntu/ bionic nginx

之后就能用apt show nginx查看到可支持的新版本了。

最后就可以直接安装。

sudo apt update
sudo apt install -y nginx

启动并加入开机启动。

#启动
systemctl start nginx

#开机自启
sudo systemctl enable nginx

翻山之旅

解决Temporary failure in name resolution DNS解析问题

在远程服务器没有办法访问网站,在ping阿里云的镜像网站时返回Temporary failure in name resolution,解决方法是编辑 /etc/systemd/resolved.conf 这个文件,新增一条内容。

DNS=8.8.8.8

reboot命令重启机器,

解决failed to start agent '/usr/bin/gpg-agent'

原因可能是缺少 gpg-agent 包。

apt install gpg-agent

感谢

感谢现在的好奇,为了能成为更好的自己。

  1. Ubuntu安装docker详细教程
  2. Ubuntu系统中防火墙的使用和开放端口

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容