运维成长路线#

运维成长路线#

Jobs倾情奉献

1、服务器系统#

提纲

Linux:Unix系统上面做的封包,红帽系统是基于Linux基础上的,主要是加了一些UI的修改,有庞大的社区生态、
CentOS:用版本7,一般不使用版本8。原因:版本8变化大、不稳定、收费,基于JDK11,如果代码是使用低版本JDK就要面临修改代码、
ubuntu:什么版本都可以,区别不大、

UNIX:一般不使用这个系统。某些航空系统 和 Mac系统基于这个系统开发。这个系统适用于单片机,没有定义网络协议等基础架构,开放性很高

单片机 = single-chip microcomputer = 单晶片 = 单片微型计算机 = 微控制器单元 = microcontroller unit

单片机的基本构成、工作原理

快懂百科/单片机

1、是把中央处理器、存储器、定时/计数器、各种输入/输出接口等都集成在一块集成电路芯片上的微型计算机;
2、与应用在个人电脑中的通用型微处理器相比:
		2.1、它更强调自供应(不用外接硬件)和节约成本,整合程度更高;
		2.2、但因为规格已经包含,所能实现的功能也较专一;
		2.3、最大优点是体积小,可放在仪表内部;
		2.4、但存储量小,输入输出接口简单;
		2.5、随着发展,在很多应用场合被称为:范围更广的微控制器;
		2.6、微控制器是一种面向控制领域嵌入式应用的集成化计算机芯片,主要用于工业控制、数据处理、信号处理、智能仪器、通信产品及民用消费产品等自动控制产品与器件中;
3、单片机的软件开发:
		3.1、以往多使用汇编语言;
		3.2、如今越来越多的使用C语言;
		3.3、又或者使用 BASIC 语言等更适合初学者的语言,部分集成开发环境支持C++;
		3.4、单片机的软件测试需要使用单片机开发器或模拟器;
		3.5、2000年后已经有很多单片机自带了ISP(在线编程设计)或支持 IAP,彻底地改变了传统的开发模式。使得开发单片机系统时不会损坏芯片的引脚。
		加速了产品的上市并降低了研发成本,缩短了从设计、制造到现场调试的时间,简化了生产流程,大大提高了工作效率。
		3.6、软件开发环境:
				3.6.1、微芯公司的 MPLAB IDE 可用于该公司全系列微控制器的开发与除错;
				除支持该公司的 ASM组译器 C语言编译器外,也支援许多第三方的编译器;
				3.6.2、ARM公司的 μVision 整合开发环境(原为 Keil 公司产品,2005年该公司已由 ARM 购并);
				包含组译器与 C编译器,可用于51单片机及ARM开发;
				3.6.3、ARM公司的 Mbed,可以使用线上IDE来开发;
				3.6.4、Proteus 软件是初学者入门的首选软件,它是 Labcenter Electronics 公司的一款商业版电路设计与仿真软件;
				内包括ISIS、ARES等软件模块;
				3.6.4.1、ARES 模块主要用来完成PCB的设计;
				3.6.4.2、ISIS 模块用来完成电路原理图的布图与仿真;
				Proteus的软件仿真基于VSM技术,它与其他软件最大的不同也是最大的优势就在于能仿真大量的单片机芯片,比如MCS-51系列、PIC系列等等,甚至ARM处理器,以及单片机外围电路,比如键盘、LED、LCD等等。该软件还附带了一些案例和丰富的帮助文件。
4、单片机的硬件开发:
		开发板可以进一步简化程序的开发和烧制过程。
		4.1、开发板可能包含实际芯片或是仿真器;
		4.2、通过配套的下载线连接电脑与开发板,在电脑上编写程序下载到开发板;
		4.3、批量生产会用到编程器;

资料来源

类UNIX操作系统家族发展时间线图谱(1969-2020)

知乎/一图看懂UNIX、BSD、MINIX&GNU/LINUX 的爱恨情仇

维基百科/GNU

UNIX 官网

维基百科/UNIX

Linux 官网

维基百科/Linux

w3cschool/Linux教程

runoob/Linux教程

