登录相关命令

This commit is contained in:
nick 2018-05-06 16:22:52 +08:00
parent 02e4c0288c
commit afdd7b417f
2 changed files with 134 additions and 74 deletions

118
other.md
View File

@ -1,90 +1,60 @@
#### 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 追加到文件中
#### wc 命令,用于统计
```
> 如果 .shh 目录或 authorized_keys 文件不存在需要自己新建
wc index.php #依次输出 行数 字数 字节数 文件名
第三步,修改服务器端 ssh 配置文件 /etc/ssh/sshd_config
wc -l index.php #统计文件行数
```
RSAAuthentication yes #开启RSA验证
PubkeyAuthentication yes #是否使用公钥验证
PasswordAuthentication no #禁止使用密码验证登录
chmod 700 /root/.ssh/ #为了安全把文件修改权限,可选,部分系统新建即为 700
chmod 600 /root/.ssh/authorized_keys #为了安全把文件修改权限,可选,部分系统新建即为 600
wc -w index.php #统计文件字数
wc -c index.php #统计字节数
```
第四步,服务器端重启 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` 文件,内容如下
#### last 命令
```
Host test1 #自定义名称
HostName ip #服务器 ip 地址
User nick #用户名
Port 22 # ssh 端口号,默认 22 可以不设置
last #显示最近登录的用户列表
Host test2 #自定义名称
HostName ip #服务器 ip 地址
User nick #用户名
Port 22228 # ssh 端口,自定义端口,修改为指定端口号
last -6 #显示最近登录的 6 条登录信息
last -u nick #显示指定用户 nick 的登录信息
```
连接方式
#### lastlog 命令
```
ssh test1 #如果配置了公私钥就直接登录,没有的话输入密码登录
lastlog #显示最后登录的用户信息,内容为 用户名 终端 ip地址 登录时间,如果没有登录信息登录时间为 **Never logged in**
内容如下
tss **Never logged in**
postfix **Never logged in**
sshd **Never logged in**
ntp **Never logged in**
tcpdump **Never logged in**
nscd **Never logged in**
nick pts/0 x.x.x.x Sun May 6 16:06:39 +0800 2018
lastlog -t 2 #指定 2 天内的登录信息
lastlog -u nick #指定 nick 用户的登录信息
```
#### lastb 命令
```
sudo lastb #显示最近登录失败的用户,需要 root 权限
lastb -2 #显示 2 天内登录失败的用户
```
#### date 命令
```
date #输出系统时间与日期世界标准时间UTC格式 Sun May 6 16:19:05 CST 2018
date +"%Y-%m-%d" #输出年月日
date +"%Y-%m-%d %H:%M.%S" #输出年月日时分秒
```

90
常用配置.md Normal file
View File

@ -0,0 +1,90 @@
#### 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 #如果配置了公私钥就直接登录,没有的话输入密码登录
```