业精于勤
而荒于嬉

Linux 常用配置

一、更改时区

执行命令:

# 查看当前时区,+0800 则为东八区
date -R
Thu, 13 May 2021 08:56:37 +0800
sudo ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
date
Mon 10 May 2021 11:23:10 AM CST

二、查看端口占用

netstat

netstat -tunlp 用于显示 tcp,udp 的端口和进程等相关情况。

netstat 查看端口占用语法格式:

netstat -tunlp | grep 端口号
  • -t (tcp) 仅显示tcp相关选项
  • -u (udp)仅显示udp相关选项
  • -n 拒绝显示别名,能显示数字的全部转化为数字
  • -l 仅列出在Listen(监听)的服务状态
  • -p 显示建立相关链接的程序名

例如查看 8000 端口的情况,使用以下命令:

netstat -tunlp | grep 8000
tcp   0   0 0.0.0.0:8000     0.0.0.0:*     LISTEN      26993/nodejs

更多命令:

netstat -ntlp   //查看当前所有tcp端口
netstat -ntulp | grep 80   //查看所有80端口使用情况
netstat -ntulp | grep 3306   //查看所有3306端口使用情况

kill

在查到端口占用的进程后,如果你要杀掉对应的进程可以使用 kill 命令:

kill -9 PID

如上实例,我们看到 8000 端口对应的 PID 为 26993,使用以下命令杀死进程:

kill -9 26993

三、安全加固

3.1 生成密钥

sudo ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa
Your public key has been saved in /root/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:UpNC/jIsV5ROhmMXTFNCC4XdiPcrOuPPKQbeQt3on6s root@gitlab-server
The key's randomart image is:
+---[RSA 3072]----+
|      oXO*.      |
|     o*oX=.      |
|     .oB*.       |
|     . =...      |
|    ..*oS  .     |
|    ooo+o .      |
|   o + . .       |
|    o O. o       |
|     +EBB.       |
+----[SHA256]-----+

sudo  ls -al ~/.ssh/
total 16
drwx------ 2 root root 4096 May 13 18:31 .
drwx------ 4 root root 4096 May 11 20:36 ..
-rw------- 1 root root    0 May  6 17:32 authorized_keys
-rw------- 1 root root 2602 May 13 18:31 id_rsa
-rw-r--r-- 1 root root  572 May 13 18:31 id_rsa.pub

然后将生成的【公钥】内容写入 authorized_keys 文件中。

sudo cat ~/.ssh/id_rsa.pub > ~/.ssh/authorized_keys

3.2 配置 SSH

sudo vi /etc/ssh/sshd_config
# 配置端口号
Port 10022
# 配置监听地址
ListenAddress 0.0.0.0
ListenAddress ::
# 配置密钥地址
AuthorizedKeysFile .ssh/authorized_keys
# 使用公钥
PubkeyAuthentication yes
# 禁用密码登录
PasswordAuthentication no
# 重启 ssh 服务生效
sudo systemctl restart sshd

3.3 解决 SSH 掉线情况

sudo vi /etc/ssh/sshd_config

找到下面两行:

#ClientAliveInterval 0
#ClientAliveCountMax 3

去掉注释,改成:

# 客户端每隔多少秒向服务发送一个心跳数据
ClientAliveInterval 30
# 客户端多少秒没有相应,服务器自动断掉连接
ClientAliveCountMax 86400

# 重启 ssh 服务生效
sudo systemctl restart sshd

最后,记得下载【私钥】文件,在 SSH 客户端使用即可。

赞(0)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《Linux 常用配置》
文章链接:https://ithuang.net/linux-command.html
本站资源仅供个人学习交流,本人版权所有。欢迎转载,转载请注明作者及来源链接,谢谢。