百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

基础到实战一飞冲天(一)--linux基础(六)

nanshan 2024-11-19 07:45 14 浏览 0 评论

# 06_ Python基础到实战一飞冲天(一)--linux基础(六)--putty-xshell-scp-filezilla-ssh-免密登录-配置别名

## 一、远程管理命令-10-PuTTY的安装和exit退出登录

### 1、 Windows 下 SSH 客户端的安装

1) `Putty` 下载安装地址:http://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

2) `XShell` 下载安装地址:http://xshellcn.com

3)强烈建议从官方网站下载正式的安装程序,其他渠道下载的软件,有可能被黑客修改过。

### 2、Putty 客户端,远程登录测试

## 二、远程管理命令-11-XShell的安装-免费和设置语言

### 1、XShell 下载安装

1)强烈建议 `XShell` 官方网站下载安装包:http://xshellcn.com

2)双击打开安装包:Xshell-7.0.0137.exe 点击【下一步】。

3)点击【浏览】,选择安装位置,点击【下一步】,一路默认,点击【完成】完成安装。

### 2、用 XShell 测试远程连接

1)打开 XShell-7 点击【文件】---》【新建】。

2)输入虚拟主机 IP 地址,协议:默认SSH ,端口:默认 22 ,点击【连接】。

3)输入登录用户名,勾选【记住用户名】,点击【确定】。

4)输入用户密码,勾选【记住密码】,点击【确定】,登录成功。

## 三、远程管理命令-12-scp作用以及命令格式

### 1、 `scp` 命令(掌握)

1) scp 就是 `secure copy`,是一个在 Linux 下用来进行 **远程拷贝文件** 的命令。

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

### 2、scp 命令格式

```bash

# 把本地当前目录下的 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

```

## 四、远程管理命令-13-scp在Mac终端中的演示

### 1、scp 命令参数

选项

含义

-r

若给出的源文件是目录文件,则 scp 将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名

-P

若远程 SSH 服务器的端口不是 22,需要使用大写字母 -P 选项指定端口


### 2、注意:

1) `scp` 这个终端命令只能在 `Linux` 或者 `UNIX` 系统下使用。

2)如果在 `Windows` 系统中,可以安装 `PuTTY`,使用 `pscp` 命令行工具或者安装 `FileZilla` 使用 `FTP` 进行文件传输。

### 3、scp 命令在 mac苹果电脑终端中的演示

## 五、远程管理命令-14-FileZilla在Windows下文件传输

### 1、 `FileZilla` 文件上传下载软件。

FileZilla 客户端是一个快速可靠的、跨平台的FTP,FTPS和SFTP客户端。具有图形用户界面(GUI)和很多有用的特性。

### 2、`FileZilla` 软件下载安装

1)官方网站下载:https://www.filezilla.cn/download/client

### 3、`FileZilla` 连接虚拟机,进行文件上传、下载测试。

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

2)确定你的 ubuntu 系统,是否已经安装了 vsftpd 服务。

```bash

#查看vsftpd服务状态

systemctl status vsftpd

#如果没有安装vsftpd服务,先安装vsftpd 服务。

apt install vsftpd

```

3)在 你的 ubuntu系统中,已经启动 vsftpd 服务

```bash

#如果vsftpd服务没有启动,先启动vsftpd 服务。

systemctl start vsftpd

```

4)查看你的防火墙是否对 21 端口放行,或者关闭防火墙。

ubuntu 系统中,可以使用 ufw ( Uncomplicated Firewall ) 来管理防火墙。

```bash

#激活防火墙

sudo ufw enable

#查看防火墙状态

sudo ufw status

#让防火墙对21端口放行

sudo ufw allow 21/tcp

#禁用防火墙

sudo ufw disable

```

## 六、SSH高级-01-确定目标/认识 .ssh目录

### 1、 SSH 高级应用(知道)

1) 免密码登录

2) 配置别名

> 提示:有关 SSH 配置信息都保存在用户家目录下的 `.ssh` 目录下。

### 2、认识 虚拟机下ubuntu系统,用户(如:python)家目录下的 `.ssh` 目录

