生物信息数据科学生信小白

13.《Bioinformatics Data Skills》之

2021-06-01  本文已影响0人  DataScience

生物信息学的分析需要强大的计算能力,有时采用算力强大的服务器才能满足我们的需求。ssh命令是最常用的远程登陆命令,而scp是常用的文件传输命令。下面我们介绍一下(1)如何使用ssh以及(2)如何配置ssh来快速登陆服务器。
环境(仅供参考,非真实IP)

本地IP:20.20.220.222(ubuntu)
远程IP:330.33.30.330(centos)

ssh使用

直接使用ssh+账户名@域名(或者IP地址)登陆,默认端口是22,非默认的端口使用-p参数设定:

ssh yongwudao2019@330.33.30.330
yongwudao2019@330.33.30.330's password:[输入密码]
Last login: Tue Jun  1 07:34:54 2021 from 20.20.220.222

每次输入账号与域名很麻烦,可以创建~/.ssh/config文件添加如下格式的内容:

Host myTeam
        HostName 330.33.30.330
        User yongwudao2019

下次登陆的时候可以直接使用ssh myTeam登陆

ssh myTeam
yongwudao2019@330.33.30.330's password:[输入密码]
Last login: Tue Jun  1 09:13:36 2021 from 20.20.220.222

不过这样登陆还是需要输入密码,如何能够不输入密码快输登陆呢?

ssh免密快速登陆

1. 本地创建身份认证密钥

ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/tecmint/.ssh/id_rsa): [Press enter key]
Created directory '/home/tecmint/.ssh'.
Enter passphrase (empty for no passphrase): [Press enter key]
Enter same passphrase again: [Press enter key]
Your identification has been saved in /home/tecmint/.ssh/id_rsa.
Your public key has been saved in /home/tecmint/.ssh/id_rsa.pub.
The key fingerprint is:
5f:ad:40:00:8a:d1:9b:99:b3:b0:f8:08:99:c3:ed:d3 tecmint@tecmint.com
The key's randomart image is:
+--[ RSA 2048]----+
|        ..oooE.++|
|         o. o.o  |
|          ..   . |
|         o  . . o|
|        S .  . + |
|       . .    . o|
|      . o o    ..|
|       + +       |
|        +.       |
+-----------------+

这里会在/home/way/.ssh目录下生成公开密钥id_rsa.pub文件与私人密钥id_rsa文件,公开密钥可以放在远程服务器上,私人密钥本地妥善保管,泄漏的话会有安全隐患。

2. 上传公开密钥至远程服务器

2.1. 在远程服务器创建.ssh文件夹

ssh yongwudao2019@330.33.30.330 mkdir -p .ssh
yongwudao2019@330.33.30.330's password:[输入密码]

2.2. 上传公开密钥至远程服务器

cat .ssh/id_rsa.pub | ssh yongwudao2019@330.33.30.330 'cat >> .ssh/authorized_keys'
yongwudao2019@330.33.30.330's password:[输入密码]

2.3. 设置远程文件权限

由于和远程服务器ssh版本不同,需要设置.ssh目录与authorized_keys使用权限:

ssh yongwudao2019@330.33.30.330 "chmod 700 .ssh; chmod 640 .ssh/authorized_keys"

3. 尝试使用免密登陆

ssh yongwudao2019@330.33.30.330
Last login: Tue Jun  1 09:16:26 2021 from 20.20.220.222

无需输入密码即可登陆,成功撒花ヾ(≧≦*)o。

PS:

  1. 综合1和2的内容登陆指令可以进一步简化为ssh myTeam。进一步,甚至可以在本地.bashrc文件里面定义alias sh="ssh yongwudao2019@330.33.30.330",这样只需要使用sh命令就可以极速登陆最常用的远程服务器。

参考内容:

【1】 https://www.tecmint.com/ssh-passwordless-login-using-ssh-keygen-in-5-easy-steps/

上一篇 下一篇

猜你喜欢

热点阅读