Linux笔记--远程访问(Telnet,ssh,xrdp,vnc)

2023-05-16

实验环境Centos7 + WIn11 + VMware16

使用前建议关闭防火墙等

setenforce 0
systemctl stop firewalld.service

一般的远程访问步骤:
(1)选定某一种远程访问协议,如Telnet,ssh,xrdp,vnc等;
(2)分别安装对应协议的“服务端软件”和“客户端软件”;
(3)在服务端启动对应的服务,并进行一些自定义的服务配置;
(4)通过客户端远程连接。

Telnet和SSH服务只能实现基于字符界面的远程控制,利用VNC或者xrdp可以实现图形化的远程控制。

Telnet

概述

Telnet是位于OSI模型的第7层—应用层上的一种协议,是一个通过创建虚拟终端提供连接到远程主机终端仿真的TCP/IP协议,它是当今Internet上应用最广泛的协议之一。它把用户正在使用的终端或计算机变成网络某一远程主机的仿真终端,使得用户可以方便地使用远程主机上的软、硬件资源。telnet因为采用明文传送报文,安全性不好。

服务器配置

Telnet有两个安装包:telnet-server和telnet
telnet-server安装包是服务器端的安装包,telnet是客户端的安装包,一般系统默认都已经安装了这两个包,可以先使用此命令查询:

rpm -qa | grep telnet-server
#或者
rpm –q telnet-server

安装telnet服务器端

yum install telnet-server

telnet-server服务启动依赖xinetd服务如果未安装,需要首先安装xinetd。yum -y install xinetd
xinetd是新一代的网络守护进程服务程序,又叫超级Internet服务器,常用来管理多种轻量级Internet服务。
xinetd提供类似于inetd+tcp_wrapper的功能,但是更加强大和安全。

Telnet服务安装后默认并不会被xinetd启用,可以通过修改文件/etc/xinetd.d/telnet来开启服务:
注:如有则修改,第一次修改,此文件若不存在,可自己vim创建修改:
修改 disable = yes 为 disable = no

  1. Telnet服务最大连接数
    可以通过编辑文件/etc/xinetd.d/telnet,在花括号{}中添加语句instances=3来配置telnet服务的最大连接数,这里的3指telnet服务同时只允许3个连接。
  2. Telnet服务的端口
    Telnet服务默认的端口为23,出于安生性考虑,可以更改服务器监听的端口,通过编辑文件/etc/services来修改各个服务的端口,找到telnet选项,修改其数值即可。如要改为2323,即:
    telnet 2323/tcp
    telnet 2323/udp

服务器启动服务

systemctl start telnet.socket
systemctl start xinetd
# 或 service xinetd start

客户端使用

安装telnet客户端

yum install telnet

客户端进行连接

telnet ip
# 如果修改过Port则要在命令最后添加连接的端口作为参数

ssh

概述

SSH是目前通常使用的远程管理协议,它是一个在应用程序中提供安全通信的协议,通过SSH可以安全地访问服务器,因为SSH基于成熟的公钥加密体系,把所有传输的数据进行加密,保证数据在传输时不被恶意破坏、漏露和篡改。Linux下广泛使用免费的OpenSSH程序来实现SS协议,它同时支持SSH1和SSH2协议Openssh软件包包括两部分:openssh-server和openssh-client,它们分别打包在不同的RPM包中,同时都需要依赖openssh软件包工作,

服务器配置

查看是否安装了ssh服务

rpm -qa | grep openssh 

安装ssh:

yum install openssh 

启动SSH

service sshd start

设置开机运行
chkconfig sshd on

客户端使用