维基百科/MacOS

Ubuntu 官网

维基百科/Ubuntu

Debian 官网

维基百科/Debian

CentOS 官网

维基百科/CentOS

1.1、UNIX#

UNIX = UNiplexed Information and Computing Service,UnICS = 非复用信息和计算机服务

X 则表明其对 Unix API 的传承

1.1.1、简介#

1、最早由 肯·汤普逊、丹尼斯·里奇 和 道格拉斯·麦克罗伊 于1969年,在美国 AT&T 公司的"贝尔实验室"开发的 AT&T Unix;
		1.1、Unix 的前身为1964年开始的 Multics
		1.2、低成本授权的使用,在母本基础上孕育了许多"变种"。最著名的"变种"之一即:伯克利套件(BSD);
		1.3、BSD 在 Unix 的历史发展中具有相当大的影响力,被很多商业厂家采用,成为很多商用 Unix 的基础;
		1.4、为避免版权问题,将来自于 AT&T 的代码完全删除,于是诞生了4.4 BSD Lite版(所有自由版本的基础);
		1.5、1994年,受到GNU工程的鼓舞,BSD走上了复兴的道路。
				1.5.1、BSD 的开发也走向了几个不同的方向,并最终导致了 FreeBSD、NetBSD、OpenBSD、DragonFlyBSD 等基于 BSD 的操作系统的出现;
2、一种多用户、多进程、多任务的计算机操作系统;
3、支持多种处理器架构,属于"分时操作系统";
4、代码实现:由PDP-7汇编语言逐步过渡到C语言
		4.1、第一版 UNIX 是用PDP-7汇编语言编写的,一些应用是由叫做B语言的解释型语言和汇编语言混合编写的;
		4.2、因为PDP-7的性能不佳,肯·汤普逊与丹尼斯·里奇决定把第一版UNIX移植到PDP-11/20的机器上,开发第二版UNIX;
				4.2.1、在性能提升后,真正可以提供多人同时使用。布莱恩·柯林汉 提议将它的名称改为UNIX;
		4.3、在进行系统编程时不够强大,所以汤普逊和里奇对其进行了改造,并于1971年共同发明了C语言;
		4.4、1973年汤普逊和里奇用C语言重写了 UNIX,形成第三版 UNIX;
		所以汤普逊和里奇此举是极具大胆创新和革命意义的。用C语言编写的 UNIX 代码简洁紧凑、易移植、易读、易修改,为此后 UNIX 的发展奠定了坚实基础。
5、广泛的应用:
		5.1、UNIX 因为其安全可靠,高效强大的特点在服务器领域得到了广泛的应用;
		5.2、直到 GNU/Linux 流行开始前,UNIX 也是科学计算、大型机、超级计算机等所用操作系统的主流;
		5.3、现在其仍然被应用于一些对稳定性要求极高的数据中心之上;
6、设计哲学:
    UNIX 的部分设计原则:
		6.1、简洁至上 = KISS原则 =  Keep It Simple, Stupid = 是一种归纳过的经验原则 = 在设计当中应当注重简约
    6.2、提供机制而非策略
		6.3、更糟就是更好:软件的品质(受欢迎的程度)并不随着功能的增加而提高,从实用性以及易用性来考虑,功能较少的软件反而更受到使用者和市场青睐;
7、后世鼻祖:是现在各种 UNIX-like 系统的起源,包括 Linux、MacOX、BSD,要么是从UNIX系统衍生而来,要么是模仿UNIX的系统;
8、值得注意的是,UNIX 现在并不是开源的(半开源或者闭源)

1.1.2、POSIX#

POSIX = Portable Operating System Interface = 可移植操作系统接口

1、一个执行标准:从1980年代开始,POSIX,一个开放的操作系统标准就在制定中,IEEE 制定的 POSIX标准(ISO/IEC 9945)现在是 UNIX 系统的基础部分;
2、是 IEEE 为要在各种 UNIX 操作系统上运行软件,而定义 API 的一系列互相关联的标准的总称;
3、Linux 基本上逐步实现了 POSIX 兼容,但并没有参加正式的 POSIX 认证。微软的 Windows NT 声称部分实现了POSIX标准;
4、当前的POSIX主要分为四个部分:Base Definitions、System Interfaces、Shell and Utilities、Rationale;

