大家好,又见面了,我是你们的朋友全栈君。
什么是SSH?
简单说,SSH是一种网络协议(安全外壳协议),用于计算机之间的加密登录。如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。
SSH之所以能够保证安全,原因在于它采用了公钥加密。 整个过程是这样的: (1)远程主机收到用户的登录请求,把自己的公钥发给用户(2)用户使用这个公钥,将登录密码加密后,发送回来。 (3)远程主机用自己的私钥,解密登录密码,如果密码正确,就同意用户登录。
SSH基本用法
1. SSH远程登陆
口令登录
- 假定你要以用户名user,登录远程主机host,只要一条简单命令就可以了。 $ ssh user@host 如:ssh pika@192.168.0.111
- 如果本地用户名与远程用户名一致,登录时可以省略用户名。 $ ssh host
- SSH的默认端口是22,也就是说,你的登录请求会送进远程主机的22端口。使用p参数,可以修改这个端口。 ssh -p 2222 user@host 或 ssh user@host -p 2222 上面这条命令表示,ssh直接连接远程主机的2222端口。
公钥登录
略。。。
2. 使用ssh在远程后台不中断地跑程序
Linux关闭ssh(关闭终端等)后运行的程序或者服务自动停止,如python3 a.py &。
解决:使用nohup命令让程序在关闭窗口(切换SSH连接)的时候程序还能继续在后台运行。
nohup python3 a.py &
nohup
nohup sh create.sh > create.out &
ERROR:nohup: ignoring input and redirecting stderr to stdout
解决方法:nohup sh create.sh > create.out 2>&1 & 用途:不挂断地运行命令。 语法:nohup Command [ Arg … ] [ & ]
无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup.out 文件中。
上述是自己用到的用法,更多用法见https://blog.csdn.net/u013452337/article/details/80847113
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/152642.html原文链接:https://javaforall.cn