文章目录
修订时间 | 修订内容 | 备注 |
---|---|---|
2022/01/28 | 完成基础 Linux 服务器环境配置 | public |
2022/01/29 | 新增 grep 指令相关 | feature |
这里选用的是长期的阿里云服务器、以及短期的腾讯云轻量服务器。有能力的可以考虑 同账户、同平台、同地域 下选购服务器。这样有利于后续 k8s 集群的搭建。
一、服务安全配置
个人经验来看,阿里云服务器被被攻击的频率远比腾讯云高的多,所以在选用阿里云作为长期个人开发环境的情况下,建议做好基础的安全配置。
1、修改 Linux SSH 默认端口配置
# 修改ssh默认端口配置 22 -> 22221
$ vim /etc/ssh/sshd_config
# 默认 22 可以用 sed 直接替换
$ sed -i 's/#Port 22/Port 22221/' /etc/ssh/sshd_config
# 立即生效
$ service sshd reload
# 禁止 root 通过SSH远程登录 (建议配置)
$ PermitRootLogin no
2、添加系统子用户以及分组
# 添加分组 admin admin 用户组拥有root权限
$ groupadd admin
# 添加用户 zhanghao
$ useradd -g admin fusheng
$ password fusheng
- ******** (常规输入密码二次确认)
# 切换用户
$ su - fusheng
相关指令
# 查看当前用户
$ whoami
# 查看系统用户分组信息
$ cat /etc/group
# 删除用户 -f 强制 (su 切换用户后会导致无法删除,退出重连)
$ userdel -r -f [username]
3、配置防火墙
个人开发前期建议关闭防火墙
# 查看防火墙状态
$ firewall-cmd --state
# 关闭
$ service firewalld stop
# 查看防火墙规则
$ firewall-cmd --list-all
# 查看防火墙状态 - 系统永久配置
$ systemctl status firewalld
# 永久关闭
$ systemctl disable firewalld
# 暂时停用
$ systemctl stop firewalld
相关指令
# 开启
$ service firewalld start
# 重启
$ service firewalld restart
4、云服务器安全组白名单配置
参考:云服务器服务商提供文档
二、基础开发工具
1、yum 软件包管理器
可选参数 | 作用 |
---|---|
-y | 自动应答 yes |
-q | 静默执行 |
-t | 忽略错误 |
# yum
# 资源更新
$ yum update
# 安装
$ yum -y install [name]
# 更新
$ yum update [name]
# 删除
$ yum remove [name]
2、wget 在线资源下载工具
# linux centos 系统安装 wget
$ yum install wget
# eg. 获取在线图片
$ wget https://code-galaxy.oss-cn-hangzhou.aliyuncs.com/fusheng.jpg
3、scp 文件传输工具
可选参数 | 作用 |
---|---|
-r | 复制文件夹 |
# scp 复制本地文件到远程主机
# scp 本地Linux系统文件路径 远程用户名@IP地址:远程系统文件绝对路径名
# scp [file-name] [root]@[localhost]:[path]
$ scp fusheng.img root@47.111.158.6:/root/Source/img
# scp 复制远程主机文件到本地
# scp 远程用户名@IP地址:文件的绝对路径 本地Linux系统路径
$ scp root@47.111.158.6:/root/Source/img/fusheng.img /root/Downloads
4、mtr 网络故障排查
# 安装 mtr
$ yum install mtr
# 获取信息
# 按 q 退出交互式界面
$ mtr [target web address]
5、rsync 文件同步
可选参数 | 作用 |
---|---|
-r | 递归(包含子目录) |
-a | 同步元信息 |
-v | 输出 |
-z | 传输压缩数据 |
--exclude | 排除 -exclude={'file1.txt','dir1/*'} |
--include | 包括 |
--progress | 进度 |
# 安装 rsync
$ yum install rsync
# 增量同步同步本地工程至远程服务器
$ rsync -avz --progress --exclude={'logs', '.git'} . root@47.111.158.6:/root/Document
# 远程登录数据传输
$ rsync -av -e 'ssh -p 22221' fusheng.img user@47.111.158.6:/root/Source/img
6、grep 文本搜索工具
语法参数-详情参考专业网站
可选参数 | 作用 |
---|---|
–help | 帮助 |
# 查看 Java 进程信息
$ ps -ef|grep java
# 查看相关的 hosts
$ cat /etc/hosts | grep "keyword"
# 查看端口占用
$ netstat -anp | grep [port]
# 查看压缩日志文件
$ zcat app.log.zip | grep -a "keyword"
7、Vim / Vi 文本编辑工具
Vim是非常强大的文本编辑工具 常用指令因为 vim 的操作区分了三种不同的模式,这边将区分三种模式展示常用的命令。
命令模式(Command mode)
# 命令模式于使用 vim/vi 刚进入交互界面
# 按 Esc 确保处于 命令模式
# 内容全清 dddG
输入模式(Insert mode)
# 按 i 进入编辑模式
底线命令模式(Last line mode)
# 按 : 进入底线编辑模式
# 按 set nu 显示行数
# 输入 7000 定位行 7000
vim / vi 键位说明图