1 linux客户端
在linux客户端,可以使用命令ssh登录,如果SSH服务器的IP地址为192.168.1.109,
登录命令如下:ssh 192.168.1.109
根据提示输入口令即可,这个口令是root用户的口令,所以登录之后就是root用户身份了。
2 windows客户端
在windows客户端是无法使用ssh命令的,但是有许多SSH客户程序,推荐使用免费的PuTTY程序,它小巧好用,而且是一款无需安装的绿色软件。
使用方法:
运行下载的putty.exe文件,在程序主界面中输入服务器的IP地址或域名,在协议中选择SSH选项,然后单击连接按钮即可连接。
如果是第一次连接到某台服务器,由于服务器公钥没有在注册表中缓存,putty程序会出现的警告信息并显示服务器的指纹信息,点确定即可。
如果成功地连接到SSH服务器,会显示登录信息并提示输入用户名和口令,输入分配的用户名和口令即可。

xrdp

概述

Based on the work of FreeRDP and rdesktop, xrdp uses the remote desktop protocol to present a GUI to the user.
优点:不用装客户端工具,windows自带的功能就可以连接,较vnc安全性高。

服务器配置

安装

# 安装epel库
yum install  epel* -y
# 利用epel库安装xrdp
yum --enablerepo=epel -y install xrdp

启动xrdp服务

systemctl start xrdp

客户端使用

windows系统
运行(win+R),输入mstsc,输入服务器IP以及账户密码即可访问远程桌面

vnc

概述

VNC (Virtual Network Console)是虚拟网络控制台的缩写。VNC 是一款优秀的远程控制工具软件,由著名的 AT&T 的欧洲研究实验室开发的。VNC 是在基于 UNIX 和 Linux操作系统的免费的开源软件,远程控制能力强大,高效实用,其性能可以和 Windows 或 MAC中的任何远程控制软件媲美。在 Linux 中,VNC 包括以下四个命令:vncserver,vncviewer,vncpasswd,和 vncconnect。大多数情况下只需要其中的两个命令:vncserver 和 vncviewer。目前,原来的AT&T版本已经不再使用,因为更多有重大改善的分支版本已经出现, 像是RealVNC, VNC tight 和UltraVNC。 Real VNC 是当前最活跃和强大的主流应用。
VNC默认使用TCP端口5900至5906,而JAVA的VNC客户端使用5800至5806。一个服务端可以在5500口用“监听模式”连接一个客户端,使用监听模式的一个好处是服务端不需要设置防火墙。

服务器配置

查看是否安装了vnc服务

rpm -q vnc-server

安装 vncserver:

yum install tigervnc-server

启动VNC服务
每个用户都可以启动自己的VNCSERVER远程桌面,同时每个用户可以启动多个VNCSERVER远程桌面,它们用ip加端口号:ip:1、ip:2、ip:3 来标识、区分,使用同一端口会使另外登录的用户自动退出
使用vncserver命令启动VNC服务,命令格式为“vncserver :桌面号”,其中“桌面号”用“数字”的方式表示,每个用户连接需要占用1个桌面
启动编号为1的桌面示例如下

vncserver :1

VNC服务使用的端口号与桌面号相关,VNC使用TCP端口从5900开始,对应关系如下
桌面号为“1” ---- 端口号为5901
桌面号为“2” ---- 端口号为5902
桌面号为“3” ---- 端口号为5903

客户端使用

