使用OpenSSH远程管理Linux服务器

  1. 作为Linux系统管理员,没有人不知道OpenSSH的,SSH采用了密文的形式在网络中传输数据,实现了更高的安全级别,是Telnet服务的安全替代品,sshd是OpenSSH的服务器端守护进程,而与之对应的windows下客户端软件有很多,常用的有SecureCRT、Xshell、puTTY等。通过SecureCRT远程连接linux系统,不受网络速度和带宽的影响,无论你是光纤上网还是宽带拨号上网,都能轻松连接,操作维护方便。
  2. OpenSSH在Centos linux发行版本中是默认安装的,一般的安装目录为/etc/ssh,对应的服务配置文件为/etc/ssh/sshd_config。
  3. 这里以阿里云Aliyun Linux 17.1 64位为例。讲下sshd_config配置文件中每个选项中的含义。
  4. 命令: vi /etc/ssh/sshd_config
  • #Port 22 (“Port”用来设置sshd监听的端口,如果不做修改,默认22端口)
  • #ListenAddress 0.0.0.0 (“ListenAddress”用来设置sshd服务器绑定的ip地址,不需要做特殊设置,保持默认)
  • #Protocol 2(“Protocol”设置使用的SSH协议,默认为SSH2,其实可用的协议还有SSH1,不过SSH1安全度很低,已经基本不用了)
  • HostKey /etc/ssh/ssh_host_rsa_key
  • HostKey /etc/ssh/ssh_host_ecdsa_key
  • HostKey /etc/ssh/ssh_host_ed25519_key (“HostKey”用来设置服务器密钥文件的路径,保持默认即可。)
  • \ #KeyRegenerationInterval 1h (“KeyRegenerationInterval 1h”用来设置在多少秒后系统自动重新生成服务器的密钥(如果使用密钥)。重新生成密钥是为了防止利用盗用的密钥解密被截获的信息)
  • #ServerKeyBits 1024 (“ServerKeyBits 1024” 用来定义服务器密钥的长度,默认为1024位)。
  • SyslogFacility AUTHPRIV (“SyslogFacility AUTHPRIV”用来设定在记录来自sshd的消息的时候,是否给出”facility code”)
  • \ #LogLevel INFO (“#LogLevel INFO” 用来记录sshd日志消息的级别)
  • \ #LoginGraceTime 2m(“#LoginGraceTime 2m”用来设置如果用户登陆失败,在切断连接前服务器需要等待的时间,以秒为单位)
  • PermitRootLogin yes(”PermitRootLogin yes”用来设置超级用户root能不能用ssh登陆。root远程登陆是很危险的,因此在远程登陆linux系统时,这个选项建议为”no” 阿里云yes
  • \ #StrictModes yes(“用来设置ssh在接收登陆请求之前是否检查用户根目录和rhost文件的权限和所有权,此选项建议设置为yes”)
  • \ #RSAAuthentication yes(“#RSAAuthentication”用来设置是否开启RAS密钥验证,如果采用RAS密钥登陆方式,开启此选项)
  • #PubkeyAuthentication yes(“#PubkeyAuthentication”用来设置是否开启公钥验证,如果采用公钥验证方式登录时,开启此选项。)
  • AuthorizedKeysFile .ssh/authorized_keys(”AuthorizedKeysFile”用来设置公钥验证文件的路径,与PubkeyAuthentication配合使用)
    -\ #HostbasedAuthentication no
    -\ #IgnoreUserKnownHosts no(“IgnoreUserKnownHosts”用来设置ssh在进行RhostsRSAAuthentication安全验证时是否忽略用户的”$HOME/.ssh/know_hosts”文件)
  • #IgnoreRhosts yes(”#IgnoreRhosts”用来设置验证时是否使用”/.rhosts”和”/.shosts文件”)
  • PasswordAuthentication yes(”PasswordAuthentication”用来设置是否开启验证密码机制,如果用密码登陆系统,请设置为yes)
    -\ #PermitEmptyPasswords no(“用来设置是否允许用密码为空的账号登陆系统,肯定是no了”)
  • X11Forwarding yes(”X11Forwarding”用来设置是否允许x11转发)
    -\ #PrintMotd yes(”用来设置sshd是否在用户登陆时显示”/etc/motd”中的信息”)

对sshd_config文件配置完毕,接着重启sshd守护进程,使其修改生效
systemctl restart sshd

《使用OpenSSH远程管理Linux服务器》

最后一步是设置sshd服务开机自动启动,执行下列命令

systemctl enable sshd

《使用OpenSSH远程管理Linux服务器》

这样sshd服务会在系统运行级”multi-user”下自动启动

备注:以上操作系统为
Aliyun Linux 17.1 64位

    原文作者:养码哥
    原文地址: https://www.jianshu.com/p/62580de7d3e9
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