```bash

cd ~

ls -ahl

cd .ssh

ls -ahl

#ssh -p 22 主机名@IP地址(如:mac苹果电脑的主机名是ubuntu ,IP地址是:192.168.6.130)

ssh -p 22 ubuntu@192.168.6.130

```

## 七、SSH高级-02-免密码登录设置步骤

### 1、在 ubuntu 系统,通过 ssh免密码登录到 mac苹果电脑终端。

1) 配置公钥

* 执行 `ssh-keygen` 即可生成 SSH 钥匙,一路回车即可。

如:cd ~

cd .ssh

ssh-keygen

一路回车即可。

2)上传公钥到服务器(把公钥传到 mac 苹果电脑)

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


如下:


```bash

python@ubuntu:~/.ssh$ ls

id_rsa id_rsa.pub known_hosts

python@ubuntu:~/.ssh$ ssh-copy-id itheima@172.16.140.1

python@ubuntu:~/.ssh$ cat id_rsa.pub

```

### 2、配置好后,在 ubuntu 系统,通过 ssh免密码登录到 mac苹果电脑终端 演示

```bash

python@ubuntu:~/.ssh$ ssh-copy-id itheima@172.16.140.1

```

## 八、SSH高级-03-免密码登录工作原理

### 1、免密登录工作原理:示意图

### 2、什么是非对称加密算法

> * 使用 **公钥** 加密的数据,需要使用 **私钥** 解密。

> * 使用 **私钥** 加密的数据,需要使用 **公钥** 解密。

## 九、SSH高级-04-配置远程计算机的别名

### 1、配置别名

1) 每次都输入 `ssh -p port user@remote`,时间久了会觉得很麻烦,特别是当 `user`, `remote` 和 `port` 都得输入,而且还不好记忆。

2)而 **配置别名** 可以让我们进一步偷懒,譬如用:`ssh mac` 来替代上面这么一长串,那么就在 `~/.ssh/config` 里面追加以下内容:

```bash

Host mac

HostName ip地址

User itheima

Port 22

```

3)**保存之后,即可用 `ssh mac` 实现远程登录了,`scp` 同样可以使用**

### 2、配置别名 示例:

```bash

#查看python用户家目录下的 .ssh 隐藏目录

python@ubuntu:~/.ssh$ ls

id_rsa id_rsa.pub known_hosts

#创建配置别名的配置文件

python@ubuntu:~/.ssh$ touch config

#再次查看python用户家目录下的 .ssh 隐藏目录

python@ubuntu:~/.ssh$ ls

config id_rsa id_rsa.pub known_hosts

#打开并编辑config 配置文件

python@ubuntu:~/.ssh$ gedit config

#输入以下内容:

Host myserver

HostName 172.16.140.1

User itheima

Part 22

#按 Ctrl + s 保存退出。

```

### 3、使用别名,在 ubuntu 系统上登录到 mac 苹果电脑的 itheima用户家目录,

```bash

python@ubuntu:~/.ssh$ ssh myserver

```

### 4、使用别名,把 ubuntu 系统上的 python 用户家目录的桌面文件夹,使用 scp 全部复制到 mac 苹果电脑上桌面的 demo 文件夹。

```bash

python@ubuntu:~/.ssh$ scp -r ~/Desktop myserver:Desktop/demo

```

## 十、用户权限-01-学习目标

### 1、用户权限相关命令:

read, write, excute,

chmod, chown, su, sudo,

groupadd, groupdel, cat /etc/group, chgrp -R,

useradd, adduser, passwd, userdel

### 2、目标

1) **用户** 和 **权限** 的基本概念

2)**用户管理** 终端命令

3) **组管理** 终端命令

4) **修改权限** 终端命令

上一节关联链接请点击:

Python基础到实战一飞冲天(一)--linux基础(五)

相关推荐

Centos7虚拟机安装及网络配置(二)

#二、centos7的网络配置-Nat模式NAT模式也是VMware创建虚拟机的默认网络连接模式。使用NAT模式网络连接时,VMware会在主机上建立单独的专用网络,用以在主机和虚拟机之间相互通信。虚...

网络分析shell脚本(实时流量+连接统计)

