1

我想编写一个脚本,在我运行脚本后通过我的 id(两层身份验证)连接到我的服务器。

ssh id@server->password

在此身份验证之后,再进行一次身份验证超级用户身份验证

username :

password :

我的操作系统是 MAC。

4

1 回答 1

0

把所有事情都做好,这样才能“正常工作”,这是一件很棘手的事情。记录最差的问题是对登录目录、.ssh 目录和 .ssh 目录中的文件的正确保护。这是我用来正确设置所有内容的脚本:

#!/bin/tcsh -x
#
# sshkeygen.sh
#

# make sure your login directory has the right permissions
chmod 755 ~

# make sure your .ssh dir exists and has the right permissions
mkdir -pv -m 700 ~/.ssh
chmod 0700 ~/.ssh

# remove any existing rsa/dsa keys
rm -f ~/.ssh/id_rsa* ~/.ssh/id_dsa*

# if your ssh keys don't exist
set keyname = "`whoami`_at_`hostname`-id_rsa"
echo "keyname: $keyname"

if( ! -e ~/.ssh/$keyname ) then
    # generate them
    ssh-keygen -b 1024 -t rsa -f ~/.ssh/$keyname -P ''
endif

cd ~/.ssh

# set the permissions
chmod 0700 *id_rsa
chmod 0644 *id_rsa.pub

# create symbolic links to them for the (default) id_rsa files
ln -sf $keyname     id_rsa
ln -sf $keyname.pub id_rsa.pub

我有另一个脚本将“ whoamiathostname -id_rsa.pub”文件复制到共享服务器(以管理员身份),然后将其合并到该系统的 .ssh/authorized_keys 文件中,然后将其复制回本地计算机。第一次运行这些脚本时,系统会提示用户输入共享服务器的管理员密码,但之后一切都会“正常工作”。

哦,它是“Mac”(不是“MAC”)。[\迂腐] ;-)

于 2012-11-08T17:27:29.093 回答