文章目录

  • 1. 关机/重启
  • 1.1 shutdown
  • 2. 查看或配置网卡信息
  • 2.1 ifconfig
  • 2.2 ping
  • 3. 远程登录和复制文件
  • 3.1 ssh 基础(重点)
  • 3.1.1域名和端口号的简单介绍
  • 3.1.2Windows 下 SSH 客户端的安装
  • 3.2 scp(掌握)
  • 3.3 Windows安装FileZilla及使用
  • 3.4SSH 高级(知道)
  • 3.4.1免密码登录(不常用)
  • 3.4.2配置别名


1. 关机/重启

1.1 shutdown

shutdown 命令可以安全关闭或者重新启动系统。

语法:shutdown 选项 时间

作用:关机/重新启动

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_linux


不指定选项和参数,默认表示 1 分钟之后 关闭电脑

加-r 表示重新启动

远程维护服务器时,最好不要关闭系统,而应该重新启动系统

常用命令示例:

# 重新启动操作系统,其中 now 表示现在
$ shutdown -r now

# 立刻关机,其中 now 表示现在
$ shutdown now

# 系统在今天的 10:20 会关机
$ shutdown 10:20

# 系统再过十分钟后自动关机
$ shutdown +10

# 取消之前指定的关机计划
$ shutdown -c

2. 查看或配置网卡信息

网卡是一个专门负责网络通讯的硬件设备
IP 地址是设置在网卡上的地址信息

IP 地址
每台联网的电脑上都有 IP 地址,是保证电脑之间正常通讯的重要设置
注意:每台电脑的 IP 地址不能相同,否则会出现 IP 地址冲突,并且没有办法正常通讯.。我们可以把 电脑比作电话,网卡相当于SIM 卡,IP 地址就 相当于电话号码。

2.1 ifconfig

ifconfig 可以查看/配置计算机当前的网卡配置信息

# 查看网卡配置信息
$ ifconfig

# 查看网卡对应的 IP 地址
$ ifconfig | grep inet

提示:一台计算机中有可能会有一个 物理网卡 和 多个虚拟网卡,在 Linux 中物理网卡的名字通常以 ensXX 表示.

127.0.0.1 被称为 本地回环/环回地址,一般用来测试本机网卡是否正常

2.2 ping

ping 一般用于检测当前计算机到目标计算机之间的网络是否通畅,数值越大,速度越慢。
原理:网络上的机器都有 唯一确定的 IP 地址,我们给目标 IP 地址发送一个数据包,对方就要返回一个数据包,根据返回的数据包以及时间,我们可以确定目标主机的存在。

# 检测到目标主机是否连接正常
$ ping IP地址

# 检测本地网卡工作正常
$ ping 127.0.0.1

127.0.0.1 被称为 本地回环/环回地址,一般用来测试本机网卡是否正常。

3. 远程登录和复制文件

3.1 ssh 基础(重点)

LinuxSSH 是 非常常用的工具,通过 SSH客户端我们可以连接到运行了 SSH 服务器的远程机器上。
SSH 客户端是一种使用 Secure Shell(SSH) 协议连接到远程计算机的软件程序SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。
利用 SSH 协议可以有效防止远程管理过程中的信息泄露,并且通过 SSH 协议 可以对所有传输的数据进行加密,也能够防止 DNS 欺骗和 IP 欺骗。
SSH 的另一项优点是传输的数据可以是经过压缩的,所以可以加快传输的速度。
注意:
ssh 这个终端命令只能在 Linux 或者 UNIX 系统下使用。
如果在 Windows 系统中,可以安装 Putty 或者 XShell 客户端软件即可

3.1.1域名和端口号的简单介绍

**域名:**由一串用点分隔的名字组成,例如:www.itcast.cn,是 IP 地址 的别名,方便用户记忆。

IP 地址:通过 IP 地址 找到网络上的计算机

端口号:通过 端口号 可以找到 计算机上运行的应用程序

SSH 服务器 的默认端口号是 22,如果是默认端口号,在连接的时候,可以省略。

常见服务端口号列表:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_Linux远程管理_02

提示:
在工作中,SSH 服务器的端口号很有可能不是 22,如果遇到这种情况就需要使用 -p 选项,指定正确的端口号,否则无法正常连接到服务器

3.1.2Windows 下 SSH 客户端的安装

