91 lines
2.5 KiB
Markdown
91 lines
2.5 KiB
Markdown
#### ssh 公私钥登录配置
|
||
|
||
第一步,在客户端生成公钥
|
||
```
|
||
ssh-keygen -t rsa #生成的公钥匙在 ~/.ssh/ 目录下
|
||
```
|
||
第二步,把公钥上传到服务器端,登录服务器追加公钥到 authorized_keys 文件
|
||
```
|
||
scp id_rsa.pub root@ip地址:文件保存路径
|
||
ssh root@ip #登录服务器
|
||
cd id_rsa.pub 文件保存路径
|
||
cat id_rsa.pub >> /root/.ssh/authorized_keys 追加到文件中
|
||
|
||
```
|
||
> 如果 .shh 目录或 authorized_keys 文件不存在需要自己新建
|
||
|
||
第三步,修改服务器端 ssh 配置文件 /etc/ssh/sshd_config
|
||
|
||
```
|
||
RSAAuthentication yes #开启RSA验证
|
||
PubkeyAuthentication yes #是否使用公钥验证
|
||
PasswordAuthentication no #禁止使用密码验证登录
|
||
chmod 700 /root/.ssh/ #为了安全把文件修改权限,可选,部分系统新建即为 700
|
||
chmod 600 /root/.ssh/authorized_keys #为了安全把文件修改权限,可选,部分系统新建即为 600
|
||
```
|
||
|
||
第四步,服务器端重启 ssh 服务
|
||
```
|
||
service sshd restart #重启 sshd 服务
|
||
```
|
||
|
||
---
|
||
|
||
#### 禁止 ping 服务器配置
|
||
|
||
第一种方法:临时生效配置
|
||
```
|
||
sudo sysctl -w net.ipv4.icmp_echo_ignore_all=1 #临时生效禁止 ping 作用,重启服务器后恢复
|
||
|
||
sudo sysctl -w net.ipv4.icmp_echo_ignore_all=0 #解除禁止 ping 作用
|
||
```
|
||
|
||
第二种方法:永久生效配置
|
||
|
||
编辑 /etc/sysctl.conf 文件
|
||
```
|
||
sudo vim /etc/sysctl.conf
|
||
```
|
||
在配置文件中添加
|
||
```
|
||
net.ipv4.icmp_echo_ignore_all=1
|
||
```
|
||
如果已经有 `net.ipv4.icmp_echo_ignore_all` 这一行了,直接修改=号后面的值即可的。(0表示允许,1表示禁止)
|
||
修改完成后执行 `sysctl -p` 使新配置生效
|
||
|
||
第三种方法:通过 iptables 配置
|
||
```
|
||
sudo iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP #往防火墙添加规则
|
||
|
||
删除已添加的iptables规则
|
||
sudoi ptables -L -n --line-numbers #将所有iptables以序号标记显示
|
||
|
||
sudo iptables -D INPUT 8 #删除INPUT里序号为8的规则
|
||
```
|
||
|
||
---
|
||
|
||
#### 自定义 ssh 登录
|
||
|
||
在 `.ssh` 目录下新建 `config` 文件,内容如下
|
||
|
||
```
|
||
Host test1 #自定义名称
|
||
HostName ip #服务器 ip 地址
|
||
User nick #用户名
|
||
Port 22 # ssh 端口号,默认 22 可以不设置
|
||
|
||
Host test2 #自定义名称
|
||
HostName ip #服务器 ip 地址
|
||
User nick #用户名
|
||
Port 22228 # ssh 端口,自定义端口,修改为指定端口号
|
||
```
|
||
|
||
连接方式
|
||
|
||
```
|
||
ssh test1 #如果配置了公私钥就直接登录,没有的话输入密码登录
|
||
```
|
||
|
||
|