1.1.3、BSD#

*BSD = Berkeley Software Distribution = 伯克利软件包 = **伯克利 Unix *或 Berkeley Unix

1、是一个派生自 UNIX(类UNIX)的操作系统,可应用于多种硬件构架;
2、1970年代由伯克利加州大学的学生比尔·乔伊开创;
3、也被用来代表其派生出的各种包;
4、BSD许可证非常地宽松,因此 BSD 常被当作工作站级别的 UNIX 系统;
5、BSD 的早期版本被用作组建 Sun 公司的 SunOS,造就了 UNIX 工作站的第一波热潮;
6、跟 AT&T Unix 一样,BSD 也采用单内核,这意味着内核中的设备驱动,在核心态下运行,从而作为操作系统的核心部分;
7、由于 BSD 设计出众,代码编写清晰,包括它的文档(特别是参考文档,常被称为"man pages"),使得这样的系统,几乎成为程序员眼中的乐土;
8、时至今日,BSD 仍在学术机构,乃至许多商业或自由产品的高科技实验中,继续被用作试验平台,甚至在嵌入式设备中,其使用也在增长;
9、兼容性:
		9.1、通过一个二进制兼容层(compatibility layer),在 BSD 操作系统上,可以运行相同构架下其他操作系统上的原程序;
		9.2、效率高于模拟器,针对 Linux 的应用程序,也可以在 BSD 上全速运行;
		9.3、BSD 不仅适合作为服务器,也可作为工作站来使用;
		9.4、当前的 BSD操作系统变种支持各种通用标准,包括 IEEE、ANSI、ISO、POSIX,同时保持传统 BSD 的良好风范;

1.1.4、类UNIX系统家族#

Unix_history-simple

类UNIX操作系统家族发展时间线图谱(1969-2020)

1.2、Linux#

1、1990年,Linus Torvalds 决定编写一个自己的 Minix 内核,初名为 Linus' Minix,意为 Linus 的 Minix 内核,后来改名为 Linux;
		1.1、此内核于1991年正式发布,并逐渐引起人们的注意;
		1.2、当时GNU操作系统仍未完成。GNU系统软件集与Linux内核结合后,GNU软件构成了这个POSIX兼容操作系统GNU/Linux的基础;
		1.3、今天GNU/Linux已经成为发展最为活跃的自由/开放源码的类Unix操作系统;

1.3、MacOS#

Apple 苹果公司推出的使用图形用户界面的操作系统,为麦金塔(Macintosh,简称 Mac)系列电脑的主操作系统;

1、版本命名:
		1.1、以前版本的 macOS 以大型猫科动物命名;
		1.2、2011年及之前称 MacOS X;
		1.3、2012年~2015年称 OS X;
		1.4、2016年6月,苹果公司宣布 OS X 更名为 macOS
2、Mac OS X ≠  Mac OS,彻底分离;
		2.1、它的底层代码与先前版本完全不同。
		2.2、这个新的核心名为 Darwin。是一套开放源码、符合 POSIX 标准的操作系统,伴随着标准的 Unix 命令行与其强大的应用工具。
3、macOS 包含两个主要的部分:
		macOS = (Mach 内核 + UNIX 的 BSD 实现) => NeXTSTEP + Aqua(UI)
		3.1、名为 Darwin 的核心,以 BSD 源代码和 Mach 微内核为基础,由苹果公司和独立开发者社群合作开发;
		3.2、及一个由苹果公司开发,名为 Aqua 的专有图形用户UI界面;

1.4、Ubuntu(乌班图)#

名称来自非洲南部祖鲁语或科萨语的"Ubuntu"一词(译为乌班图),意思是"人性"、““我的存在是因为大家的存在”"。是非洲传统的一种价值观。

