0%

SSH Config

在对任何配置文件进行修改之前,最好都做好备份

1. 安装openssh-server:sudo apt-get install openssh-server

2. 是否启用密码认证:

1
2
3
4
#YES
PasswordAuthentication yes
#NO
PasswordAuthentication no

3. 是否允许转发

1
2
3
4
5
6
#YES
AllowTcpForwarding yes
X11Forwarding yes
#NO
AllowTcpForwarding no
X11Forwarding no

4. 禁止或允许通过SSH进行连接的用户

1
2
3
4
#允许用户Fred 和 Wilma进行连接
AllowUsers Fred Wilma
#禁止用户Fred 和 Wilma进行连接
DenyUsers Fred Wilma

5. 限制连接数量,可以简单的在UFW里面配置:sudo ufw limit ssh or

1
2
3
4
#修改最大连接数量
MaxStartups 2:30:10
#修改因用户不活跃而断开的等待时间
LoginGraceTime 30

6. 记录更多关于SSH登陆的消息

1
2
3
4
5
#可以通过修改登陆日志的级别来实现
#详细(日志文件在 /var/log/auth.log)
LogLevel VERBOSE
#粗略
LogLevel INFO

7. 是否在登陆时打印警示信息

  1. 大部分的发行版(如:CentOS)登陆和欢迎信息控制在:/etc/motd
  2. Ubuntu的登陆和欢迎信息控制在:/etc/issue/etc/update-motd.d
  3. /etc/issue/etc/update-motd.d 区别在于:当一个网络用户或通过串口登录系统 上时, /etc/issue 的文件内容显示在login提示符之前,而 /etc/update-motd.d 里面的内容显示在用户成功登录系统之后。
  4. /etc/update-motd.d里面存放着一些可执行脚本,您可以直接执行看看脚本的效果,也可以通过 chmod -x 脚本名称来达到禁用脚本的效果
  5. 执行 /usr/bin/landscape-sysinfo可以查看系统资源使用信息,可以将这一条加入自己谢的脚本里面然后添加到 /etc/update-motd.d,然后再登陆的时候就可以看到系统资源的使用信息
  6. 修改后用:sudo run-parts /etc/update-motd.d 去执行就会立即见到效果,而不用反复注销登录。
  7. 我们也可以在/etc/issue.net(telnet登陆时显示的信息) or /etc/issue(ssh登陆时输出的信息) 里面修改警告信息
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    #issue 内各代码意义:
    \d 本地端时间日期;
    \l 显示第几个终端机接口;
    \m 显示硬件等级 (i386/i486/i586/i686…);
    \n 显示主机网络名称;
    \o 显示 domain name;
    \r 操作系统版本 (相当于 uname -r)
    \t 显示本地端时间;
    \s 操作系统名称;
    \v 操作系统版本。

8. 修改完ssh_config,需要手动重启一下ssh服务来加载配置文件使之生效:sudo systemctl restart ssh


9. 参考链接:

  • https://help.ubuntu.com/community/SSH/OpenSSH/Configuring#Forwarding
-------------本文结束再接再厉-------------

本文标题:SSH Config

文章作者:IITII

发布时间:2019年01月30日 - 09:01

最后更新:2019年03月05日 - 10:03

原始链接:https://iitii.github.io/2019/01/30/1/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。