经过 xshell 链接 ubuntu on windows(WSL)

装上 ubuntu on windows 后,默认要先打开 cmd, 再运行 bash 进入 ubuntu 的 shell。
可是这个shell很难看,配色很差就算了,还存在各类复制粘贴麻烦。html

默认没进入 home 目录、各类报警声等问题。因此尝试用 xshell 登录 ubuntu
这里主要讲几个关键步骤linux

1. 卸载 ssh server
sudo apt-get remove openssh-server

2. 安装 ssh server
sudo apt-get install openssh-server

3. 修改 ssh server 配置
sudo vim /etc/ssh/sshd_config算法

----------------------------------------------------------------------------------------------------------------------  shell

须要修改如下几项:  直接复制下面四行 #表示注释ubuntu

Port 2222           #设置ssh的端口号, 因为22在windows中有别的用处, 尽可能不修改系统的端口号
PermitRootLogin yes         # 能够root远程登陆
PasswordAuthentication yes     # 密码验证登陆
AllowUsers sky          # 远程登陆时的用户名 sky是用户名 可使用 *(通配符) 容许全部用户 
----------------------------------------------------------------------------------------------------------------------  vim


4. 启动 ssh server
sudo service ssh --full-restart

如今就能够用 xshell 登录 ubuntu on windows 了,IP 是 127.0.0.1, 可是要注意,cmd 的窗口还不能关掉。关掉后 sshd 服务也会关掉,链接就断开了。这个问题目前还没找到解决办法。

windows

 

 

以redhat6.3为例缓存

ssh配置文件在:bash

//ssh/sshd_config

能够打开查看相应配置,默认状况下只开放了几个选项,其他所有#屏蔽掉了。服务器

英文手册参考:http://www.openbsd.org/cgi-bin/man.cgi?query=d_config

国内有人已经翻译了:(直接贴过来了)

sshd_config 中文手册

SSHD_CONFIG(5)            OpenBSD Programmer's Manual           SSHD_CONFIG(5)

名称
     sshd_config - OpenSSH SSH 服务器守护进程配置文件

大纲
     /etc/ssh/sshd_config