1、基于 Debian,以桌面应用为主的 Linux 发行版;
2、目前最多用户的 Linux 版本;
3、由英国肯诺有限公司发布,并提供商业支持;
4、编程语言:	C++、C语言、Unix shell、Python;
5、正式版本:
		5.1、桌面版;
		5.2、服务器版;
		5.3、用于物联网设备和机器人的 Core 版;

1.5、Debian#

1、Debian是完全由自由软件组成的类 UNIX 操作系统;
2、其包含的多数软件使用GNU通用公共许可协议授权;
3、并由Debian计划的参与者组成团队对其进行打包、开发与维护;
4、是Linux发行版之一;
5、Debian主要分三个版本:稳定版本(stable)、测试版本(testing)、不稳定版本(unstable);
6、Debian sid = Debian unstable,即不稳定版本。凡是 Debian 要收录的软件都必须首先放在这个版本里面进行测试,等到足够稳定以后会放到 testing 版本里面;
7、Debian 以稳定性闻名,所以很多服务器都使用 Debian 作为其操作系统;

1.6、CentOS#

CentOS = Community Enterprise Operating System = Linux发行版之一

1、来自于Red Hat Enterprise Linux(RHEL)依照开放源代码规定发布的源代码所编译而成;
2、由于出自同样的源代码,因此有些要求高度稳定性的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux 使用;
3、两者的不同,在于CentOS并不包含封闭源代码软件;
4、CentOS采取从RHEL的源代码包来构建;
5、CentOS版本号有两个部分:一个主要版本和一个次要版本;
	5.1、主要版本 => RHEL的主要版本;
	5.2、次要版本 => 更新包
6、处理器架构版本:
		6.1、Intel x86及兼容架构(32位)(CentOS 7 的32位版本由AltArch SIG提供支持)
		6.2、Intel Itanium(64位)(新版本不再支持)
		6.3、x86-64 (AMD64和Intel 64,64位)
		6.4、PowerPC G3及G4(测试版)(新版本不再支持)
		6.5、IBM的eServer z系列及S/390大型主机(新版本不再支持)
		6.6、 龙芯(Loongson)采用的MIPS架构(32位、64位)[6] (非官方支持 )
		6.7、AArch64(ARM架构中的ARMv8或ARM64,64位)(由AltArch SIG提供支持)
		另外有限度的支持两款旧型处理器:
		6.8、Alpha
		6.9、SPARC(测试版)

1.7、查看 Linux 操作系统版本细节#

使用 lsb_release 命令

lsb_release -a

使用 cat 命令查看 /etc/os-release 文件

cat /etc/os-release

使用 cat 命令查看 /etc/issue 文件

cat /etc/issue

使用 uname 命令查看内核版本和架构信息

uname -a

2、包管理工具#

1、yum 是 Red Hat Linux 和 CentOS 操作系统中的包管理器,不支持在 MacOS 上安装。
2、MacOS 使用自己的包管理器 brew;
3、apt 是 Linux 下的一种包管理工具;

2.1、Debian 安装 yum#

Debian 系统是基于 dpkg 包管理系统的,而 yum 是基于 rpm 包管理系统的。 因此,在 Debian 系统中安装 yum 可能会遇到一些困难。 但是可以通过一些工具来使得 Debian 系统也能够使用 yum

下面列出一些可用的方法:

1、安装 alien 工具,将 rpm 包转换为 deb 包,然后通过 dpkg 安装:

sudo apt-get install alien
sudo alien -i package.rpm

2、安装 rpm 工具,然后使用 alien 将 rpm 包转换为 deb 包,然后通过 dpkg 安装:

sudo apt-get install rpm
sudo alien -i package.rpm

3、安装 yum-debian 插件,它可以模拟 yum 命令行,让 Debian 系统使用 yum(推荐使用)

因为它提供了最接近 yum 命令行的体验,并且不需要安装转换工具。

但是,需要注意的是,yum-debian 插件有一些限制,例如不能下载并安装 CentOS 的 rpm 包。

sudo apt-get install yum-debian

2.2、Ubuntu上通过apt-get安装yum#

由于Yum是Red Hat Linux的软件包管理器,因此它通常不会安装在Ubuntu上。
相反,Ubuntu通常使用APT(高级软件包工具)来管理软件包。

