Skip to content

Commit ef6e3ad

Browse files
committed
2017-02-05
1 parent 37c63b1 commit ef6e3ad

File tree

2 files changed

+45
-10
lines changed

2 files changed

+45
-10
lines changed

Bash.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@
124124
- 参数:`-r`,表示删除用户的时候连同用户的家目录一起删除
125125
- 修改普通用户 youmeek 的权限跟 root 权限一样:
126126
- 常用方法(原理是把该用户加到可以直接使用 sudo 的一个权限状态而已):
127-
- 编辑配置文件:``
127+
- 编辑配置文件:`vim /etc/sudoers`
128128
- 找到 98 行(预估),有一个:`root ALL=(ALL) ALL`,在这一行下面再增加一行,效果如下:
129129

130130
``` nginx

SSH.md

Lines changed: 44 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,21 +12,39 @@
1212
- CentOS 6:`sudo yum install -y openssh-server openssh-clients`
1313
- Ubuntu:`sudo apt-get install -y openssh-server openssh-client`
1414

15-
## SSH 配置文件常用参数
15+
16+
## SSH 修改连接端口
1617

1718
- 配置文件介绍(记得先备份):`sudo vim /etc/ssh/sshd_config`
18-
- Port 22 #默认指定 22 端口,可以自己修改
19-
- Protocol 2,1 #指定了 SSH 协议版本,目前 SSH 只有两个版本 2 和 1
20-
- PasswordAuthentication yes #是否开启密码验证,因为 SSH 也可以设置秘钥类授权登录的方式,如果用这种方式我们可以考虑关掉密码登录的方式。
21-
- PermitEmptyPasswords no #是否允许密码为空,与上面参数配合用。
22-
19+
- 打开这一行注释:Port 22
20+
- 自定义端口选择建议在万位的端口,如:10000-65535之间,假设这里我改为 60001
21+
- 给新端口加到防火墙中:
22+
- 添加规则:`iptables -I INPUT -p tcp -m tcp --dport 60001 -j ACCEPT`
23+
- 保存规则:`service iptables save`
24+
- 重启 iptables:`service iptables restart`
25+
26+
## 设置超时
27+
28+
- ClientAliveInterval指定了服务器端向客户端请求消息的时间间隔, 默认是0,不发送。而ClientAliveInterval 300表示5分钟发送一次,然后客户端响应,这样就保持长连接了。
29+
- ClientAliveCountMax,默认值3。ClientAliveCountMax表示服务器发出请求后客户端没有响应的次数达到一定值,就自动断开,正常情况下,客户端不会不响应。
30+
- 正常我们可以设置为:
31+
- ClientAliveInterval 300
32+
- ClientAliveCountMax 3
33+
- 按上面的配置的话,300*3=900秒=15分钟,即15分钟客户端不响应时,ssh连接会自动退出。
34+
2335
## SSH 允许 root 账户登录
2436

2537
- 编辑配置文件(记得先备份):`sudo vim /etc/ssh/sshd_config`
2638
- 允许 root 账号登录
2739
- 注释掉:`PermitRootLogin without-password`
2840
- 新增一行:`PermitRootLogin yes`
29-
41+
42+
## SSH 不允许 root 账户登录
43+
44+
- 新增用户和把新增的用户改为跟 root 同等权限方法:[Bash.md]
45+
- 编辑配置文件(记得先备份):`sudo vim /etc/ssh/sshd_config`
46+
- 注释掉这一句(如果没有这一句则不管它):`PermitRootLogin yes`
47+
3048
## SSH 密钥登录
3149

3250
- 生成秘钥和公钥文件,命令:`sudo ssh-keygen`,在交互提示中连续按三次回车,如果看得懂交互的表达,那就根据你自己需求来。默认生成密钥和公钥文件是在:/root/.ssh。
@@ -36,11 +54,28 @@
3654
- 修改SSH认证文件权限,命令:
3755
- `sudo chmod 700 /root/.ssh`
3856
- `sudo chmod 600 /root/.ssh/authorized_keys`
39-
- 重启服务:`sudo service ssh restart`
57+
- 重启服务:`sudo service sshd restart`
4058
- 设置 SSH 服务默认启动:`sudo sysv-rc-conf ssh on`
59+
- 现在 SSH 客户端可以去拿着 SSH 服务器端上的 id_rsa,在客户端指定秘钥文件地址即可,这个一般由于你使用的客户端决定的,我这里推荐的是 Xshell 软件。
60+
61+
## 限制只有某一个IP才能远程登录服务器
62+
63+
- 在该配置文件:`vim /etc/hosts.deny`
64+
- 添加该内容:`sshd:ALL`
65+
- 在该配置文件:`vim /etc/hosts.allow`
66+
- 添加该内容:`sshd:123.23.1.23`
67+
68+
## 限制某些用户可以 SSH 访问
69+
70+
- 在该配置文件:`vim /etc/ssh/sshd_config`
71+
- 添加该内容:`AllowUsers root userName1 userName2`
72+
73+
## 修改完配置都要记得重启服务
4174

42-
现在 SSH 客户端可以去拿着 SSH 服务器端上的 id_rsa,在客户端指定秘钥文件地址即可,这个一般由于你使用的客户端决定的,我这里推荐的是 Xshell 软件。
75+
- 命令:`service sshd restart`
4376

4477
## SSH 资料
4578

4679
- <http://www.jikexueyuan.com/course/861_1.html?ss=1>
80+
- <http://www.361way.com/ssh-autologout/4679.html>
81+
- <http://www.osyunwei.com/archives/672.html>

0 commit comments

Comments
 (0)