描述
     sshd(8) 默认从 /etc/ssh/sshd_config 文件(或经过 -f 命令行选项指定的文件)读取配置信息。
     配置文件是由"指令 值"对组成的,每行一个。空行和以'#'开头的行都将被忽略。
     若是值中含有空白符或者其余特殊符号,那么能够经过在两边加上双引号(")进行界定。
     [注意]值是大小写敏感的,但指令是大小写无关的。

     当前全部可使用的配置指令以下:

     AcceptEnv
             指定客户端发送的哪些环境变量将会被传递到会话环境中。[注意]只有SSH-2协议支持环境变量的传递。
             细节能够参考 ssh_config(5) 中的 SendEnv 配置指令。
             指令的值是空格分隔的变量名列表(其中可使用'*'和'?'做为通配符)。也可使用多个 AcceptEnv 达到一样的目的。
             须要注意的是,有些可能会被用于绕过禁止用户使用的环境变量。因为这个缘由,该指令应当当心使用。
             默认是不传递任何环境变量。

     AddressFamily
             指定 sshd(8) 应当使用哪一种地址族。取值范围是:"any"(默认)、"inet"(仅IPv4)、"inet6"(仅IPv6)。

     AllowGroups
             这个指令后面跟着一串用空格分隔的组名列表(其中可使用"*"和"?"通配符)。默认容许全部组登陆。
             若是使用了这个指令,那么将仅容许这些组中的成员登陆,而拒绝其它全部组。
             这里的"组"是指"主组"(primary group),也就是//passwd文件中指定的组。 这里只容许使用组的名字而不容许使用GID。相关的 allow/deny 指令按照下列顺序处理: DenyUsers, AllowUsers, DenyGroups, AllowGroups AllowTcpForwarding 是否容许TCP转发,默认值为"yes"。 禁止TCP转发并不能加强,除非禁止了用户对的访问,由于用户能够安装他们本身的转发器。 AllowUsers 这个指令后面跟着一串用空格分隔的用户名列表(其中可使用"*"和"?"通配符)。默认容许全部用户登陆。 若是使用了这个指令,那么将仅容许这些用户登陆,而拒绝其它全部用户。 若是指定了 USER@HOST 模式的用户,那么 USER 和 HOST 将同时被检查。 这里只容许使用用户的名字而不容许使用UID。相关的 allow/deny 指令按照下列顺序处理: DenyUsers, AllowUsers, DenyGroups, AllowGroups AuthorizedKeysFile 存放该用户能够用来登陆的 RSA/DSA 公钥。 该指令中可使用下列根据链接时的实际状况进行展开的符号: %% 表示'%'、%h 表示用户的主目录、%u 表示该用户的用户名。 通过扩展以后的值必需要么是绝对路径,要么是相对于用户主目录的相对路径。 默认值是"./authorized_keys"。 Banner 将这个指令指定的文件中的内容在用户进行认证前显示给远程用户。 这个特性仅能用于SSH-2,默认什么内容也不显示。"none"表示禁用这个特性。 ChallengeResponseAuthentication 是否容许质疑-应答(challenge-response)认证。默认值是"yes"。 全部 login.conf(5) 中容许的方式都被支持。 Ciphers 指定SSH-2容许使用的加密算法。多个算法之间使用逗号分隔。可使用的算法以下: "aes128-cbc", "aes192-cbc", "aes256-cbc", "aes128-ctr", "aes192-ctr", "aes256-ctr", "3des-cbc", "arcfour128", "arcfour256", "arcfour", "blowfish-cbc", "cast128-cbc" 默认值是可使用上述全部算法。 ClientAliveCountMax sshd(8) 在未收到任何客户端回应前最多容许发送多少个"alive"消息。默认值是 3 。 到达这个上限后,sshd(8) 将强制断开链接、关闭会话。 须要注意的是,"alive"消息与 TCPKeepAlive 有很大差别。 "alive"消息是经过加密链接发送的,所以不会被欺骗;而 TCPKeepAlive 倒是能够被欺骗的。 若是 ClientAliveInterval 被设为 15 而且将 ClientAliveCountMax 保持为默认值, 那么无应答的客户端大约会在45秒后被强制断开。这个指令仅能够用于SSH-2协议。 ClientAliveInterval 设置一个以秒记的时长,若是超过这么长时间没有收到客户端的任何数据, sshd(8) 将经过通道向客户端发送一个"alive"消息,并等候应答。 默认值 0 表示不发送"alive"消息。这个选项仅对SSH-2有效。 Compression 是否对通讯数据进行加密,仍是延迟到成功以后再对通讯数据加密。 可用值:"yes", "delayed"(默认), "no"。 DenyGroups 这个指令后面跟着一串用空格分隔的组名列表(其中可使用"*"和"?"通配符)。默认容许全部组登陆。 若是使用了这个指令,那么这些组中的成员将被拒绝登陆。 这里的"组"是指"主组"(primary group),也就是//passwd文件中指定的组。 这里只容许使用组的名字而不容许使用GID。相关的 allow/deny 指令按照下列顺序处理: DenyUsers, AllowUsers, DenyGroups, AllowGroups DenyUsers 这个指令后面跟着一串用空格分隔的用户名列表(其中可使用"*"和"?"通配符)。默认容许全部用户登陆。 若是使用了这个指令,那么这些用户将被拒绝登陆。 若是指定了 USER@HOST 模式的用户,那么 USER 和 HOST 将同时被检查。 这里只容许使用用户的名字而不容许使用UID。相关的 allow/deny 指令按照下列顺序处理: DenyUsers, AllowUsers, DenyGroups, AllowGroups ForceCommand 强制执行这里指定的命令而忽略客户端提供的任何命令。这个命令将使用用户的登陆执行(shell -c)。 这能够应用于 shell 、命令、子系统的完成,一般用于 Match 块中。 这个命令最初是在客户端经过 SSH_ORIGINAL_COMMAND 来支持的。 GatewayPorts 是否容许远程主机链接本地的转发端口。默认值是"no"。 sshd(8) 默认将远程端口转发绑定到loopback地址。这样将阻止其它远程主机链接到转发端口。 GatewayPorts 指令可让 d 将远程端口转发绑定到非loopback地址,这样就能够容许远程链接了。 "no"表示仅容许本地链接,"yes"表示强制将远程端口转发绑定到统配地址(wildcard address), "clientspecified"表示容许客户端选择将远程端口转发绑定到哪一个地址。 GSSAPIAuthentication 是否容许使用基于 GSSAPI 的用户认证。默认值为"no"。仅用于SSH-2。 GSSAPICleanupCredentials 是否在用户退出登陆后自动销毁用户凭证缓存。默认值是"yes"。仅用于SSH-2。 HostbasedAuthentication 这个指令与 RhostsRSAAuthentication 相似,可是仅能够用于SSH-2。推荐使用默认值"no"。 推荐使用默认值"no"禁止这种不方式。 HostbasedUsesNameFromPacketOnly 在开启 HostbasedAuthentication 的状况下, 指定服务器在使用 ~/.shosts ~/.rhosts /etc/hosts.equiv 进行远程主机名匹配时,是否进行反向域名查询。 "yes"表示 sshd(8) 信任客户端提供的主机名而不进行反向查询。默认值是"no"。 HostKey 主机私钥文件的位置。若是权限不对,sshd(8) 可能会拒绝启动。 SSH-1默认是 /etc/ssh/ssh_host_key 。 SSH-2默认是 /etc/ssh/ssh_host_rsa_key/etc/ssh/ssh_host_dsa_key 。 一台能够拥有多个不一样的私钥。"rsa1"仅用于SSH-1,"dsa"和"rsa"仅用于SSH-2。 IgnoreRhosts 是否在 RhostsRSAAuthenticationHostbasedAuthentication 过程当中忽略 .rhosts.shosts 文件。 不过 /etc/hosts.equiv/etc/shosts.equiv 仍将被使用。推荐设为默认值"yes"。 IgnoreUserKnownHosts 是否在 RhostsRSAAuthenticationHostbasedAuthentication 过程当中忽略用户的 ~/./known_hosts 文件。 默认值是"no"。为了提升,能够设为"yes"。 KerberosAuthentication 是否要求用户为 PasswordAuthentication 提供的密码必须经过 Kerberos KDC 认证,也就是是否使用Kerberos认证。 要使用Kerberos认证,服务器须要一个能够 KDC identity 的 Kerberos servtab 。默认值是"no"。 KerberosGetAFSToken 若是使用了 AFS 而且该用户有一个 Kerberos 5 TGT,那么开启该指令后, 将会在访问用户的家目录前尝试获取一个 AFS token 。默认为"no"。 KerberosOrLocalPasswd 若是 Kerberos 密码失败,那么该密码还将要经过其它的认证机制(好比 //passwd)。 默认值为"yes"。 KerberosTicketCleanup 是否在用户退出登陆后自动销毁用户的 ticket 。默认值是"yes"。 KeyRegenerationInterval 在SSH-1协议下,短命的服务器密钥将以此指令设置的时间为周期(秒),不断从新生成。 这个机制能够尽可能减少密钥丢失或者黑客攻击形成的损失。 设为 0 表示永不从新生成,默认为 3600(秒)。 ListenAddress 指定 sshd(8) 监听的网络地址,默认监听全部地址。可使用下面的格式: ListenAddress host|IPv4_addr|IPv6_addr ListenAddress host|IPv4_addr:port ListenAddress [host|IPv6_addr]:port 若是未指定 port ,那么将使用 Port 指令的值。 可使用多个 ListenAddress 指令监听多个地址。 LoginGraceTime 限制用户必须在指定的时限内成功,0 表示无限制。默认值是 120 秒。 LogLevel 指定 sshd(8) 的日志等级(详细程度)。可用值以下: QUIET, FATAL, ERROR, INFO(默认), VERBOSE, DEBUG, DEBUG1, DEBUG2, DEBUG3 DEBUG 与 DEBUG1 等价;DEBUG2 和 DEBUG3 则分别指定了更详细、更罗嗦的日志输出。 比 DEBUG 更详细的日志可能会泄漏用户的敏感信息,所以反对使用。 MACs 指定容许在SSH-2中使用哪些消息摘要算法来进行数据。 可使用逗号分隔的列表来指定容许使用多个算法。默认值(包含全部可使用的算法)是: hmac-md5,hmac-sha1,umac-64@open.com,hmac-ripemd160,hmac-sha1-96,hmac-md5-96 Match 引入一个条件块。块的结尾标志是另外一个 Match 指令或者文件结尾。 若是 Match 行上指定的条件都知足,那么随后的指令将覆盖全局配置中的指令。 Match 的值是一个或多个"条件-模式"对。可用的"条件"是:User, Group, Host, Address 。 只有下列指令能够在 Match 块中使用:AllowTcpForwarding, Banner, ForceCommand, GatewayPorts, GSSApiAuthentication, KbdInteractiveAuthentication, KerberosAuthentication, PasswordAuthentication, PermitOpen, PermitRootLogin, RhostsRSAAuthentication, RSAAuthentication, X11DisplayOffset, X11Forwarding, X11UseLocalHost MaxAuthTries 指定每一个链接最大容许的认证次数。默认值是 6 。 若是失败认证的次数超过这个数值的一半,链接将被强制断开,且会生成额外的失败日志消息。 MaxStartups 最大容许保持多少个未认证的链接。默认值是 10 。 到达限制后,将再也不接受新链接,除非先前的链接认证成功或超出 LoginGraceTime 的限制。 PasswordAuthentication 是否容许使用基于密码的。默认为"yes"。 PermitEmptyPasswords 是否容许密码为空的用户远程登陆。默认为"no"。 PermitOpen 指定TCP端口转发容许的目的地,可使用空格分隔多个转发目标。默认容许全部转发请求。 合法的指令格式以下: PermitOpen host:port PermitOpen IPv4_addr:port PermitOpen [IPv6_addr]:port "any"能够用于移除全部限制并容许一切转发请求。 PermitRootLogin 是否容许 root 登陆。可用值以下: "yes"(默认) 表示容许。"no"表示禁止。 "without-password"表示禁止使用密码认证登陆。 "forced-commands-only"表示只有在指定了 command 选项的状况下才容许使用公钥登陆。 同时其它认证方法所有被禁止。这个值经常使用于作远程备份之类的事情。 PermitTunnel 是否容许 tun(4) 设备转发。可用值以下: "yes", "point-to-point"(layer 3), "ethernet"(layer 2), "no"(默认)。 "yes"同时蕴含着"point-to-point"和"ethernet"。 PermitUserEnvironment 指定是否容许 sshd(8) 处理 ~/.ssh/environment 以及 ~/.ssh/authorized_keys 中的 environment= 选项。 默认值是"no"。若是设为"yes"可能会致使用户有机会使用某些机制(好比 LD_PRELOAD)绕过访问控制,形成漏洞。 PidFile 指定在哪一个文件中存放SSH守护进程的进程号,默认为 /var/run/sshd.pid 文件。 Port 指定 sshd(8) 守护进程监听的端口号,默认为 22 。可使用多条指令监听多个端口。 默认将在本机的全部网络接口上监听,可是能够经过 ListenAddress 指定只在某个特定的接口上监听。 PrintLastLog 指定 sshd(8) 是否在每一次交互式登陆时打印最后一位用户的登陆时间。默认值是"yes"。 PrintMotd 指定 sshd(8) 是否在每一次交互式登陆时打印 /etc/motd 文件的内容。默认值是"yes"。 Protocol 指定 sshd(8) 支持的SSH协议的版本号。 '1'和'2'表示仅仅支持SSH-1和SSH-2协议。"2,1"表示同时支持SSH-1和SSH-2协议。 PubkeyAuthentication 是否容许公钥认证。仅能够用于SSH-2。默认值为"yes"。 RhostsRSAAuthentication 是否使用强可信认证(经过检查远程主机名和关联的用户名进行认证)。仅用于SSH-1。 这是经过在RSA认证成功后再检查 ~/.rhosts 或 //hosts.equiv 进行认证的。 出于考虑,建议使用默认值"no"。 RSAAuthentication 是否容许使用纯 RSA 公钥。仅用于SSH-1。默认值是"yes"。 ServerKeyBits 指定临时服务器密钥的长度。仅用于SSH-1。默认值是 768(位)。最小值是 512 。 StrictModes 指定是否要求 sshd(8) 在接受链接请求前对用户主目录和相关的配置文件进行宿主和权限检查。 强烈建议使用默认值"yes"来预防可能出现的低级错误。 Subsystem 配置一个外部子系统(例如,一个文件传输守护进程)。仅用于SSH-2协议。 值是一个子系统的名字和对应的命令行(含选项和参数)。好比"sft /bin/sftp-"。 SyslogFacility 指定 sshd(8) 将日志消息经过哪一个日志子系统(facility)发送。有效值是: DAEMON, USER, AUTH(默认), LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7 TCPKeepAlive 指定系统是否向客户端发送 TCP keepalive 消息。默认值是"yes"。 这种消息能够检测到死链接、链接不当关闭、客户端崩溃等异常。 能够设为"no"关闭这个特性。 UseDNS 指定 sshd(8) 是否应该对远程名进行反向解析,以检查此主机名是否与其IP地址真实对应。默认值为"yes"。 UseLogin 是否在交互式会话的登陆过程当中使用 login(1) 。默认值是"no"。 若是开启此指令,那么 X11Forwarding 将会被禁止,由于 login(1) 不知道如何处理 xauth(1) cookies 。 须要注意的是,login(1) 是禁止用于远程执行命令的。 若是指定了 UsePrivilegeSeparation ,那么它将在认证完成后被禁用。 UsePrivilegeSeparation 是否让 sshd(8) 经过建立非特权子进程处理接入请求的方法来进行权限分离。默认值是"yes"。 成功后,将以该认证用户的身份建立另外一个子进程。 这样作的目的是为了防止经过有缺陷的子进程提高权限,从而使系统更加X11DisplayOffset 指定 sshd(8) X11 转发的第一个可用的显示区(display)数字。默认值是 10 。 这个能够用于防止 d 占用了真实的 X11 服务器显示区,从而发生混淆。 X11Forwarding 是否容许进行 X11 转发。默认值是"no",设为"yes"表示容许。 若是容许X11转发而且sshd(8)代理的显示区被配置为在含有通配符的地址(X11UseLocalhost)上监听。 那么将可能有额外的信息被泄漏。因为使用X11转发的可能带来的风险,此指令默认值为"no"。 须要注意的是,禁止X11转发并不能禁止用户转发X11通讯,由于用户能够安装他们本身的转发器。 若是启用了 UseLogin ,那么X11转发将被自动禁止。 X11UseLocalhost sshd(8) 是否应当将X11转发服务器绑定到本地loopback地址。默认值是"yes"。 sshd 默认将转发服务器绑定到本地loopback地址并将 DISPLAY 名部分设为"localhost"。 这能够防止远程主机链接到 proxy display 。不过某些老旧的X11客户端不能在此配置下正常工做。 为了兼容这些老旧的X11客户端,你能够设为"no"。 XAuthLocation 指定 xauth(1) 程序的绝对路径。默认值是 /usr/X11R6/bin/xauth 时间格式sshd(8) 命令行参数和配置文件中使用的时间值能够经过下面的格式指定:time[qualifier] 。 其中的 time 是一个正整数,而 qualifier 能够是下列单位之一: <> 秒 s | Sm | M 分钟 h | H 小时 d | Dw | W 星期 能够经过指定多个数值来累加时间,好比: 1h30m 1 小时 30 分钟 (90 分钟) 文件 ///sshd_config sshd(8) 的主配置文件。这个文件的宿主应当是root,权限最大能够是"644"。 参见 sshd(8) 做者 OpenSSH is a derivative of the original and free ssh 1.2.12 release by Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo de Raadt and Dug Song removed many bugs, re-added newer features and cre- ated OpenSSH. Markus Friedl contributed the support for SSH protocol versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support for privilege separation. OpenBSD 4.2 January 1, 2008 9

Vbird网络篇里的说明:

# 1. 关于 SSH Server 的总体设定,包含使用的 port 啦,以及使用的密码演算方式
# 先留意一下,在预设的文件内,只要是被批注的设定值(#),即为『默认值!』
Port 22
# SSH 预设使用 22 这个 port,也可使用多个 port,即重复使用 port 这个设定项目! # 例如想要开放 d 在 22 与 443 ,则多加一行内容为:
# Port 443
# 这样就行了!不过,不建议修改 port number

 

rotocol 1,2
# 选择的 SSH 协议版本,能够是 1 也能够是 2 ,
# 若是要同时支持二者,就必需要使用 2,1 这个分隔了(Protocol 1,2)! # 目前咱们会建议您,直接使用 Protocol 2 便可!

 

#ListenAddress 0.0.0.0
# 监听的适配卡!举个例子来讲,若是您有两个 IP,

# 分别是 192.168.0.100 及 192.168.2.20 ,那么只想要

# 开放 192.168.0.100 时,就能够写如同下面的样式:

ListenAddress 192.168.0.100
# 只监听来自 192.168.0.100 这个 IP 的 SSH 联机。
# 若是不使用设定的话,则预设全部接口均接受 SSH

 

#PidFile /var/run/d.pid
# 能够放置 SSHD 这个 PID 的文件!左列为默认值

 

LoginGraceTime 2m
# 当使用者连上 SSH server 以后,会出现输入密码的画面,在该画面中,
# 在多久时间内没有成功连上 SSH  ,就断线!若无单位则预设时间为秒!

 

Compression yes
# 是否可使用压缩指令?固然能够

 

# 2. 说明主机的 Private Key 放置的档案,预设使用下面的档案便可!

HostKey /etc/ssh/ssh_host_key              # SSH version 1 使用的私钥
HostKey /etc/ssh/ssh_host_rsa_key          # SSH version 2 使用的 RSA 私钥
HostKey ///ssh_host_dsa_key           # SSH version 2 使用的 DSA 私钥
# 还记得咱们在的 SSH 联机流程里面谈到的,这里就是 Host Key

 

# 2.1 关于 version 1 的一些设定!
KeyRegenerationInterval 1h
# 由前面联机的说明能够知道, version 1 会使用  的 Public Key ,

# 那么若是这个 Public Key 被偷的话,岂不完蛋?因此须要每隔一段时间
# 来从新创建一次!这里的时间为秒!不过咱们一般都仅使用 version 2 ,
# 因此这个设定能够被忽略喔!

 

ServerKeyBits 768
# 没错!这个就是 Server key 的长度!用默认值便可。

 

# 3. 关于登陆文件的讯息数据放置与 daemon 的名称!
SyslogFacility AUTHPRIV
# 当有人使用 SSH 登入系统的时候,SSH 会记录信息,这个信息要记录在什么 daemon name

# 底下?预设是以 AUTH 来设定的,便是 /var/log/secure 里面!
# 其它可用的 daemon name 为:DAEMON,USER,AUTH,LOCAL0,LOCAL1,LOCAL2,LOCAL3,LOCAL4,LOCAL5,

 

LogLevel INFO
# 登陆记录的等级!注意登机信息可参照vbird基础篇详解。

 

# 4. 设定项目!极重要!
# 4.1 登入设定部分
PermitRootLogin no
# 是否容许 root 登入!预设是容许的,可是建议设定成 no!

UserLogin no
# 在 SSH 底下原本就不接受 login 这个程序的登入!

StrictModes yes
# 当使用者的 host key 改变以后,Server 就不接受联机,能够抵挡部分的木马程序!

RSAAuthentication yes

# 是否使用纯的 RSA !?仅针对 version 1 !

PubkeyAuthentication yes

# 是否容许 Public Key ?固然容许啦!仅针对 version 2

AuthorizedKeysFile ./authorized_keys
# 上面这个在设定若要使用不须要密码登入的帐号时,那么那个帐号的存放密码所在文件名!

# 这个设定值很重要喔!文件名记一下!

# 4.2 认证部分
RhostsAuthentication no
# 本机系统不使用 .rhosts,由于仅使用 .rhosts 太不了,因此这里必定要设定为 no

IgnoreRhosts yes
# 是否取消使用 ~/.ssh/.rhosts 来作为认证!固然是!

RhostsRSAAuthentication no
# 这个选项是专门给 version 1 用的,使用 rhosts 文件在 //hosts.equiv

# 配合 RSA 演算方式来进行!不要使用啊!

HostbasedAuthentication no
# 这个项目与上面的项目相似,不过是给 version 2 使用的!

IgnoreUserKnownHosts no
# 是否忽略家目录内的 ~/./known_hosts 这个文件所记录的内容?

# 固然不要忽略,因此这里就是 no 啦!

PasswordAuthentication yes
# 密码验证固然是须要的!因此这里写 yes 啰!

PermitEmptyPasswords no
# 若上面那一项若是设定为 yes 的话,这一项就最好设定为 no

# 这个项目在是否容许以空的密码登入!固然不准!

ChallengeResponseAuthentication no
# 容许任何的密码认证!因此,任何 login.conf 规定的认证方式,都可适用!
# 但目前咱们比较喜欢使用 PAM 模块帮忙管理认证,所以这个选项能够设定为 no 喔! UsePAM yes
# 利用 PAM 管理使用者有不少好处,能够记录与管理。
# 因此这里咱们建议您使用 UsePAM 且 ChallengeResponseAuthentication 设定为 no

# 4.3 与 Kerberos 有关的参数设定!由于咱们没有 Kerberos ,因此底下不用设定!

#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes

#KerberosTgtPassing no# 4.4 底下是有关在 X-Window 底下使用的相关设定!

X11Forwarding yes
#X11DisplayOffset 10
#X11UseLocalhost yes

# 4.5 登入后的项目:
PrintMotd no
# 登入后是否显示出一些信息呢?例如上次登入的时间、地点等等,预设是 yes
# 亦便是打印出 //motd 这个档案的内容。可是,若是为了,能够考虑改成 no !

PrintLastLog yes
# 显示上次登入的信息!能够啊!预设也是 yes !

KeepAlive yes
# 通常而言,若是设定这项目的话,那么 SSH Server 会传送 KeepAlive 的讯息给
# Client 端,以确保二者的联机正常!在这个状况下,任何一端死掉后,SSH 能够马上知道!而不会有僵尸程序的发生!

UsePrivilegeSeparation yes
# 使用者的权限设定项目!就设定为 yes 吧!

MaxStartups 10
# 同时容许几个还没有登入的联机画面?当咱们连上 SSH ,可是还没有输入密码时,
# 这个时候就是咱们所谓的联机画面啦!在这个联机画面中,为了保护,
# 因此须要设定最大值,预设最多十个联机画面,而已经创建联机的不计算在这十个当中

# 4.6 关于使用者抵挡的设定项目:
DenyUsers *
# 设定受抵挡的使用者名称,若是是所有的使用者,那就是所有挡吧!

# 如果部分使用者,能够将该帐号填入!例以下列!
DenyUsers test

DenyGroups test
# 与 DenyUsers 相同!仅抵挡几个群组而已!

# 5. 关于 SFTP 服务的设定项目!

Subsystem sftp /usr/lib/ssh/sftp-

相关文章
相关标签/搜索