如果您仍想在Ubuntu上安装Yum,请按以下步骤操作:

1、在终端中使用管理员权限打开命令行窗口。

2、使用以下命令安装EPEL存储库:

sudo apt-get install epel-release

3、使用以下命令安装Yum:

sudo apt-get install yum

完成后,您可以在Ubuntu上使用Yum软件包管理器了。但是请注意,虽然Ubuntu中安装Yum是可能的,但并不推荐。此外,Ubuntu的APT软件包管理器比Yum更适合在Ubuntu上管理软件包。

3、服务器设置#

shell命令、
定时器contable怎么用、
设置服务器语言,时区,Linux网络防火墙设置、
Linux文档服务器ftp、
网络磁盘、
文件夹映射(内链接),也就是快捷方式、
Linux 文件同步工具——rsync

3.1、设置服务器的语言#

可以按照以下步骤设置Linux服务器的语言

1、打开终端,运行命令 locale -a 查看当前系统所支持的语言环境;
2、如果需要添加或修改语言环境,可以使用编辑器打开 /etc/locale.gen 文件;
3、在文件中找到需要启用的语言环境并去掉行首的注释符号。
		3.1、例如,如果需要启用中文环境,需要找到 zh_CN.UTF-8 UTF-8 这一行,并去掉前面的注释符号#;
4、保存文件后,在终端中执行 sudo locale-gen 命令,重新生成所需的语言环境;
5、最后,在系统环境变量中添加语言选项;
		5.1、可以编辑 /etc/environment 文件,在文件末尾添加 LANG=语言选项,例如:LANG=zh_CN.UTF-8。
6、重新启动或注销系统,使语言选项生效;

注意:以上步骤可能因不同的 Linux 发行版而略有不同。在执行步骤前最好先备份相关配置文件。

可以按照以下步骤设置MacOS服务器的语言

1、打开 "系统偏好设置";
2、点击 "语言与地区";
3、点击 "+" 号添加所需语言;
4、将所需语言移动到首要地位;
5、关闭 "语言与地区" 窗口;

请注意,更改语言设置可能需要重新启动应用程序或系统。

可以按照以下步骤设置Debian服务器的语言

1、打开终端并以root用户身份登录;
2、输入以下命令以打开locale配置文件:
   nano /etc/default/locale
3、确认文件内容如下:
   LANG=en_US.UTF-8
   LANGUAGE=en_US.UTF-8
   LC_ALL=en_US.UTF-8
   上述配置文件中的"en_US.UTF-8"是一种语言设置,可以根据需要进行更改。例如,更改为"zh_CN.UTF-8"可以设置为中文;
4、使用Ctrl + X键保存并关闭文件;
5、输入以下命令以重新加载环境变量:
   source /etc/default/locale
6、重启服务器,以确保语言设置成功:
   sudo reboot

可以按照以下步骤设置Ubuntu服务器的语言

注意:以下操作需要在root权限下进行

1、运行命令 sudo locale-gen zh_CN.UTF-8,安装中文语言包;
2、编辑 /etc/default/locale 文件,添加以下内容:
	LANG="zh_CN.UTF-8"
	LANGUAGE="zh_CN:zh:en_US:en" 
	LC_ALL="zh_CN.UTF-8"
3、运行命令`sudo dpkg-reconfigure locales`,选择相应的语言环境;
4、重启服务器,使设置生效

可以按照以下步骤设置CentOS服务器的语言

1、进入系统后,使用以下命令查看当前支持的语言列表。
localectl list-locales
2、选择需要使用的语言,使用以下命令进行修改。
localectl set-locale LANG=<language_code>
例如,如果要将系统语言设置成中文,可以使用以下命令:
localectl set-locale LANG=zh_CN.utf8
3、然后,重启系统使其生效。
reboot
注意:如果系统没有安装所需语言的支持包,需要先安装对应的语言包。
可以使用以下命令安装中文语言包:
yum install kde-l10n-Chinese

3.2、设置服务器的时区#