介绍一个强大的分析网络的shell脚本,此脚本是从EZHTTP拆分出来的,觉得有必要单独介绍下。脚本运行效果截图:此脚本包含的功能有:1、实时监控任意网卡的流量2、统计10秒内平均流量3、统计每个端口...

Centos之Could not retrieve mirrorlist解决方案

Centos之Couldnotretrievemirrorlist解决方案:vi/etc/sysconfig/network-scripts/ifcfg-你的网卡名字修改:ONBOOT=ye...

一文掌握!VirtualBox 中 Rock9.x(Linux)网络配置全攻略

一、前言记得我有一篇文章《必看!VirtualBox中Centos7(Linux)网络配置全攻略》讲的非常明细,但是因为CentOS已经停止维护了,可能很多人都不想继续学CentOS,我也是一样,...

CentOS 6.0 设置IP地址、网关、DNS

在做任何操作之前先备份原文件,我们约定备份文件的名称为:源文件名称+bak,例如原文件名称为:centos.txt那么备份文件名称为:centos.txtbak引言:linux的网卡IP地址是存放在文...

Linux CentOS 基础操作(centos怎么操作)

简介:养成学习Linux的好习惯,第一是多查看manpage(manual)等帮助文档和利用好Tab键;第二是掌握好一些快捷键,比如ctrl+c(停止当前进程),ctrl+r(查看命令历史)...

Linux抓包王者技能!这条命令直接封神,教你精准定位网络问题

在网络故障排查和性能调优中,抓包是一项必不可少的技能。对于Linux环境下的网络工程师和运维人员来说,掌握高效抓包方法至关重要。而要说“抓包界的王炸”,那非tcpdump莫属!今天,我们不仅要介绍...

「干货」如何在 Linux 上划分VLAN?

在某些场景中,我们希望在Linux服务器(CentOS/RHEL)上的同一网卡分配来自不同VLAN的多个ip。这可以通过启用VLAN标记接口来实现,但要实现这一点,首先必须确保交换机上添加多个vl...

CentOS 8 网络配置实战教程:静态IP、路由与DNS设置

一、配置前准备1.查看当前网络信息#查看所有网络接口nmclidevicestatus#查看指定网卡信息(假设网卡名为ens192)ipaddrshowens192#查看路由...

Debian10.7修改网络配置(debian怎么配置网络)

简介:关于Debian获取IP地址的方法主要有两种,动态获取和静态设置。在配置网络之前先要知道Debian的网卡名称是什么,Debian可通过命令#ipa查看网卡名称。本文主要通过介绍Debian...

巧用SSH转发功能深入穿透内网(ssh转发udp)

ssh能够提供客户端到服务端的加密传输,当http、ftp等协议被防火墙所拦截时,可以考虑使用SSH的端口转发功能,将其它TCP端口的网络数据通过SSH连接来转发。转发方式一共有三种,分别是:动态转发...

CentOS Linux 7 的IP地址配置(centos7.4配置ip地址)

前段时间有位朋友,在一台PC机上安装了CentOSLinux7系统,因为要接入局域网,需要配置IP地址和默认网关信息。于是参照一本Linux教程上编辑网卡配置信息的方法,输入:vim/etc/s...

教你如何在 Linux 上划分VLAN(linux怎么分区详解)

在某些场景中,我们希望在Linux服务器(CentOS/RHEL)上的同一网卡分配来自不同VLAN的多个ip。这可以通过启用VLAN标记接口来实现,但要实现这一点,首先必须确保交换机上添加多个vl...

打通数据高速公路:如何在 CentOS 上使用 Thunderbolt 3 和 4

Thunderbolt3与4是现代高速外设连接的代表,带来了40Gbps的惊人带宽,支持数据、视频、音频与供电的“四合一”功能,尤其在专业视频编辑、科研计算、虚拟化扩展等领域具有巨大价值...

VMware 虚拟机 CentOS7 桥接模式静态 IP 配置全攻略

虚拟机桥接模式原理配置成桥接网络连接模式的虚拟机就当作主机所在以太网的一部分,虚拟系统和宿主机器的关系,就像连接在同一个Hub上的两台电脑,可以像主机一样可以访问以太网中的所有共享资源和网络连接,可以...

取消回复欢迎 发表评论: