sshd_config配置文件

sshd_config配置文件:

SSH服务器端配置文件路径:/etc/ssh/sshd_config

Port 22             #ssh默认监听端口为22,建议修改为非标准端口
AddressFamily any   # 指定sshd应当使用哪种地址族。取值范围是:"any"(默认)、"inet"(仅IPv4)、"inet6"(仅IPv6)。  
ListenAddress 0.0.0.0   # 监听本地的哪个Ip地址,默认为0.0.0.0代表监听本地所有IP地址。假设本地有两个IP地址,分别为:192.168.1.12192.168.23.12,假如只对192.168.1.12这个IP开放的话,那么就写为ListenAddress 192.168.1.12 就OK了。
Protocol 2      #选择SSH支持的协议版本,默认为2。也可以改为12都支持,需要用,作为分隔符。写为1,2。不建议支持SSH1版本,SSH1存在漏洞与缺陷。

# HostKey for protocol version 1
HostKey /etc/ssh/ssh_host_key       #设置SSH version 1私钥的路径
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key   #设置SSH version 2 RSA私钥的路径
HostKey /etc/ssh/ssh_host_dsa_key   #设置SSH version 2 DSA私钥的路径

LoginGraceTime 2m       # 限制用户必须在指定的时限内认证成功,0 表示无限制。默认值是2分钟  
PermitRootLogin yes     #是否允许root用户登陆,默认为yes
StrictModes yes         #指定是否要求SSH在接受连接请求前对用户主目录和相关的配置文件进行宿主和权限检查。强烈建议使用默认值"yes"来预防可能出现的低级错误。  
MaxAuthTries 6          #指定每个连接最大允许的认证次数。默认值是 6。如果失败认证的次数超过这个数值的一半,连接将被强制断开,且会生成额外的失败日志消息。
MaxSessions 10          #指定同一个连接的最大会话次数

RSAAuthentication yes       #是否允许使用纯 RSA 公钥认证。仅用于SSH-1。默认值是"yes"。 
PubkeyAuthentication yes        #是否允许公钥认证。仅可以用于SSH-2。默认值为"yes"。  
AuthorizedKeysFile .ssh/authorized_keys     #存放该用户可以用来登录的 RSA/DSA 公钥。  
             #该指令中可以使用下列根据连接时的实际情况进行展开的符号:  
             #%% 表示'%'、%h 表示用户的主目录、%u 表示该用户的用户名。  
             #经过扩展之后的值必须要么是绝对路径,要么是相对于用户主目录的相对路径。  
             #默认值是".ssh/authorized_keys"。  

PasswordAuthentication yes  #是否允许使用基于密码的认证。默认为"yes"。 
PermitEmptyPasswords  no    #是否允许密码为空的用户远程登录。默认为"no"。 

GatewayPorts no     #是否允许远程主机连接本地的转发端口。默认值是"no"# sshd默认将远程端口转发绑定到loopback地址。这样将阻止其它远程主机连接到转发端口。  
             # GatewayPorts 指令可以让 sshd 将远程端口转发绑定到非loopback地址,这样就可以允许远程主机连接了。  
             # "no"表示仅允许本地连接,"yes"表示强制将远程端口转发绑定到统配地址(wildcard address),  
             # "clientspecified"表示允许客户端选择将远程端口转发绑定到哪个地址。  

ClientAliveInterval 0       # 设置一个以秒记的时长,如果超过这么长时间没有收到客户端的任何数据,               # sshd将通过安全通道向客户端发送一个"alive"消息,并等候应答。  
              # 默认值 0 表示不发送"alive"消息。这个选项仅对SSH-2有效。  
ClientAliveCountMax 3       # sshd在未收到任何客户端回应前最多允许发送多少个"alive"消息。默认值是 3# 到达这个上限后,sshd将强制断开连接、关闭会话。  
             # 需要注意的是,"alive"消息与 TCPKeepAlive 有很大差异。  
             # "alive"消息是通过加密连接发送的,因此不会被欺骗;而 TCPKeepAlive 却是可以被欺骗的。         # 如果 ClientAliveInterval 被设为 15 并且将 ClientAliveCountMax 保持为默认值,  
             # 那么无应答的客户端大约会在45秒后被强制断开。这个指令仅可以用于SSH-2协议。  