要设置Linux服务器的时区,请按以下步骤操作:

1、查看当前时区:通过命令tzselect或者date命令,可以查询当前Linux服务器的时区,例如:
    $ tzselect
    Please select a continent or ocean.
    ...
    $ date
    Tue Jan  5 17:06:23 UTC 2021
2、确定要设置的目标时区:根据需要,确认要设置的目标时区,并记录其时区标识符。例如,“Asia/Shanghai”。
3、设置时区:在 Linux 服务器上,可以通过以下其中一种方式设置时区:
- 使用命令“timedatectl”设置时区,例如:
    $ sudo timedatectl set-timezone Asia/Shanghai
- 通过创建或修改/etc/timezone文件来设置时区,例如:
    $ sudo echo "Asia/Shanghai" > /etc/timezone
    $ sudo dpkg-reconfigure -f noninteractive tzdata
4、验证时区设置:使用date命令验证设置后的时区是否正确,例如:
    $ date
    Tue Jan  5 17:06:23 CST 2021
    其中CST表示China Standard Time即中国标准时间,验证时区设置的方式和显示格式可能因Linux系统版本不同而有所不同。
    
一旦时区设置完成,Linux 服务器的各项服务和应用程序的时间戳都应该根据设定的时区进行更新,以实现正确的时间戳格式。

要设置MacOS服务器的时区,请按照以下步骤操作:

1、点击菜单栏上的苹果图标,并选择"系统偏好设置";
2、在“系统偏好设置"窗口中选择"日期和时间";
3、在“日期和时间”窗口中,点击"时区"标签;
4、选择您所在的时区。如果您的时区不在列表中,请选择"其他"并手动选择您的时区;
5、关闭"日期和时间"窗口;

此时,您的MacOS服务器的时区已经设置完成了。
请注意,在网站或应用程序中,时间通常是以UTC时间存储的,因此您需要分别在服务器和应用程序中进行设置。

要设置Ubuntu服务器的时区,请按照以下步骤操作:

1、打开终端并登录到 Ubuntu 服务器。
2、检查当前时区设置:
	$ timedatectl
如果输出显示的时区不是你所需要的时区,继续下一步。
3、使用以下命令更改时区设置,将 "Asia/Shanghai" 替换为所需的时区:
	$ sudo timedatectl set-timezone Asia/Shanghai
4、再次执行第二步命令以验证时区设置是否已更改。

完成以上步骤后,Ubuntu 服务器的时区应该已经修改成功。

注意:如果需要手动更改时钟时间,那么需要额外的步骤才能完成。可以参考下面的说明。

1、检查当前的时间设置:
	$ date
2、如果需要手动设置时间,运行以下命令,并将 "YYYY-MM-DD HH:MM:SS" 替换为所需的时间:
	$ sudo date -s "YYYY-MM-DD HH:MM:SS"
3、重新检查时间设置:
	$ date

要设置CentOS服务器的时区,请按照以下步骤操作:

1、首先,打开终端,切换到root用户。
2、输入以下命令安装tzdata包:
   yum install tzdata
3、输入以下命令查看当前时区:
   timedatectl
4、输入以下命令列出可用时区:
   timedatectl list-timezones
5、使用以下命令设置时区,将 Asia/Shanghai 替换为你需要设置的时区:
   timedatectl set-timezone Asia/Shanghai
6、再次执行`timedatectl`命令,检查设置是否生效;
   timedatectl
   
   如果输出示例中的 Local time 字段显示正确的时间和日期,则说明时区设置成功。

要设置Debian服务器的时区,请按照以下步骤操作:

1、通过ssh连接到Debian服务器,并以root用户身份登录;
2、运行命令:dpkg-reconfigure tzdata;
3、系统会提示你选择一个时区,选择适合你所在的时区;
4、系统会自动设置时区,并将时钟调整为正确的时间;
5、如果你需要重新选择时区,重复上述步骤即可;

注意:在设置完成时区后,你需要重新启动系统才能使设置生效。 

4、域名类#

买域名+域名解析、
CDN配置、
申请https证书(用脚本申请 + 用宝塔x-UI面板申请)
nginx证书配置,80端口443端口跳转