Putty: http://www.chiark.greenend.org.uk/~sgtatham/putty/latest.htmlXShell: http://xshellcn.com 这两个任意下载一个就行了。
建议从官方网站下载正式的安装程序,为啥嘞?因为怕网上的被黑客更改了,有安全风险【我装的很懂得样子,其实是听老师说过,我总结下来大概就这意思】。
我安装的是XShell,不过不是从官网下载的,为啥嘞?我进去官网一看还要注册啥的才能下载,于是咱灵机一动就想着去软件商店找找xshell,这一找还真找到了:远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_IP_03
很快的就下载安装好了(官网下的xshell应该有说必须选择学生家庭那一栏的他们说必选,这个好像不用,我装上好像就能用了)
但完美装上了输入ubuntu正确的ip地址也没有连接上,于是我就找度娘缠绵了半天,终于找到一篇有用的博客:xshell连接ubuntu虚拟机(NAT模式),先别急着看哈,由于咱是刚接触Linux,ssh啥的也不知道,关于Linux的命令像apt-get啥的咱也不知道。所以跟着上面这位大佬就出了一次错误(大佬可能太辛苦了,忘了敲一个空格):

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_IP_04


远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_linux_05


为了百度这个错误差点没把我带跑偏,差点儿就yum…但咱用的不是CentOS的软件安装啊,用这个命令不是驴头不对马嘴吗?于是咱就推测出了上面那个命令可能有问题,尝试一番终于解决。

啥?我最后怎么发现的?唉,怪自己太聪明,灵机一动试出来的【暗中骄傲】。还是要感谢那个博主,因为他帮我省了很多时间(查xshell 连接不上ubuntu的原因,百度了好久也没找到对症的,有的时候,方向真的很重要,再次衷心感谢那些所有对咱有过帮助的人。)到下面这一步,算启动成功(那个6455?每个人的可能都不一样,我的好像是3开头的,这个不用死抠,只要?后面的一样就ok)。

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_IP_06


打开xshell

xshell—>文件—>新建会话:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_Linux远程管理_07


咱们要用windows的xshell客户端连接虚拟机的ubuntu系统,输入ubuntu的ip地址确定连接之后按提示输入ubuntu用户名,确定后再输入ubuntu的登陆密码,最后点击确定就可以连上了。

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_ssh_08

终于可以愉快地玩耍了,最后记住不用了输入exit回车退出连接哦。

3.2 scp(掌握)

scp 就是 secure copy,是一个在 Linux 下用来进行 远程拷贝文件的命令。注意注意:scp 这个终端命令只能在 Linux 或者 UNIX 系统下使用
如果在 Windows 系统中,可以安装 Putty,使用 pscp 命令行工具
或者安装 FileZilla 使用 FTP 进行文件传输(我装的FileZila,这个工具使用也非常简单方便,一会儿下面会讲)

scp的地址格式与 ssh 基本相同,需要注意的是,在指定端口时用的是大写的 -P 而不是小写的。

# 把本地当前目录下的 01.py 文件 复制到 远程 家目录下的 Desktop/01.py
# 注意:`:` 后面的路径如果不是绝对路径,则以用户的家目录作为参照路径
scp -P port 01.py user@remote:Desktop/01.py

# 把远程 家目录下的 Desktop/01.py 文件 复制到 本地当前目录下的 01.py
scp -P port user@remote:Desktop/01.py 01.py

# 加上 -r 选项可以传送文件夹
# 把当前目录下的 demo 文件夹 复制到 远程 家目录下的 Desktop
scp -r demo user@remote:Desktop

# 把远程 家目录下的 Desktop 复制到 当前目录下的 demo 文件夹
scp -r user@remote:Desktop demo

比如将虚拟机桌面上的01.py文件通过mac终端scp命令复制到mac电脑桌面上:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_IP_09

3.3 Windows安装FileZilla及使用

官方网站:https://www.filezilla.cn/download/client

嘿嘿,是不是又想到了用应用商店下载安装?打开应用商店搜索一下:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_Linux远程管理_10


确实能搜到,但是装的时候可能会出现问题,比如我:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_linux_11

直接就报了这个错误,我懒得找应对方法了,直接删了,去官网下载也很容易下载(上次下xshell去官网好像需要注册用户名啥的才能下载,所以才用的应用商店,这个filezila并不需要),进去官网:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_Linux远程管理_12


