Linux下的ssh和scp介绍(3)

StrictModes yes                -- 设置ssh在接收登录请求之前,是否检查用户家目录和rhosts文件的权限和所有权。

X11Forwarding no               -- 设置是否允许X11转发。设为“yes”允许用户运行远程主机上的X程序。

PrintMotd yes                  -- 设置sshd是否在用户登录的时候显示“/etc/motd”中的信息

SyslogFacility AUTH            -- 设���在记录来自sshd的消息的时候,是否给出“facility code”

LogLevel INFO                  -- 设置记录sshd日志消息的层次。INFO是一个好的选择。

RhostsAuthentication no        -- 设置是否只用rhosts或“/etc/hosts.equiv”进行安全验证

RhostsRSAAuthentication no     -- 设置是否允许用rhosts或“/etc/hosts.euive”加上RSA进行安全验证

RSAAuthentication yes          -- 设置是否允许只有RSA进行验证

PasswordAuthentication yes     -- 设置是否允许口令验证。设为no只允许用户用基于密钥的方式登录,而不能使用基于口令的方式登录。

PermitEmptyPasswords no        -- 设置是否允许用口令为空的帐号登陆

AllowUsers admin              -- AllowUsers的后面跟着任意的数量的用户名的匹配串(patterns)或user@host这样的匹配串,这些字符串之间用空格隔开,主机名可以是DNS名或ip地址。

#Subsystem /usr/local/sbin/sftpd  -- 把前面的#号去掉并且把路径名设置成/usr/bin/sftpserv,则用户将能使用sftp(安全带ftp)了。

PubkeyAuthentication yes       -- 允许使用公钥进行验证

生成密钥对

正如前面所介绍的,如果要实现ssh的通信,那么服务器端必须要有客户端的公钥,而客户端自己保留私钥,这样才能实现验证,因为它们是基于公钥算法进行加密的。因此,就必须要在客户端生成密钥对,然后自己保留私钥,把公钥分发到自己想访问的服务器端去。下面就来介绍客户端这个生成密钥对的过程。

用下面的命令可以生成密匙:ssh-keygen;如果远程主机使用的是SSH 2.x就要用这个命令:ssh-keygen  –d。在同一台主机上同时有SSH1和SSH2的密匙是没有问题的,因为密匙是存成不同的文件的。

ssh-keygen/ssh-keygen  -d命令运行之后会显示下面的信息:

Generating public/private dsa key pair.

Enter file in which to save the key (/home/mms/.ssh/id_dsa):

#按回车保存为: /home/mms/.ssh/id_dsa,即当前用户mms的私钥

Enter passphrase (empty for no passphrase):

# 按回车,表示读取密钥时不需要密钥的密码

Enter same passphrase again:

# 确认密钥的密码,必须和上面的输入相同

Your identification has been saved in /home/mms/.ssh/id_dsa.

# 私钥保存信息

Your public key has been saved in /home/mms/.ssh/id_dsa.pub.

# 公钥保存信息

The key fingerprint is:

ec:41:e8:08:38:0b:f8:1e:bc:92:98:32:fc:d7:69:7d mms@mms1.lxhd.com

# 密钥指纹

现在你有一对密匙了,公用密匙要分发到所有你想用ssh登录的远程主机上去;私人密匙要好好地保管防止别人知道你的私人密匙。用“ls –l ~/.ssh/identity”或“ls –l ~/.ssh/id_dsa”所显示的文件的访问权限必须是“-rw-------”。如果你怀疑自己的密匙已经被别人知道了,不要迟疑马上生成一对新的密匙。当然,你还要重新分发一次公用密匙。

分发公钥

具体步骤如下所示:

1. copy公钥到所要登录的远程服务器的指定用户的家目录(你在要访问的服务器是所使用的登录用户的家目录)下,例如:

scp  id_dsa.pub  oracle@csdba:/home/oracle/.ssh/pub.ilonng

这里Oracle为sftp使用的登录用户,若目录/home/[user]/.ssh/不存在,请先创建之。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/25495.html