1. 如何生成SSH key
1、首先,使用两个git config ...命令设置用户名和电子邮件地址,然后使用ssh-keygen命令生成一对rsa密钥。
2. 如何配置ssh使用密钥登录,禁止口令登录
1、配置私钥
a、使用命令ssh-keygen -t
rsa生成密钥,会生成一个私钥和一个公钥,在提示输入passphrase时如果不输入,直接回车,那么以后你登录服务器就不会验证密码,否则会要求你输入passphrase,默认会将私钥放在/root/.ssh/id_rsa公钥放在
/root/.ssh/id_rsa.pub。
b、将公钥拷贝到远程服务器上的/root/.ssh/authorized_keys文件
(scp /root/.ssh/id_rsa.pub server:/root/.ssh/authorized_keys),注意,文件名一定要叫authorized_keys。
c、客户端上保留私钥,公钥留不留都可以。也就是服务器上要有公钥,客户端上要有私钥。这样就可以实现无密码验证登录了。
2、如果想要获得最大化的安全性,禁止口令登录,可以修改www.example.com上/etc/ssh/sshd_conf中的
PasswordAuthentication yes 改为
PasswordAuthentication no
也即只能使用密匙认证的openssh,禁止使用口令认证。
3. ubuntu13.10下如何安装ssh-keygen命令
ubuntu默认并没有安装ssh服务,如果通过ssh链接ubuntu,需要自己手动安装ssh-server。判断是否安装ssh服务,可以通过如下命令进行:
xjj@xjj-desktop:~$ ssh localhost
ssh: connect to host localhost port 22: Connection refused
如上所示,表示没有还没有安装,可以通过apt安装,命令如下:
-desktop:~$ sudo apt-get install openssh-server
xjj@xjj-desktop:~$ sudo apt-get install openssh-server
系统将自动进行安装,安装完成以后,先启动服务:
@xjj-desktop:~$ sudo /etc/init.d/ssh start
xjj@xjj-desktop:~$ sudo /etc/init.d/ssh start
启动后,可以通过如下命令查看服务是否正确启动
@xjj-desktop:~$ ps -e|grep ssh
6212 ? 00:00:00 sshd
xjj@xjj-desktop:~$ ps -e|grep ssh 6212 ? 00:00:00 sshd
如上表示启动ok。注意,ssh默认的端口是22,可以更改端口,更改后先stop,
然后start就可以了。改配置在/etc/ssh/sshd_config下,如下所示。
xjj@xjj-desktop:~$ vi /etc/ssh/sshd_config
# Package generated configuration file
# See the sshd(8) manpage for details
# What ports, IPs and protocols we listen for
Port 22
# Package generated configuration file
# See the sshd(8) manpage for details
# What ports, IPs and protocols we listen for
Port 22
最后,应该是连接的时候了。请看如下命令:
xjj@xjj-desktop:~$ ssh exceljava@192.168.158.129
xjj@xjj-desktop:~$ vi /etc/ssh/sshd_config
4. windows怎么开ssh服务
1、首先运行OpenSSH的安装程序 点击窗口下一步 。
5. 如何在linux中如何配置ssh免密码登录
首先需要在服务器端设置/etc/ssh/sshd_config
# vim /etc/ssh/sshd_config
修改如下两行为yes。其实大多数情况下不用修改,默认就是yes。
RSAAuthentication yes
PubkeyAuthentication yes
(1) 如果客户机和服务器都是Linux机器,那么我们使用下面的方法:(后面第2节会提到怎么在Windows下使用Putty生成密钥对)
我们需要在客户端生成RSA密钥对。使用ssh-keygen命令:
# ssh-keygen -t rsa
参数t的意思是type,后面跟着加密类型,这里我们是rsa。
然后会提示你输入密钥保存完成文件名,这里我们需要使用默认的id_rsa,之后才能正常才能登录。如果你生成的密钥作为其他用处,那么可以命名为其他名称:
Generating public/private rsa key pair.
Enter file in which to save the key (/home/cake/.ssh/id_rsa):
之后会提示你输入一个passphrase,我们这里可以留空,这样我们登录的时候就不许输入密码。
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
然后会提示你密钥生成成功。这是你的私钥保存为~/.ssh/id_rsa,你的公钥是~/.ssh/id_rsa.pub
我们现在需要做的是,把id_rsa.pub的内容,添加的服务器端的~/.ssh/autherized_keys文件最后。
你可以把这个文件上传到服务器端,然后使用命令:
# cat id_rsa.pub >> ~/.ssh/autherized_keys
到这里就完成了。
(2) 在Windows下使用Putty生成密钥对:
Putty的安装目录下有个puttygen.exe程序,我们运行这个程序。
之后点击Generate,开始生成密钥对。我们需要根据提示,在指定方框内随机滑动鼠标。这是为了根据鼠标轨迹,产生一些随机数据。
之后生成结束,我们点击Save Private Key将私钥存放在某个目录中。然后赋值最上面文本框中的全部内容,粘贴到Linux服务器端的autherized_key的最后。
我们现在可以关闭这个小程序。
现在打开Putty,在左边的选项中,选择Conneciton–SSH–Auth,在Private key file for authentication中,选择刚才保存的私钥路径就可以了。
到此位置,Putty也可以不用密码登录了。
6. 如何配置ssh免密码登录
一、实现原理 使用一种被称为"公私钥"认证的方式来进行ssh登录。"公私钥"认证方式简单的解释是: 首先在客户端上创建一对公私钥(公钥文件:~/.ssh/id_rsa.pub;私钥文件:~/.ssh/id_rsa),然后把公钥放到服务器上(~/.ssh/authorized_keys),自己保留好私钥。当ssh登录时,ssh程序会发送私钥去和服务器上的公钥做匹配。如果匹配成功就可以登录了。 二、实验环境 A机:TS-DEV/10.0.0.163 B机:CS-DEV/10.0.0.188 三、Linux/Unix双机建立信任 3.1 在A机生成证书 在A机root用户下执行ssh-keygen命令,在需要输入的地方,直接回车,生成建立安全信任关系的证书。 # ssh-keygen -t rsa 注意:在程序提示输入passphrase时直接输入回车,表示无证书密码。 上述命令将生成私钥证书id_rsa和公钥证书id_rsa.pub,存放在用户家目录的.ssh子目录中。 3.2 查看~/.ssh生成密钥的文件 # cd ~/.ssh # ll 3.3 A对B建立信任关系 将公钥证书id_rsa.pub复制到机器B的root家目录的.ssh子目录中,同时将文件名更换为authorized_keys,此时需要输入B机的root用户密码(还未建立信任关系)。建立了客户端到服务器端的信任关系后,客户端就可以不用再输入密码,就可以从服务器端拷贝数据了。 # scp -r id_rsa.pub 10.0.0.188:/root/.ssh/authorized_keys 3.4 B对A建立信任关系 在B机上执行同样的操作,建立B对A的信任关系。 # ssh-keygen -t rsa # cd ~/.ssh/ # ll # scp -r id_rsa.pub 10.0.0.163:/root/.ssh/authorized_keys 如果想让B,C同时可以scp不输入密码,传输A中的数据; 则要把B、C的公钥都给 A; 操作步骤:把两机器的id_rsa.pub中的数据都拷贝到A的/root/.ssh/authorized_keys文件中,一行表示一条; A: scp -r id_rsa.pub 10.0.0.163:/root/.ssh/authorized_keys B: scp -r id_rsa.pub 10.0.0.188:/root/.ssh/authorized_keys 测试 ssh [email protected] 'hostname' /// ssh [email protected] 'hostname' 如果连接反应慢,请修改以下两参数 /etc/ssh/sshd_config GSSAPIAuthentication no UseDNS no 然后重启service sshd restart
7. linux ssh怎么免密登录
你好,
首先需要在服务器端设置/etc/ssh/sshd_config
# vim /etc/ssh/sshd_config
修改如下两行为yes。其实大多数情况下不用修改,默认就是yes。
RSAAuthentication yes
PubkeyAuthentication yes
(1) 如果客户机和服务器都是Linux机器,那么我们使用下面的方法:(后面第2节会提到怎么在Windows下使用Putty生成密钥对)
我们需要在客户端生成RSA密钥对。使用ssh-keygen命令:
# ssh-keygen -t rsa
参数t的意思是type,后面跟着加密类型,这里我们是rsa。
然后会提示你输入密钥保存完成文件名,这里我们需要使用默认的id_rsa,之后才能正常才能登录。如果你生成的密钥作为其他用处,那么可以命名为其他名称:
Generating public/private rsa key pair.
Enter file in which to save the key (/home/cake/.ssh/id_rsa):
之后会提示你输入一个passphrase,我们这里可以留空,这样我们登录的时候就不许输入密码。
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
然后会提示你密钥生成成功。这是你的私钥保存为~/.ssh/id_rsa,你的公钥是~/.ssh/id_rsa.pub
我们现在需要做的是,把id_rsa.pub的内容,添加的服务器端的~/.ssh/autherized_keys文件最后。
你可以把这个文件上传到服务器端,然后使用命令:
# cat id_rsa.pub >> ~/.ssh/autherized_keys
到这里就完成了。
(2) 在Windows下使用Putty生成密钥对:
Putty的安装目录下有个puttygen.exe程序,我们运行这个程序。
之后点击Generate,开始生成密钥对。我们需要根据提示,在指定方框内随机滑动鼠标。这是为了根据鼠标轨迹,产生一些随机数据。
之后生成结束,我们点击Save Private Key将私钥存放在某个目录中。然后赋值最上面文本框中的全部内容,粘贴到Linux服务器端的autherized_key的最后。
我们现在可以关闭这个小程序。
现在打开Putty,在左边的选项中,选择Conneciton–SSH–Auth,在Private key file for authentication中,选择刚才保存的私钥路径就可以了。
到此位置,Putty也可以不用密码登录了。
8. 请简述SSH秘钥对登录过程和NFS如何使用
步骤一:使用ssh-keygen -t rsa 命令创建秘钥对,分别为:id_rsa(私钥文件)和id_rsa.pub(公钥文件),密钥对保存在(/root/.ssh/)中,可以使用(cd .ssh/ , ll )查看;
步骤二:执行scp id_rsa.pub [email protected]:/root (根据自己的主机地址写,这里的ip地址为SSH服务器的IP)命令,将公钥上传到服务端的/root/目录下;
步骤三:把公钥放到某一个用户的authorized_keys中,放到哪个用户下就可以让哪个用户登录。本例中放在root用户下,如果root用户下没有.ssh目录,就创建一个。具体指令如下:
mkdir .ssh //创建目录
cat id_rsa.pub //读一下公钥内容
cat id_rsa.pub 》 .sh/authorized_keys //把公钥文件内容追加到authorized_keys中
这样做的目的有利于多个客户端登录,如果单纯把id_rsa.pub改名为authorized_keys放到.ssh中,就只能允许一个客户端登录(服务器一般都是多用户进行管理);到这里基本上SSH密钥对登录就配置完成了,但是为了安全起见,一般还要进行一下的配置
步骤四:由于Linux中有一个强制安全的增强组件SELinux服务,而root创建的authorized_keys的权限默认为644(rw_r__r__),SELinux会认为它不安全强制用户把权限修改为600(rw_______)。
步骤五:SELinux对Linux系统影响太大,对于初学者不太适合,所以可以把它关掉。具体方法如下:
vi /etc/selinux/config //进入selinux的配置文件,把默认的‘SELinux=enforcing’ 修改为‘SELinux=disabled’,然后重启Linux系统。
步骤六:修改服务器端SSH配置文件:
vi /etc/ssh/sshd_config
RSAAuthentication yes 把这行前面的注释号(‘#’)去掉,表示打开RSA验证
PubkeyAuthentication yes 同样把这行的注释号去掉,表示公钥验证打开。
Authorizedkeysfile .ssh/authorized_keys 去掉注释号,允许使用公钥验证文件的保存位置。
passwordAuthentication no(默认为yes) 进制使用密码验证登录(可选)
service sshd restart // 重启ssh服务
9. 如何使用ssh-keygen生成key
具体步骤如下。
生成public/private rsa key pair
在命令行中输入ssh-keygen -t rsa -C "[email protected]"。默认会在相应路径下(/your_home_path)生成id_rsa和id_rsa.pub两个文件,如下面代码所示。