4.1、脚本申请Https证书#

4.1.1、在MacOS平台上生成Https证书#

MacOS 上,最常用的 HTTPS 证书管理工具是 OpenSSL

在终端窗口中,输入以下命令生成自签名证书:

openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365

该命令将使用新 RSA 密钥生成一个自签名证书,该证书有效期为 365 天。

证书和密钥将分别保存在名为 key.pem 和 cert.pem 的文件中。

将被提示输入证书信息。

必须至少指定一些基本信息。例如证书姓名和电子邮件地址。

在终端中,输入以下命令以生成证书存储文件:

sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain cert.pem

将被要求输入管理员密码以完成此操作。

该命令将信任此自签名证书并将其添加到系统证书存储中。

现在,可以将此证书用于您的 HTTPS 服务器或任何其他需要加密通信的应用程序。

4.1.2、在Linux平台上生成Https证书#

4.1.2.1、安装Certbot工具#

Certbot可以自动化地安装SSL/TLS证书。可以在Certbot网站上找到各种发行版的安装指南。

例如,在Ubuntu上,您可以使用以下命令安装Certbot

sudo apt-get update
sudo apt-get install certbot
4.1.2.2、运行以下Certbot命令#

yourdomain.com 替换为要使用证书的域名。

此命令将启动 Certbot 并为指定的域名申请证书。

sudo certbot certonly --standalone -d yourdomain.com
4.1.2.3、配置 Web 服务器#

接下来,需要在Web服务器上配置证书。

假设使用的是Apache Web服务器,则需要将以下内容添加到 virtualhost 文件:

需要将 yourdomain.com 替换为您要使用证书的域名

SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/yourdomain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/yourdomain.com/privkey.pem
4.1.2.4、重启 Web 服务器🍺🧨#

在配置文件更改后,需要重启Web服务器以使更改生效。

Apache服务器上,可以使用以下命令重启:

sudo systemctl restart apache2

4.2、NGINX#

要配置 NGINX,请按照以下步骤操作:

4.2.1、安装NGINX#

在 Debian/Ubuntu 系统上安装 Nginx:

sudo apt-get update
sudo apt-get install nginx

在 CentOS/RHEL 系统上安装 Nginx:

sudo yum update
sudo yum install nginx

4.2.2、配置 Nginx#

Nginx的配置文件位于 /etc/nginx/nginx.conf

4.2.2.1、首先备份原始配置文件#
sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.original
4.2.2.2、编辑配置文件#

以下是一个 Nginx 的示例配置文件

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log warn;
pid /run/nginx.pid;
events {
    worker_connections 1024;
}
http {
  include /etc/nginx/mime.types;
  default_type application/octet-stream;
  log_format   main '$remote_addr - $remote_user [$time_local]  '
                     '"$request" $status $bytes_sent  '
                     '"$http_referer" "$http_user_agent" '
                     '"$gzip_ratio"';
  sendfile on;
  access_log /var/log/nginx/access.log main;
  keepalive_timeout 65;
  include /etc/nginx/conf.d/*.conf;
}
4.2.2.3、测试 Nginx 配置#

当您更改Nginx的配置时,应始终进行测试以确保没有错误。可以使用以下命令检查语法:

sudo nginx -t

如果没有错误,应该看到以下输出:

如果有错误,则会显示错误信息

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
4.2.2.4、重新加载 Nginx#

在更改 Nginx 配置后,需要重新加载 Nginx。可以使用以下命令重新加载 Nginx:

sudo systemctl reload nginx

5、跳板机#

vps,vpn的服务、
跳板机的vpn的插件,很多有兼容性问题,找一个好的,拨号到服务器上
端口映射,买一台服务器,frp软件

6、Docker#

docker部署、
打镜像、
拉镜像、

7、Java支持#

java.jdk安装、
设置环境变量、
jar包和var包的部署、
会产生日志,怎么去拿、
elk日志图形展示、

8、数据库#

mysql主备、
mysql.blog同步、
redis设置账号密码,设置集群