我正在尝试在 netapp 实例上加载我的 ssh 公钥,但它似乎不允许我添加我的密钥。
lcy2-dosvm01::security login publickey> load-from-uri -uri http://pastebin.com/raw.phpi=mgB0Vq3x -username sorins
Error: command failed: invalid operation
lcy2-dosvm01::security login publickey> load-from-uri -uri http://pastebin.com/raw.phpi=mgB0Vq3x -username domain\sorins
Error: command failed: entry doesn't exist
第二次尝试
lcy2-dosvm01::security login publickey> load-from-uri -uri http://pastebin.com/raw.phpi=mgB0Vq3x -username domain\\sorins
Error: command failed: invalid operation
第三次尝试
lcy2-dosvm01::security login publickey> security login publickey> create -username citrite\sorins -index 0 -publickey "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCfoZsNvyBlZJYuLSz+qw4xunkjETo6NElkYw5dCEFl6W5JDVZRjN3ClVHKDzEa2+S9jGzdRC3nlWA5vVRIvH/tX5tT+rLxkr6rgEiSajvwq5fpmla53cFX9W/y6qhL8tz//1Q3BskJS/NUPy8oUdRk7bcSrLyLJaDJxmf1HEE7k3TJ7+9sCEqBWnpQpFWUrTdaPQZISSy172P+beWVCuZQ69mowJ1/6h7czcd+HoZwe3v6qpkjbCmx9FTCYWuua2n7BcMzB5Hh5y4ovNab9zBKoUviOdBpC3ut159WVgQmpnOHPem0whNTxhADEcEcl6HfMi/MqZi6gmjx2ZkaiJpnHL0y1M/4qaEQemsgvEeFZDdJDdG1x42rw5e5vzh4OHAhGEKfA8NCcIWyd9wgusJoatyS/KKybmZ0Q0YOOB5AhDknaClRueBHkvg3vLB6sE47RlFgXTwZrS9N1pl89/4xX6dcnugTPxLm+BqqeUaDKeV81PEao4RVOxuvnTPVKjJhaWuvfmp65ZFQlQYiGWQ7latPEMaYLYwlvgTKBayPwZJJkEGRMjlY/6qWGQWkKzjhgRlgLwHcwLj3GPbxX4vmIsgqBI06NngETWztR71hU/CUz+ZGKQsZjhxqXZkueeW2iLFtGPggGawKgEbhx0eRHBnxrKzPuYDD8BF3q8o71w== Sorin Sbarnea 20150723"
Error: "publickey>" is not a recognized command
我需要说明一下,我用来登录的用户名是domain\\sorins
因为这是一个 AD 帐户。bash 需要双反斜杠,但我尝试了各种选项,似乎 NetApp 给出了一个无用的错误,例如“无效操作”。
答案1
从手册中用户帐户的身份验证方法,看起来域和公钥是两种不同的身份验证方法。我找不到有关如何同时使用它们的任何信息。authmethod
据我所知,每个登录方法只有一个参数,因此如果您的登录方法是 ssh,您的身份验证方法可以是域或公钥。另请参阅手册页security login create
。
答案2
最近不得不这样做。注意 - 这是针对 7 模式的,我不确定它是否适用于 CDOT。但我发布它是因为我们确实获得了与域用户帐户一起使用的 ssh 公钥。
有一种方法,但有点糟糕——你看,你做需要有一个与你的域名匹配的 'ssh' 目录 - 这意味着你做需要一个带有反斜杠的目录名!
- 生成密钥对
ssh-keygen -t dsa
(可能需要 rsa - 但旧版本的 filer 如 dsa 更好) - 复制
id_dsa.pub
到文件“vol0”下/etc/sshd/<username>/ssh/authorized_keys
- 通过以下方式登录文件管理器
ssh
- 重命名目录:
mv /etc/sshd/username/ssh /etc/sshd/username/.ssh
mv /etc/sshd/username /etc/sshd/DOMAIN\username
- 它看起来像 Windows 中的“旧式”文件名,例如
DOMAIN~1
然后,你应该能够将 ssh 上的默认登录名设置为DOMAIN\username
我认为这对 CDOT 有用,但可能需要一定程度的黑客技术才能到达正确的地方。(恐怕我不能肯定地说 - 我没有运行 CDOT - 但发布此信息以防它相关/有用)。
答案3
这是我使用 8.3 时得到的结果:
首先,您必须为已创建的用户添加公钥身份验证作为身份验证方法:
Cluster::> security login create -vserver <vserver> -user-or-group-name <username> -application ssh -authmethod publickey
然后你可以创建公钥:
Cluster::> security login publickey create -vserver <vserver> -username <username> -index 0 -publickey "ssh-rsa MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe4eCZ0FPqri0cb2JZfXJ/DgYSF6vUpwmJG8wVQZKjeGcjDOL5UlsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ51s1SPrCBkedbNf0Tp0GbMJDyR4e9T04ZZwIDAQAB username@examplehost"
根据您的描述,您似乎需要首先创建身份验证方法。