二、Linux服务端远程管理指令基础
一、基本指令
1.关机
shutdown [选项] [时间]
缺省时,默认1min后将会关闭服务器,shutdow -c 可以取消此次操作
[选项]:
-r 重新启动
[时间]:
now 立刻执行
20:25 将在今天的20时25分执行
+10 将在10min后执行
2.查看网卡配置
网卡是一个专门负责网络通讯的硬件设备
IP地址—是设置在网卡上的地址信息(每台电脑的IP地址不能相同)
ifconfig
查看/配置计算机当前的网卡配置信息
ifconfig | grep inet
可以快速定位到各IP地址
ping < IP地址或域名 >
检测到目标IP地址的连接是否正常,ping不会自己停下,ctrl+c可以停止ping
若有:Destination Host Unreachable则表示ping失败
1.ifconfig:
其中:
inet addr:192.168.0.108为本机的IP地址
inet addr:127.0.0.1为本地环回地址,用于测试网卡是否正常工作
2.ifconfig | grep inet:
提示:一台计算机中可能会有一个物理网卡和多个虚拟网卡,在Linux中物理网卡的名字通常以ensXX表示(XX为两位数字)
二、SSH基础(重点)
在SSH端中:
- 数据传输是加密的,可以防止信息泄露
- 数据传输是压缩的,可以提高传输速度
相关概念:
(1)域名
- 由一串用点分隔的名字组成,例如:www.baidu.com
- 是IP地址的别名,方便用户记忆
(2)端口号
- IP地址:通过IP地址可以找到网络上的计算机
- 端口号:通过端口号可以找到计算机上运行的应用程序
- SSH服务器的默认端口号是22,如果是默认端口号,在连接的时候可以省略
- 常见服务端口号列表如下:
序号 | 服务 | 端口号 |
---|---|---|
1 | SSH服务器 | 22 |
2 | Web服务器 | 80 |
3 | HTTPS | 443 |
4 | FTP服务器 | 21 |
注:通常来说,在日常访问服务器中,用户先由IP地址找到服务器或计算机,再通过端口号找到服务器或计算机上安装的程序,用户才可以看到返回的结果
1.SSH客户端的简单使用:
ssh [-p port] user@remote
user 是在远程机器上的用户名,若不指定则为当前用户
remote 是远程机器的地址,可以是IP地址/域名,或者是(后面会提到)别名
port 是SSH Server监听的端口,若不指定则为默认值22
例:通过SSH连接IP地址为192.168.0.108的root用户
ssh -p 22 root@192.168.0.108
2.远程拷贝文件
scp [-P port] [-r] <要复制的文件> user@remote:filelocation
s为secure,scp 即为 secure copy
注:与ssh的IP地址格式不同的是,这里的-P为大写字母
filelocation 是要复制的文件放到远程端的路径+文件名
-r 加上-r可以拷贝文件夹
例:将/root/Desktop下的Hello文件复制到远程端的/Desktop下并命名为Hi
scp -P 22 /root/Desktop/Hello root@192.168.0.108:/Desktop/Hi
注:若filelocation路径不是绝对路径,则会以远程用户的家目录为参照路径
提示:由于scp指令只能在Linux或Unix系统下使用,因此在Windows系统中要进行文件的传输时需要用到FTP协议,需要下载FileZilla软件
三、SSH高级(只需配置一次)
1.免密码登录
(1)先输入如下指令(其中提示信息直接按回车跳过即可),将会在".ssh"隐藏目录中生成两个加密文件:id_rsa 和 id_rsa.pub 文件
ssh-keygen
即可生成加密文件
两个文件对应的作用如下图所示,即id_rsa.pub保存的是公钥,只要将其置于SSH服务器端的".ssh"隐藏文件中即可作为远程登录的公钥加密文件:
(2)将 id_rsa.pib 文件可通过如下指令传输到SSH服务器中:
ssh-copy-id user@remote
IP地址格式和ssh一致
执行改指令后,SSH服务器的".ssh"隐藏文件中将会增加一个authorized_keys文件,此后,SSH客户端的id_rsa 和SSH服务器的 authorized_keys相结合,即可实现免密登录
2.配置别名
每次输入指令时都需要输入[-p port] user@remote 这一长串内容极其不方便,因此我们可以通过配置别名的方式来代替这一长串内容,指令如下:
- 可以用 gedit 通过在 ~/.ssh/config 文件中追加以下内容即可配置别名
mac 为别名,不可包含空格
ip地址 输入IP地址即可
itheima 用户名
22 端口号
四、可以使用以下软件来进行远程服务端的连接:
PuTTY和Xshell,Windows10则可以利用powershell来建立连接
下面以PuTTY为例来进行讲解:
在下载并安装好PuTTY(PuTTY为免费软件,可通过官网下载)后,打开并输入相应信息:
输入完成后点击Open或按回车,就会出现以下界面:
输入相应的信息后即可完成连接
当需要退出终端窗口时,在PuTTY中输入如下指令即可:
exit
- 注意:在客户端中登录修改SSH服务器中的一些文件,可能需要exit退出后再重新登录后才能生效,因此需要特别注意这一点
*提示:若无法正常连接Ubuntu,则应在Ubuntu中检查:
- Ubuntu中是否安装了ssh-server,输入如下指令:
ssh localhost
若出现ssh: connect to host localhost port 22: Connection refused,则说明没有安装
- 手动安装ssh-server,输入如下指令:
sudo apt-get install openssh-server
- 检测SSH服务是否启用,输入如下指令:
ps -e | grep ssh
如出现类似如下对话,则说明SSH服务正常启用,可以进行连接