UseDNS yes      #指定 sshd是否应该对远程主机名进行反向解析,以检查此主机名是否与其IP地址真实对应。默认值为"yes"。  
PidFile /var/run/sshd.pid       # 指定在哪个文件中存放SSH守护进程的进程号,默认为 /var/run/sshd.pid 文件。  
MaxStartups 10:30:100       #             最大允许保持多少个未认证的连接。默认值是 10# 到达限制后,将不再接受新连接,除非先前的连接认证成功或超出 LoginGraceTime 的限制。

SSAPIAuthentication no      # 是否允许使用基于 GSSAPI 的用户认证。默认值为"no"。仅用于SSH-2。
GSSAPICleanupCredentials yes        # 是否在用户退出登录后自动销毁用户凭证缓存。默认值是"yes"。仅用于SSH-2。  

Banner none     # 将这个指令指定的文件中的内容在用户进行认证前显示给远程用户。  
             # 这个特性仅能用于SSH-2,默认什么内容也不显示。"none"表示禁用这个特性。


Compression     # 是否对通信数据进行加密,还是延迟到认证成功之后再对通信数据加密。可用值:"yes", "delayed"(默认), "no"。             

AllowUsers  
             # 这个指令后面跟着一串用空格分隔的用户名列表(其中可以使用"*""?"通配符)。默认允许所有用户登录。  
             # 如果使用了这个指令,那么将仅允许这些用户登录,而拒绝其它所有用户。  
             # 如果指定了 USER@HOST 模式的用户,那么 USER 和 HOST 将同时被检查。  
             # 这里只允许使用用户的名字而不允许使用UID。相关的 allow/deny 指令按照下列顺序处理:  
             # DenyUsers, AllowUsers, DenyGroups, AllowGroups  

DenyUsers  
             # 这个指令后面跟着一串用空格分隔的用户名列表(其中可以使用"*""?"通配符)。默认允许所有用户登录。  
             # 如果使用了这个指令,那么这些用户将被拒绝登录。  
             # 如果指定了 USER@HOST 模式的用户,那么 USER 和 HOST 将同时被检查。  
             # 这里只允许使用用户的名字而不允许使用UID。相关的 allow/deny 指令按照下列顺序处理:  
             # DenyUsers, AllowUsers, DenyGroups, AllowGroups  

AllowGroups  
             # 这个指令后面跟着一串用空格分隔的组名列表(其中可以使用"*""?"通配符)。默认允许所有组登录。  
             # 如果使用了这个指令,那么将仅允许这些组中的成员登录,而拒绝其它所有组。  
             # 这里的"组"是指"主组"(primary group),也就是/etc/passwd文件中指定的组。  
             # 这里只允许使用组的名字而不允许使用GID。相关的 allow/deny 指令按照下列顺序处理:  
             # DenyUsers, AllowUsers, DenyGroups, AllowGroups  

DenyGroups  
             # 这个指令后面跟着一串用空格分隔的组名列表(其中可以使用"*""?"通配符)。默认允许所有组登录。  
             # 如果使用了这个指令,那么这些组中的成员将被拒绝登录。  
             # 这里的"组"是指"主组"(primary group),也就是/etc/passwd文件中指定的组。  
             # 这里只允许使用组的名字而不允许使用GID。相关的 allow/deny 指令按照下列顺序处理:  
             # DenyUsers, AllowUsers, DenyGroups, AllowGroups  
ssh连接提速:
  • UseDNS no:禁用DNS反向解析
  • `GSSAPIAuthentication no : 不使用基于 GSSAPI 的用户认证。
  • 使用sed修改,修改完成需要重启服务
[root@A ~]# sed -i 's/#UseDNS yes/UseDNS no/' /etc/ssh/sshd_config 

[root@A ~]# sed -i 's/GSSAPIAuthentication yes/GSSAPIAuthentication no/' /etc/ssh/sshd_config
[root@A ~]# service sshd restart       #centos 6 上重启服务
[root@B ~]# systemctl restart sshd     #centos 7 上重启服务
参考:

sshd_config配置详解

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值