ssh浅谈
本文最后更新于 44 天前,其中的信息可能已经有所发展或是发生改变。

前面看到#340日报的如下内容:

img

就我个人来说,ssh进省队对我的意义,不能不说非常重大。 那么, 要想清楚,ssh进省队,到底是一种怎么样的存在。 吉姆·罗恩曾经说过,要么你主宰生活,要么你被生活主宰。带着这句话,我们还要更加慎重的审视这个问题: 莎士比亚曾经说过,本来无望的事,大胆尝试,往往能成功。这不禁令我深思。 这种事实对本人来说意义重大,相信对这个世界也是有一定意义的。 生活中,若ssh进省队出现了,我们就不得不考虑它出现了的事实。 对我个人而言,ssh进省队不仅仅是一个重大的事件,还可能会改变我的人生。 ssh进省队因何而发生? 所谓ssh进省队,关键是ssh进省队需要如何写。

所以,我想出一篇关于ssh的真实介绍。

upd: 不要再提#340的事情了!!1

ssh的定义

SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。(reference1:ssh (安全外壳协议))

如何使用ssh

像#340中所述的NOI Linux是自带ssh的(准确来说,所有的POSIX系统都自带有ssh)

这里用我的Mac进行示范:

登陆远程机

首先,打开terminal(即:终端)

如果您不知道ssh是如何使用的,请在terminal内输入man ssh,自己去读英语,那么他的命令行格式是:

ssh 用户名@主机IP

假如我要远程登录IP为149.28.32.10,用户名为root时,就应该输入

ssh root@149.28.32.10

像这样:

image-20210504235203977

您应当知道这个密码,输入后登陆完成。

image-20210504235320550

使用ssh

写代码

您可以先使用cd命令转换到您想使用的工作目录。

比如说,我这里使用./tmp作为目录,就是这样的:

image-20210504235623175

当然,使用cd /tmp也是可以的,能达到同样的效果。

结下来,如果您要进行文本编辑的话,推荐vim。

在界面中输入vim 1.cpp可以创建1.cpp并进行编辑。

image-20210505000132493

将您要编辑的文件输入完成后,输入:wq(write&quit)进行保存并关闭vim。

image-20210505000814364

对没错它还有自动语法高亮功能

退出后,进行编译运行:g++ 1.cpp -o 1 && ./1(因为博主的远程机过于低配,g++装不上去,所以后面的操作都在与之同理的macOS上运行。)

image-20210505001407315

这样的时候,您就可以输入您的输入数据了:

image-20210505001555810

输出不用我展示了吧(

传文件

这边建议使用ftp呢(

比如说,您要将本地的1.cpp传到149.28.32.10root用户的/tmp文件夹中,您应该这样:

image-20210505002011979

这样就是好了:

image-20210505002104345

注意

请勿在各种正式考试中使用ssh,如使用,后果本人概不负责。

ps:关闭ssh可以用如下命令(其实这个是删除ssh服务的,从根源解决)

sudo rm -f /etc/init/ssh.conf

或者:

service ssh stop

或者:

pkill sshd

bonus

其他Linux命令:

  1. cat cat命令是用来显示文件内容的。 用法:(假设要显示1.cpp
   [root@vultr ~]# cat 1.cpp
  1. sudo 严格来说,这不是个命令。 在任何命令前加sudo,那么这个命令就会被用最高权限运行。
  2. ls ls命令为英文单词 list 的缩写,正如英文单词 list 的意思,其功能是列出指定目录下的内容及其相关属性信息。(reference2:ls命令 – 显示指定工作目录下的内容及属性信息) 用法:
  3. 列出所有文件(包括隐藏文件): [root@vultr ~]# ls -a
  4. 列出所有文件(包括隐藏文件) + 所有文件的详细信息: [root@vultr ~]# ls -al
  5. rm rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。rm也是一个危险的命令,使用的时候要特别当心,尤其对于新手,否则整个系统就会毁在这个命令(比如在/(根目录)下执行rm * -rf(递归删除))。所以,我们在执行rm之前最好先确认一下在哪个目录,到底要删除什么东西,操作时保持高度清醒的头脑。(reference3:rm命令 – 移除文件或目录) 用法:
  6. 删除前逐一询问确认: [root@vultr ~]# rm -i test.txt.bz2 rm: remove regular file `test.txt.bz2'? 等同于: [root@vultr ~]# rm test.txt.bz2 rm: remove regular file `test.txt.bz2'?
  7. 直接删除,不会有任何提示: [root@vultr ~]# rm -f test.txt.bz2

last but not least:
彩蛋:
image-20210505005356749