- 13.《Bioinformatics Data Skills》之
- 28.《Bioinformatics-Data-Skills》之
- 18.《Bioinformatics-Data-Skills》之
- 19.《Bioinformatics-Data-Skills》之
- 【shell笔记>生信|专项】生信数据处理技能手札(3):
- Bioinformatics Data Skills
- 17.《Bioinformatics-Data-Skills》之
- 25.《Bioinformatics-Data-Skills》之
- 25.《Bioinformatics-Data-Skills》之
- 23.《Bioinformatics-Data-Skills》之
生物信息学的分析需要强大的计算能力,有时采用算力强大的服务器才能满足我们的需求。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和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/
网友评论