1 linux客户端
在linux客户端,可以通过安装vnc viewer来动进行连接,安装方法和vnc server相似,安装好之后在附件里打开vnc viewer,输入IP地址或域名和桌面号,单面连接即可进行连接了。
2 windows客户端
在windows客户端,可以通过浏览器直接进行连接,例如vnc服务器的IP地址为192.168.1.109,可以在浏览器里输入IP地址加端口号进行连接:
192.168.1.109:5801
表示连接ip地址为192.168.1.109的vnc服务器的1号桌面。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux笔记--远程访问(Telnet,ssh,xrdp,vnc) 的相关文章

  • 如何在 bash_profile 文件中添加导出语句?

    我正在尝试了解是否必须添加导出语句来在 bash profile 文件中设置变量 我该怎么做呢 例如 如果我必须添加 export AX name 那么我应该将其简单地写在文件末尾还是我还需要编写其他内容 简单写一下export AS na
  • 为什么无论 -rdynamic 如何,backtrace 都不包含 Objective-C 符号?

    Update 我正在 Linux 上使用 GNU 运行时 问题是not发生在带有 Apple 运行时的 MacOS 上 更新2 我在 MacOS 上编译了 GNU 运行时并用它构建了示例 该错误确实not发生在带有 GNU 运行时的 Mac
  • 如何在 Linux 中向热敏打印机发送 ESC/POS 命令

    我正在尝试在热敏打印机上发送 ESC POS 命令 但每当我发送它们时 热敏打印机都会将它们打印为文本 而不是作为命令执行它们 我在 prn 文件中编写这些命令 每当我执行 lp 命令来打印文件时 这些 prn 文件也会被打印 但作为文本
  • 通过名称获取进程ID

    我想在 Linux 下获得一个给定其名称的进程 ID 有没有一种简单的方法可以做到这一点 我还没有在 C 上找到任何可以轻松使用的东西 如果追求 易于使用 char buf 512 FILE cmd pipe popen pidof s p
  • Linux 中的 Windows NAmed Pipes 替代品

    我们正在将现有的 Windows 代码移植到 Linux 我们使用 ACE 作为抽象层 我们使用 Windows 命名管道与多个客户端进行通信并执行重叠操作 linux 下这个相当于什么 我检查了linux命名管道 FIFO 但它们似乎只支
  • 点击界面没有出现

    我决定添加一个点击界面并在我的代码中使用它 但我能够得到它的状态 sudo ip f link tuntap add tap10 mode tap sudo ip link set tap10 up 之后当我执行 ip link 时 tap
  • 虚拟内存澄清——大连续内存的分配

    我有一个应用程序 我必须在 Windows 上分配 使用运算符 new 相当大的内存空间 数百 MB 该应用程序是 32 位 我们现在不使用 64 位 即使在 64 位系统上也是如此 我启用了 LARGEADDRESSAWARE 链接器选项
  • EULA 接受 Bash 脚本

    我有一个尝试安装垃圾箱的脚本 除了 bin 在 more 中打开 EULA 之外 一切正常 在脚本再次开始并自行完成安装之前 您必须手动 ctrl c 退出此 more 实例 因为这更多的是逃离 shell 所以脚本在打开后不知道要运行什么
  • 每个虚拟主机的错误日志?

    在一台运行 Apache 和 PHP 5 的 Linux 服务器上 我们有多个带有单独日志文件的虚拟主机 我们似乎无法分离 phperror log虚拟主机之间 覆盖此设置
  • 如何使用 PyAudio 选择特定的输入设备

    通过 PyAudio 录制音频时 如何指定要使用的确切输入设备 我的电脑有两个麦克风 一个内置 一个通过 USB 我想使用 USB 麦克风进行录音 这流类 https people csail mit edu hubert pyaudio
  • gpg:抱歉,根本没有请求终端 - 无法获取输入

    解密时出现以下错误 eyaml decrypt s ENC and the key goes on here gnupg quiet no secmem warning no permission warning no tty yes de
  • 使用 Vala 和 GLib 的正则表达式

    有没有一个函数 比如http php net manual en function preg match all php http php net manual en function preg match all php 使用 GLibh
  • 设置 Vim 背景颜色

    当我尝试更改背景颜色时 vimrc或者直接在 Vim 中使用以下命令 set background dark 这根本不影响我的背景 也没有light选项 不过 当我运行 gvim 时 看起来还不错 有没有办法在不更改 Konsole 设置的
  • 使用 pscp 命令时出现“未找到命令”

    我正在使用 PuTTY pscp 将项目文件夹传输到 AWS 实例 我可以使用 ppk 公钥文件进行连接并且ssh命令成功打开并登录 这里我使用命令来传输文件夹 pscp r i C path to my keys converted pe
  • 路由是否会影响具有绑定源地址的套接字?

    假设我有两个网络接口 eth0有地址10 0 0 1 eth1有地址192 168 0 1 Using route or ip route add我已将其设置为路由 所有地址至eth0 1 2 3 4只为了eth1 所以数据包到1 2 3
  • 即使使用 rvm pkg install zlib 后也无法加载此类文件 -- zlib

    我使用 rvm 安装了 zlib 包和 ruby 1 9 3 但是每当我尝试安装时 它说宝石cannot load such file zlib 我用来安装的命令是 rvm install 1 9 3 rvm pkg install zli
  • Linux 阻塞与非阻塞串行读取

    I have 这段代码 https stackoverflow com questions 6947413 how to open read and write from serial port in c用于在Linux中从串行读取 但我不
  • 期待、互动,然后再次期待

    有几篇关于相同内容的帖子 但我仍然无法使我的期望脚本正常工作 我的目的是自动化一切 但保留用户输入的密码 所以脚本有 3 个部分 自动登录 给予用户交互以输入密码 将控制权交还给 Expect 脚本以继续工作 所以我有一个将生成的脚本 其中
  • 如何从外部模块导出符号?

    我在内核源代码树之外进行编码 有两个模块 第一个printt有一个功能printtty 将字符串打印到当前 tty 以及第二个模块hello这会调用printtty 在初始化期间 我已经添加了EXPORT SYMBOL printtty 在
  • 有没有办法只安装mysql客户端(Linux)? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有没有不需要安装整个mysql db安装包的Linux mysql命令行工具 我想做的是从服务器 1 应用程序服务器 执行将在服务器 2