按自己的电脑情况选一个,我选的绿色版64位的(为啥?因为觉得它省事儿,下载后直接放到自己指定的目录下解压后就可以用了),很快就下载好了。

解压后是这样:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_filezilla_13


双击那个红色图标就可以用了:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_linux_14


当然,如果嫌每次找它比较麻烦,也可以选择那个filezila.exe右键创建快捷方式然后托到桌面上也可以的(我是这样干的)。

注意注意:FileZilla 在传输文件时,使用的是 FTP 服务 而不是 SSH 服务,因此端口号应该设置为 21

打开:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_linux_15


理论上我们把虚拟机的ip,用户名,密码及端口号21输入,再点击快速连接应该就可以连接上了。但是我试了,并没有成功:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_linux_16


哎呀,这是怎么回事?还能不能玩了?什么原因咱也不知道,说下我的解决办法:

1.选择文件,点击站点管理器

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_Linux远程管理_17

2.点击新站点,协议改成SFTP-SSH,如下图,输入主机号,(端口号不用输入)用户名,密码,再点击连接。

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_ssh_18


然后点击下图的确定就可以连上了,最好把下面那个总是信任该主机勾选了,它的作用应该是把密钥写入缓存,下次再打开就不用输入了。

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_Linux远程管理_19


一番折腾,总算连接成功:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_filezilla_20


试试效果:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_Linux远程管理_21


用法也很简单,选中左边上方指定的文件夹,然后在右边找到虚拟机里要复制的东西,鼠标拖动拉到右边松开鼠标就ok啦。按住shift键可以多选哦。

3.4SSH 高级(知道)

先友情提示:有关 SSH 配置信息都保存在用户家目录下的 .ssh 目录下

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_linux_22


这样下次再使用ssh连接这个主机时就不会有那个连接提示了(不用-p 22,直接就可以连):

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_ssh_23

3.4.1免密码登录(不常用)

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_linux_24


为什么不常用呢?因为两台主机配置过一次就有记录即再次连接就不需要输密码了。以后需要用到的时候可以再看(实际上也简单,就两行命令)步骤

1.配置公钥

执行 ssh-keygen 即可生成 SSH 钥匙,一路回车即可,如下图:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_filezilla_25


再ls一下,会发现.ssh目录下多了两个文件:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_IP_26


这两个文件就是在远程登陆时用来加密使用的文件,接下来要做的就是把ubuntu里.ssh目录下的那个id_rsa.pub文件传递到mac电脑用户家目录下.ssh目录中:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_linux_27


2.上传公钥到服务器

执行 ssh-copy-id -p port user@remote,可以让远程服务器记住我们的公钥:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_ssh_28


执行完之后就拷贝进mac电脑用户家目录下.ssh目录中了:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_IP_29


再在ubuntu里连接一下mac电脑,发现已经不需要输入登陆密码了(成功):

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_filezilla_30


再试一下使用scp命令,将ubuntu里桌面上的01.py文件复制到mac电脑的桌面上,也不需要再输入密码了:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_ssh_31


看着我写的比较多(还不是为了让自己和读者更容易理解?看懂的点赞!【疯狂暗示】),实际上也就两行命令就能搞定的事。小结一下:

原理示意图:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_IP_32

在密码学上叫非对称加密算法:
使用 公钥 加密的数据,需要使用 私钥 解密
使用 私钥 加密的数据,需要使用 公钥 解密

3.4.2配置别名

每次都输入 ssh -p port user@remote,时间久了会觉得很麻烦,特别是当 user, remote 和 port 都得输入,而且还不好记忆
而 配置别名 可以让我们进一步偷懒,譬如用:ssh mac (mac是你想起的名字,可以随意定义)来替代上面这么一长串,那么就在 ~/.ssh/config 里面追加以下内容:

Host mac

HostName ip地址

User 用户名

Port 22

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_ssh_33


远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_Linux远程管理_34


像这样ctrl+s保存之后,即可用 ssh myserver 实现远程登录了:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_ssh_35

scp 同样可以使用,比如把ubuntu桌面上的所有文件都复制到mac电脑桌面上的demo文件夹中:

远程linux服务器sudo reboot重启系统系统后还可以远程到服务器吗_Linux远程管理_36

这样是不是方便了很多?哈哈。

终于弄完了,不容易啊,这个博客写了好几天!

每一次撰写博客都是给自己加油。