随机推荐

  • LInux高级编程 - 线程(Threads)

    http www 91linux com html article program cpp 20090105 15374 html ALP Chapter 4 线程 xff08 Threads xff09 线程可以简单理解成为进程的下级 一
  • 网络协议和管理

    成功不易 xff0c 加倍努力 xff01 1 网络基础1 1 网络概念1 2 常见的网络物理组件1 3 网络应用程序1 3 1 各种网络应用1 3 2 应用程序对网络的要求 1 4 网络的特征1 4 1 速度 带宽 1 4 2 网络拓扑
  • Linux进阶_OpenSSL

    成功不易 xff0c 加倍努力 xff01 OpenSSL1 OpenSSL 介绍2 Base64 编码3 openssl命令3 1 openssl命令对称加密3 2 openssl命令单向哈希加密3 3 openssl命令生成用户密码3
  • Linux进阶_SSH服务

    成功不易 xff0c 加倍努力 xff01 ssh服务1 ssh服务介绍1 1 公钥交换原理1 2 ssh加密通讯原理 2 openssh2 1 客户端ssh命令2 2 ssh登录验证方式介绍2 3 实现基于密钥的登录方式3 4 其它ssh
  • 运维自动化之ANSIBLE

    成功不易 xff0c 加倍努力 xff01 运维自动化之ANSIBLE本章内容1 自动化运维应用场景1 1 云计算运维工程师核心职能1 2 运维职业发展路线1 3 企业实际应用场景分析1 3 1 Dev开发环境1 3 2 测试环境1 3 3
  • 企业级监控ZABBIX

    第一部分 Zabbix安装部署 实现分布式监控及网络知识 Zabbix 监控及业务整体规划图安装Zabbix Server端和数据库安装客户端实现被动模式监控监控tomcat安装Zabbix proxy端和数据库配置zabbix 主动模式代
  • 26.Nginx详解

    文章目录 一 Web服务基础介绍 xff1a 1 1 互联网发展历程回顾 xff1a 1 2 xff1a web服务介绍 xff1a 1 2 1 Apace 早期的web服务端 xff1a 1 2 1 3 xff1a Apache even
  • 38.DevOps之基于Jenkins实现的CI与CD

    文章目录 一 DevOps 简介1 1 什么是 DevOps1 2 为什么要推广 DevOps xff1f 1 3 传统技术团队1 4 DevOps 技术团队1 5 什么是持续集成 CI Continuous integration 1 6
  • ELK日志系统详解

    文章目录 前言什么是 ELK xff1f 什么是 Elasticsearch什么是 Logstash什么是 kibana为什么使用 ELK xff1f ELK 的好处谁在使用 ELK 一 elasticsearch 部署1 1 环境初始化1
  • 流感传染(信息学奥赛一本通)

    题目描述 有一批易感人群住在网格状的宿舍区内 xff0c 宿舍区为 n n 的矩阵 xff0c 每个格点为一个房间 xff0c 房间里可能住人 xff0c 也可能空着 在第一天 xff0c 有些房间里的人得了流感 xff0c 以后每天 xf
  • 问题解决——VMware中Ubuntu的桌面和字体很小

    问题解决 VMware中Ubuntu的桌面和字体很小 方法 xff1a 更改Ubuntu分辨率 xff08 1 xff09 设置VMware xff0c 让虚拟机的桌面铺满 xff08 2 xff09 右键桌面 xff08 3 xff09
  • 转载:对offsetParent的理解

    来源 cnblogs 啊T 网上对offsetParent和parentNode差异的解释都是同一篇文章千篇一律 xff0c 讲的不是很清楚 offsetParent用的最普遍的就是来计算元素在页面中的位置 xff0c 前面的日志理讲了 通
  • vs 开发 qt 遇到 无法找到 Visual Studio 2010 的生成工具(平台工具集 =“v100”) 解决方案

    vs 开发 qt 遇到 无法找到 Visual Studio 2010 的生成工具 平台工具集 61 v100 解决方案 参考文章 xff1a xff08 1 xff09 vs 开发 qt 遇到 无法找到 Visual Studio 201
  • 取一个整数a从右端开始的4~7位。

    取一个整数a从右端开始的4 xff5e 7位 思路 xff1a 先除1000取整数部分 xff1b xff08 去掉个 十 百3位数 xff09 然后取余第7位后面的数 xff08 去掉百万位左边的数 xff09 程序 xff1a impo
  • C语言结构体实现简单通讯录管理系统

    效果如图 xff1a 代码及详情如下 xff1a include lt stdio h gt include lt string h gt include lt stdlib h gt 通讯录管理 问题描述 xff1a 利用线性表实现一个通
  • 计蒜客 T1068救援 C语言编程

    救生船从大本营出发 xff0c 营救若干屋顶上的人回到大本营 xff0c 屋顶数目以及每个屋顶的坐标和人数都将由输入决定 xff0c 求出所有人都到达大本营并登陆所用的时间 在直角坐标系的原点是大本营 xff0c 救生船每次从大本营出发 x
  • 计蒜客 T1079开关灯 C语言编程

    int a 5001 int main int m n k 61 1 scanf 34 d 34 amp n scanf 34 d 34 amp m for int i 61 2 i lt 61 m i 43 43 for int j 61
  • ubuntu20.04安装配置anaconda3

    ubuntu20 04安装配置anaconda3 首先在home目录新建一个文件夹anaconda mkdir anaconda 可以从官网下载anaconda的文件 xff1a https www anaconda com product
  • 信息学奥赛一本通C++语言——1049:晶晶赴约会

    题目描述 晶晶的朋友贝贝约晶晶下周一起去看展览 xff0c 但晶晶每周的1 3 5有课必须上课 xff0c 请帮晶晶判断她能否接受贝贝的邀请 xff0c 如果能输出YES xff1b 如果不能则输出NO 注意YES和NO都是大写字母 xff
  • Linux笔记--远程访问(Telnet,ssh,xrdp,vnc)

    实验环境Centos7 43 WIn11 43 VMware16 使用前建议关闭防火墙等 setenforce 0 systemctl stop firewalld service 一般的远程访问步骤 xff1a xff08 1 xff09