Lin操作基础系统 7_第1页
Lin操作基础系统 7_第2页
Lin操作基础系统 7_第3页
Lin操作基础系统 7_第4页
Lin操作基础系统 7_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第14章基础服务OpenSSH和VNC《Linux操作系统(第5版)》学习目标了解OpenSSH协议,掌握SSH服务端配置方法掌握与客户端连接、认证及文件传输等应用了解VNC协议,掌握TigerVNC服务器的配置与客户端使用方法掌握x11vnc服务器配置与使用方法章节概述本章节旨在使学习者理解OpenSSH和VNC的基本协议与安全机制,掌握SSH服务端配置、密钥管理及ssh、scp、sftp等客户端工具的使用,以及VNC服务器的部署与桌面环境要求;重点培养配置SSH服务实现安全远程登录与文件传输、部署TigerVNC与x11vnc服务器、跨平台使用VNC客户端进行远程桌面管理的实践操作能力;并注重引导形成重视数据传输加密、权限控制与系统服务维护的安全意识,养成规范的远程服务操作习惯与责任意识。目录0102OpenSSH协议VNC软件OpenSSH协议14.1OpenSSH是SSH协议的免费开源实现,是OpenBSD的子项目,它首次于1999年10月出现在OpenBSD2.6中,目前可在包括UNIX、Linux、Windows等几乎所有的操作系统平台上。OpenSSH支持,SH协议的版本1.3、1.5和2。SSH是一组用于安全访问的远程连接工具,对所有的传输进行加密,从而有效地阻止了窃听、连接劫持以及其他网络级的攻击,可用于替代rlogin、rsh、rcp及telnet等工具。14.1.1OpenSSH协议1.什么是异常OpenSSH协议在红帽系统里,OpenSSH相关软件包含openssh(客户端与服务端共用部分)、openssh-clients(客户端)及openssh-server(服务端);Ubuntu下则有openssh-server与openssh-client等。安装它们时,相关软件也会一并安装。安装方法:#

dnf

installopenssh-serveropenssh-clients

-y #红帽&OpenEuler#

aptinstallopenssh-serveropenssh-client

-y #UbuntuOpenSSH包括以下内容:客户端程序:ssh、scp和sftp服务端程序:sshd和sftp-server密钥管理程序:ssh-add、ssh-keyscan、ssh-agent和ssh-keygen:软件安装14.1.2软件安装与启动管理Openssh的服务在红帽和Ubuntu下分别为sshd和ssh,统称为SSH服务。管理方法:1)红帽&OpenEuler#systemctlenablesshd;systemctlstartsshd #启用且启动SSH服务#systemctlstatussshd #检查状态(需要时)#systemctlreload/restartsshd #重载/重启(修改配置后使用,建议重载)#systemctlstop/disablesshd #停止/禁用2)Ubuntu#systemctlenablessh;systemctlstartssh #启用且启动SSH服务#systemctlstatusssh #检查状态(需要时)#systemctlreload/restartssh #重载/重启(修改配置后使用,建议重载)#systemctlstop/disablessh #停止/禁用每当修改配置文件后,都要重载或重启服务,建议重载。服务管理14.1.2软件安装与启动管理配置文件路径主配置文件:/etc/ssh/sshd_config作用:控制SSH服务器的行为,包括认证方式、端口、协议等。提取有效配置内容使用以下命令过滤空行和注释:grep-v-E"^[[:blank:]]*$|^#"/etc/ssh/sshd_config14.1.3配置文件与服务器设置1.继承的概念1.什么是异常OpenSSH主配置文件概述(1)默认监听端口和地址。OpenSSH默认监听服务器配置的所有地址(含IPv4和IPv6)上的TCP22端口,用户可根据安全需求对这些参数进行修改。Port22 #监听端口AddressFamilyany #类型,有效值为any(IPv4和IPv6)、inet(仅IPv4)或inet6(仅IPv6)ListenAddress:22 #监听IPv4地址ListenAddress[::]:22 #监听IPv6地址14.1.3配置文件与服务器设置1.继承的概念1.什么是异常OpenSSH的默认配置(2)认证与日志信息。SyslogFacilityAUTHPRIV #日志类型LogLevelINFO #日志级别或详细程度14.1.3配置文件与服务器设置1.继承的概念1.什么是异常OpenSSH的默认配置(3)root用户登录方式的控制PermitRootLogin用于定义root用户登录的方式,可取方式为yes(允许)、prohibit-password(别名为without-password,root用户可使用私钥登录,但不可使用密码登录SSH)、forced-commands-only(允许指定命令通过公钥执行)、no(不允许)。从命令#sshd-T|grep-iPermitRootLogin #输出为permitrootloginwithout-password的输出可以看出,root用户可以使用私钥登录,但不可使用密码登录。(此为系统安装时未选择允许root用户使用密码远程登录SSH的情况,若安装时选择了yes,则将允许root用户使用密码远程登录SSH。)14.1.3配置文件与服务器设置1.什么是异常OpenSSH的默认配置(3)root用户登录方式的控制(续)再看看在配置文件中,配置项PermitRootLogin的情况。命令#grep-iPermitRootLogin/etc/ssh/sshd_config的输出为:#PermitRootLoginprohibit-password说明此项配置没有起作用,SSH服务采用的是缺省配置。若要允许root用户通过密码登录SSH,则需要修改sshd_config文件,将其中PermitRootLogin的值设置为yes,也就是将sshd_config中的行#PermitRootLoginprohibit-password修改为:PermitRootLoginyes或直接在sshd_config中添加此行内容。也可以在子配置目录/etc/ssh/sshd_config.d内添加一个子配置文件,如01-permitrootlogin.conf,并添加此行内容。14.1.3配置文件与服务器设置OpenSSH的默认配置3.重启服务每当修改配置文件后,都必须重载或重启SSH服务。14.1.3配置文件与服务器设置OpenSSH的默认配置客户机要连接使用SSH协议的服务器,除了要有指定用户,还需要对此用户进行身份认证。身份认证有密码和密钥两种方式。密钥由一对公钥和私钥组成,SSH协议通常采用RSA和DSA认证算法。密钥管理工具为ssh-keygen。与密钥和可信主机相关的文件均存放在~/.ssh下,authorized_keys为公钥集合文件,所有需要访问本服务器用户的公钥都要集中存放在此文件中;id_rsa和id_rsa.pub是一对RSA私钥和公钥文件;id_dsa和id_dsa.pub是一对DSA私钥和公钥文件;known_hosts和known_hosts.old存储了已知主机信息。14.1.4OpenSSH密钥管理密钥说明1)RSA密钥对生成#ssh-keygen-trsa #生成RSA密钥对,交互过程如下(建议由用户自己完成)Generatingpublic/privatersakeypair.Enterfileinwhichtosavethekey(/root/.ssh/id_rsa):Enterpassphrase(emptyfornopassphrase): #首次输入私钥Entersamepassphraseagain: #再次输入私钥Youridentificationhasbeensavedin/root/.ssh/id_rsa #私钥存放文件Yourpublickeyhasbeensavedin/root/.ssh/id_rsa.pub #公钥存放文件Thekeyfingerprintis:SHA256:Xah8j1uB+JVj8tbNq9ywLLXGwdJ2MsRZ1Ti3V4/OBHAroot@centos10Thekey'srandomartimageis:......#ls~/.ssh #查看密钥文件,其中应包含id_rsa和id_rsa.pub14.1.4OpenSSH密钥管理RSA密钥管理2)RSA私钥安装私钥存放在用户根目录下的~/.ssh/id_rsa中。3)RSA公钥安装公钥存放在~/.ssh/id_rsa.pub中。用户还应该把id_rsa.pub复制到远程服务器中,注意不要覆盖同名文件,并将其内容添加到~/.ssh/authorized_keys文件中。假设id_rsa.pub已经被复制到~/中,可在远程系统上执行以下命令来完成公钥安装:$cat~/id_rsa.pub>>~/.ssh/authorized_keys 14.1.4OpenSSH密钥管理RSA密钥管理1)DSA密钥对生成$ssh-keygen-tdsa #生成DSA密钥对,过程同RSA(略)$ls~/.ssh/ #查看密钥文件,其中应包含id_dsa和id_dsa.pub2)DSA私钥安装私钥存放在用户根目录下的~/.ssh/id_dsa中。3)DSA公钥安装公钥存放在~/.ssh/id_dsa.pub中。用户也应该把id_dsa.pub复制到远程服务器中,并将其内容添加到~/.ssh/authorized_keys文件中。14.1.4OpenSSH密钥管理DSA密钥管理1)DSA密钥对生成$ssh-keygen-tdsa #生成DSA密钥对,过程同RSA(略)$ls~/.ssh/ #查看密钥文件,其中应包含id_dsa和id_dsa.pub2)DSA私钥安装私钥存放在用户根目录下的~/.ssh/id_dsa中。3)DSA公钥安装公钥存放在~/.ssh/id_dsa.pub中。用户也应该把id_dsa.pub复制到远程服务器中,并将其内容添加到~/.ssh/authorized_keys文件中。14.1.4OpenSSH密钥管理DSA密钥管理ssh是远程登录客户端,允许用户在远程机器上登录并在其上执行命令。用法:ssh[options][-luser]host[cmd]ssh[options]user@host[cmd]14.1.5客户端及应用远程登录客户端(ssh)参

数意

义参

数意

义-luser指定用户,若不指定,则使用当前用户hostSSH服务器的主机名或IP地址cmd远程主机上的shell命令-pport指定端口-q安静模式,抑制不必要的输出-v冗余模式,显示调试信息-Ffile指定用户配置文件为file,忽略默认配置-iidentity_file指定本地私钥文件,忽略默认-4只使用IPv4地址-6只使用IPv6地址1)使用服务器默认设置(without-password)方式登录即使用密钥登录,需要生成DSA和RSA密钥。设SSH服务器为centos10,IP地址为0,若以root用户登录到此服务器,则使用如下命令:$ssh-lroot0 #或$sshroot@centos10首次使用SSH登录时,会出现提示信息:Theauthenticityofhost'0(0)'can'tbeestablished.ED25519keyfingerprintisSHA256:pvx9PeQ1CDLeZ1ojBYmFUjlzMMfTswMRY5baLtTvzDc.Areyousureyouwanttocontinueconnecting(yes/no/[fingerprint])?yes输入yes继续,会将该服务器添加到已知主机的列表中。14.1.5客户端及应用远程登录客户端(ssh)2)使用密码方式登录若要让SSH服务器允许root用户以密码方式登录,则需要将SSH服务器设为允许root用户以密码方式登录,也就是将服务端的PermitRootLogin值设置为“yes”。这种方式的登录方法与私钥方式的相同,所不同的是,这里需要输入root用户的密码:…'spassword:在输入正确的密码后,用户会登录到远程主机,并出现shell提示符。当用户登录成功,并执行完工作后,要以TUI界面注销的方式退出。14.1.5客户端及应用远程登录客户端(ssh)3)远程登录后以非交互方式执行命令ssh命令还可用来在远程SSH服务器上经用户登录后以非交互方式执行命令。一般用法:ssh[options][-luser]hostcmdssh[options]user@hostcmd认证是必需的。比如,如果想以长格式列出远程主机上host指定用户test家目录的内容,则可以输入以下命令:$sshtest@hostls-l如果要以test登录到0,查看test在对方的ID和家目录的内容,则可以输入以下命令:$sshtest@0id #远程执行命令id$sshtest@centos10ls-l #远程执行命令ls-l$sshtest@centos10"id;ls-l;w" #远程执行命令组"id;ls-l;w"14.1.5客户端及应用远程登录客户端(ssh)scp命令可以通过安全、加密的链接在机器间复制文件。scp命令在需要时会提示输入对方密码或密钥,也允许在两个异地主机间复制文件。一般用法:scpsourcesdestinationsources用于指定源文件,destination用于指定目标文件。当其中之一为本地文件时,可以直接使用本地方式的文件(可以是相对路径的,也可以是绝对路径的)。当文件为异地文件时,所使用的文件名格式为:username@host:filename #filename可以带有路径,但文件名不能省略,可以是“.”14.1.5客户端及应用远程文件复制(scp)1)从本地向异地复制将本地文件myproc.c复制到centos10主机上test用户的家目录中,使用命令:$scpmyproc.ctest@centos10:myproc.c将本地当前目录下的所有C程序*.c复制到centos10主机上test用户的家目录中,使用命令:$scp*.ctest@centos10:. #最后的“.”不能少2)从异地向本地复制将centos10主机上用户为test的文件Download/music.mp3复制到本地系统的临时目录中,使用命令:$scptest@centos10:Download/music.mp3/tmp/music.mp33)从异地向异地复制将异地主机centos10上test用户的文件Download/music.mp3复制到异地主机ubuntu25上用户test2的家目录中,并更名为music1.mp3,使用命令:$scptest@centos10:Download/music.mp3test2@ubuntu25:music1.mp314.1.5客户端及应用远程文件复制(scp)像ftp一样,sftp是一个交互式文件传输命令,它允许使用标准的ftp命令进行传输与控制,其传输是基于SSH加密机制的,并可使用SSH的公钥认证等机制。sftp的用法为:sftpuser@host #或sftpuser@host一旦通过验证,用户就可以使用与ftp相似的命令进行相关操作。sftp的详细用法及内部命令请参阅sftp的man手册。14.1.5客户端及应用安全的ftp(sftp)为了能使用远程登录服务,在防火墙规则的设置上,要允许ssh/22通过,设置方法:#firewall-cmd--permanent--add-servicessh;firewall-cmd--reload #firewalld防火墙#ufwallowssh #ufw防火墙14.1.6OpenSSH与防火墙和SELinux的关系与防火墙的关系1)进程类型SELinux可以为系统上运行的每个进程定义进程类型,服务进程sshd的进程类型为sshd_t,可以使用ps命令中的-Z选项来查看进程的上下文。例如:#ps-eZ|grepsshd #输出如下system_u:system_r:sshd_t:s0-s0:c0.c10231002?00:00:00sshd可以使用命令#semanagepermissive-asshd_t使类型为sshd_t的进程不会被SELinux拒绝访问。14.1.6OpenSSH与防火墙和SELinux的关系与SELinux的关系2)布尔变量SELinux对SSH所用的布尔变量可通过命令#getsebool-a|grepssh来查询。常见的有ssh_keysign、ssh_chroot_rw_homedirs和ssh_sysadm_login等,系统管理员可根据实际需要通过setsebool命令来更改这些变量的值。 #ufw防火墙14.1.6OpenSSH与防火墙和SELinux的关系与SELinux的关系VNC14.2VNC(VirtualNetworkComputing)是一种使用RFB协议的屏幕画面分享及远程操作软件,可通过网络发送键盘与鼠标的动作和即时的屏幕画面。VNC系统由客户端(也称VNCViewer)、服务端和协议组成。服务端被动接受客户端的控制,分享其所运行计算机的屏幕,客户端与服务端交互,观察或控制服务端;VNC服务器负责将服务端原始图像传送到客户端并将客户端的事件消息传送到服务端。VNC可以跨平台使用,支持UNIX、Linux、Windows等操作系统。14.2.1VNC所需的桌面环境与认证机制VNCVNC通信需要一个支持传统X11或Xorg的桌面环境。在红帽系统中可以使用GNOMEonXorg和GNOMEClassiconXorg,在Ubuntu系统中可以使用UbuntuonXorg。在红帽系统中,从Fedora40开始,缺省安装系统中,GNOMEGUI登录可选择的桌面环境只有GNOME和GNOMEClassic,但当前版本的tigervnc-server和x11vnc服务器在这些桌面环境中并不能正常工作。现阶段最有效的解决方案是继续安装传统的xsession或使用其他桌面环境,可选方法:#dnfinstall-ygnome-session-xsessiongnome-classic-session-xsession #安装xsession#dnfinstall-yplasma-desktopplasma-workspace-x11 #安装plasma-desktop#dnfgroupinstall-yxfce-desktop #安装xfce-desktop14.2.1VNC所需的桌面环境与认证机制VNC所需的桌面环境准备使用VNC通信的用户,必须在对其进行配置之前,先选择一个可用于VNC通信的桌面环境进行登录。目录/usr/share/xsessions/内存放着系统内已经安装的所有GNOME界面登录时可以选择登录的桌面环境(或xsessions),如gnome-classic.desktop、gnome.desktop、plasmax11.desktop、gnome-classic-xorg.desktop和gnome-xorg.desktop等,若其中的文件名不含有xorg或x11,则本机不能用于VNC通信。目录/var/lib/AccountsService/users/内以用户名(如test、test1等)方式存放着系统内所有用户在GUI界面中登录时选择的桌面环境(或xsessions),若一个用户从来没有在GUI界面中登录过或选择过桌面环境,则他在这里没有记录。这里的所有文件都是文本形式的,其中有一行内容的形式为Session=SESSION,若SESSION中不包含xorg或x11,则此用户不能用于VNC通信。14.2.1VNC所需的桌面环境与认证机制VNC所需的桌面环境由于VNC是可以跨平台、跨系统使用的,因此必须有安全认证机制,这种认证机制是基于X窗口的。文件.Xauthority是X窗口系统的认证机制的一部分,存储了用户的X会话密钥等信息,它由环境变量XAUTHORITY指定,或直接使用$HOME/.Xauthority。当即将用于VNC登录的用户从GUI界面中登录成功之后就可以在CLI界面中使用以下命令显示此文件名:$echo$XAUTHORITY #也可使用ls-l$XAUTHORITY显示文件名及属性/run/user/1000/gdm/Xauthority #用户UID=1000(test)的输出,gdm是关键在上述输出内容中有/run/user/1000/gdm/Xauthority,这是UID为1000的用户(名为test或其他),在登录时选择了VNC可用的x11或xorg桌面环境的结果,其特征是命令$basename`dirname$XAUTHORITY` #若桌面可用于VNC通信,则输出为gdm的输出为gdm,此桌面可用于VNC通信。若命令“echo$XAUTHORITY”的输出为.Xauthority,也是符合VNC通信要求的。14.2.1VNC所需的桌面环境与认证机制X窗口的认证机制还有一个与.Xauthority相关的环境变量DISPLAY(当前会话所使用的显示设备号),用户可以通过命令$echo$DISPLAY #显示当前显示设备显示当前显示设备,还可通过以下命令显示与当前DISPLAY相关的认证信息:$xauthlist$DISPLAY #显示当前或指定DISPLAY的认证信息$xauthlist #显示所有设备的认证信息14.2.1VNC所需的桌面环境与认证机制X窗口的认证机制TigerVNC是VNC的一个具体实现,是基于RealVNC4和X.org代码库的VNC的高速版本。带有GUI界面的Fedora和Ubuntu支持TigerVNC服务器.TigerVNC由服务器和客户端组成,两者可以同时安装,也可单独安装。Fedora的TigerVNC由服务器(tigervnc-server)和客户端(tigervnc)组成,安装方法如下:#dnfinstalltigervnc-server-y #安装tigervnc-serverVNC服务器包#dnfinstalltigervnc-y #安装tigervncVNC客户端包Ubuntu的TigerVNC由服务器(tigervnc-standalone-server)和客户端(tigervnc-viewer)组成,安装方法如下:#aptinstalltigervnc-standalone-server-y #安装tigervnc-standalone-server服务器包#aptinstalltigervnc-viewer-y #安装tigervnc-viewer客户端包14.2.2TigerVNCTigerVNC安装14.2.2TigerVNCTigerVNC的配置文件版本配置目录配置文件意

义说

明通用/etc/tigervncvncserver-config-defaults默认或缺省的配置覆盖内置缺省或默认配置vncserver-config-mandatory强制性配置覆盖缺省和个性化配置vncserver.users逻辑桌面与VNC用户的对应关系比如,:1=test1,:3=test21.14+~/.config/tigervncpasswdVNC用户密码文件由vncpasswd生成configVNC用户个性化配置文件覆盖缺省或默认配置1.13~/.vnc/passwdVNC用户密码文件由vncpasswd生成configVNC用户个性化配置文件覆盖缺省或默认配置Ubuntu配置文件的语法是perl风格的,而红帽的是传统(bsh)风格的,配置文件的每行包含一个配置项,空行与注释行无效。配置文件的覆盖关系是vncserver-config-mandatory→命令行参数→VNC用户个性化配置文件→vncserver-config-defaults→内置缺省配置。以VNC用户个性化配置文件“config”为例,在红帽中,config的配置语法为variable[=value]。例如:session=gnome #定义session类型为gnomealwaysshared #总是共享而其在Ubuntu中的配置语法为$variable="value";。例如:$session="gnome"; #定义session类型为gnome$localhost="no"; #可以实现异地访问,若值为"yes",则只能实现本地访问14.2.2TigerVNCTigerVNC安装红帽和Ubuntu的TigerVNC服务的模板unit文件分别为vncserver@.service和tigervncserver@.service,14.2.2TigerVNCTigerVNC服务的模板unit文件红帽Ubuntu[Unit]Description=Remotedesktopservice(VNC)After=syslog.targetnetwork.targetsystemd-user-sessions.service[Service]Type=forkingExecStartPre=+/usr/libexec/vncsession-restore%iExecStart=/usr/libexec/vncsession-start%iPIDFile=/run/vncsession-%i.pidSELinuxContext=system_u:system_r:vnc_session_t:s0[Install]WantedBy=multi-user.target[Unit]Description=Remotedesktopservice(VNC)After=network.targetsystemd-user-sessions.service[Service]Type=forkingExecStart=/usr/libexec/tigervncsession-start%iPIDFile=/run/tigervncsession-%i.pidSELinuxContext=system_u:system_r:vnc_session_t:s0[Install]WantedBy=multi-user.target配置TigerVNC服务器有多种方法,可参考TigerVNC的HOWTO文档,在红帽系统中其位于/usr/share/doc/tigervnc/,在Ubuntu系统中其位于/usr/share/doc/tigervnc-common/。参考TigerVNC服务的模板unit文件[tiger]vncserver@.service的内容,方法是执行命令#systemctlcat[tiger]vncserver@.service#红帽为vncserver@.service,Ubuntu为tigervncserver@.service在输出的开始部分有一个QuickHowTo,内容:#QuickHowTo:1.Addausermappingto/etc/tigervnc/vncserver.users. #在文件vncserver.users中添加逻辑桌面号与VNC用户名的对应关系2.Adjusttheglobaloruserconfiguration.Seethe #修改全局或用户个性化设置vncsession(8)manpagefordetails.(OPTIONAL) #可参考manvncsession得到详细信息(可选)3.Run`systemctlenablevncserver@:<display>.service` #执行systemctlenablevncserver@:<N>启用实例4.Run`systemctlstartvncserver@:<display>.service` #执行systemctlstartvncserver@:<N>启动实例14.2.2TigerVNCTigerVNC服务器配置配置TigerVNC服务可按以下步骤进行:(1)在文件/etc/tigervnc/vncserver.users中添加逻辑桌面号与VNC用户名的对应关系;(2)根据需要参考manvncsession调整全局或用户个性化设置(可选);(3)执行命令`systemctlenablevncserver@:<display>.service`启用服务实例;(4)执行命令`systemctlstartvncserver@:<display>.service`启动服务实例。这里的:<display>是逻辑桌面号,display为0、1、2、3等整数。14.2.2TigerVNCTigerVNC服务器配置设系统内有test1和test2两个用户要基于VNC访问,为他们配置TigerVNC服务的过程。(1)选择适合用于VNC通信的桌面环境并登录。用于VNC通信的用户test1和test2,分别在GUI界面中登录,登录时选择适合用于VNC通信的桌面环境。登录后,检查环境变量XAUTHORITY的所代表文件,若命令“echo$XAUTHORITY”的输出为/run/user/UID/gdm/Xauthority形式或.Xauthority,则说明桌面环境可以用于VNC通信,否则后续工作无法进行。14.2.2TigerVNCTigerVNC服务器配置(2)建立虚拟桌面与用户的对应关系。文件/etc/tigervnc/vncserver.users用于定义逻辑桌面号与VNC用户名的对应关系,格式::<display>=username#:<逻辑桌面号>=本地用户名,比如,:2=andrew:3=lisa编辑此文件,在其中定义如下2行::1=test1:3=test2即test1对应虚拟桌面:1,test2对应虚拟桌面:3。14.2.2TigerVNCTigerVNC服务器配置(3)根据需要调整全局或用户个性化设置此部分内容较复杂,可多可少,但至少应该包括为VNC用户设置VNC登录密码的内容。为了保证每个用户都能通过VNC安全登录系统,要为每个用于VNC登录的用户设置VNC登录密码(建议每个VNC用户登录后,自行设置)。以下为root用户的操作过程:#su-test1 #变为test1(建议test1登录后自行设置)$vncpasswd #test1用户为自己设置VNC登录密码(完成后按Ctrl+D快捷键切换到root用户)#su-test2 #变为test2(建议test2登录后自行设置)$vncpasswd #test2用户为自己设置VNC登录密码(完成后按Ctrl+D快捷键切换到root用户)vncpasswd生成的密码文件为~/.vnc/passwd或~/.config/tigervnc/passwd(见表14-2)。在设置VNC密码时,可以设置一个正常访问密码,还可以有选择地再设置一个只浏览访问密码。当设置“只浏览访问密码”并使用“只浏览访问密码”登录时,则只能“观看”而不能进行操作。14.2.2TigerVNCTigerVNC服务器配置(4)为VNC用户启用服务实例。这里仅参照QuickHowTo,对[tiger]vncserver@.service进行实例化。按照vncserver.users中的定义,直接使用tigervnc-server提供的[tiger]vncserver@.service,启用和启动实例的方法如下:#systemctlenablevncserver@:1.servicevncserver@:3.service #红帽启用实例::1=test1:3=test2#systemctlstartvncserver@:1.servicevncserver@:3.service #红帽启动实例#systemctlenabletigervncserver@:1.servicetigervncserver@:3.service#Ubuntu启用实例#systemctlstarttigervncserver@:1.servicetigervncserver@:3.service#Ubuntu启动实例。14.2.2TigerVNCTigerVNC服务器配置VNC使用的端口为从5900开始的多个连续端口。VNC实例号:N使用的端口为5900+N,:0实例使用5900端口、:1使用5901,:2使用5902,:3使用5903。操作者可根据准备开放的实例数来确定。若准备使用:0~:3四个实例,则要开放5900~5903端口。在设置前可首先使用命令#firewall-cmd--list-port #查询端口开放情况查询端口开放情况。若要开放端口5900~5903,则可使用命令:#firewall-cmd--add-port=5900-5903/tcp #红帽:临时开放端口5900~5903,或#firewall-cmd--permanent--add-port=5900-5903/tcp #红帽:永久开放端口5900~5903,或#firewall-cmd--permanent--add-servicevnc-server #红帽:永久开放vnc-server服务#firewall-cmd--reload #红帽:重新加载防火墙规则#ufwallow5900:5903/tcp #Ubuntu14.2.2TigerVNC防火墙配置VNC的客户端是通用的,有的系统提供了多种。使用系统自带的TigerVNC客户端。14.2.3客户端及应用客户端软件包VNC客户端的命令为vncviewer,使用方法为:$vncviewerhost:N #host为主机名或IP地址,N为VNC实例号例如:$vncviewer0:1 #地址为0的主机,实例为:1,对应test1$vncviewer0:3 #地址为0的主机,实例为:3,对应test2客户端vncviewer命令的使用和具体操作过程与服务端的配置,可根据提示来进行。但有一点需要提醒的是,客户端使用的实例号,要与服务端配置的实例号或端口号一致。当前版本的TigerVNC还在“应用程序菜单”中提供了名为“TigerVNCViewer”的命令,用户首先打开此客户端界面,然后在其“VNCServer”栏中输入形如IP地址:N的地址和逻辑桌面号后按回车键或单击“Connect”按钮即可链接到服务器。14.2.3客户端及应用普通登录VNC是明码传输协议,从这个意义上讲它是不安全的,若要实现加密传输,可通过SSH,这时需要在客户端使用-via参数。具体用法:$vncviewer-viauser@host:N #通过SSH链接host上的:N实例,用户为user例如:$vncviewer-viatest1@0:1 #通过SSH链接0上的:1,用户为test1$vncviewer-viatest2@0:3 #通过SSH链接0上的:3,用户为test2需要说明的是,若要通过SSH加密传输,还需要进行密钥等方面的配置。14.2.3客户端及应用通过SSH访问VNC服务器x11vnc是一个VNC服务器,允许用户使用VNC客户端进行远程查看,并与真实的X终端进行交互。顾名思义,x11vnc服务器只有在x11或xorg桌面环境下才能工作,像TigerVNC一样需要有适用于VNC通信的桌面环境,但不一样的是,x11vnc只有在服务器桌面系统用户登录后才能使用。若服务端配置的是共享型,则可从多个客户端同时看到相同的服务端桌面,以实现从服务端向客户端的在线广播,同时实现多个客户端对服务器桌面的浏览、操作与控制。14.2.4x11vncx11vnc(1)x11vnc安装。#dnfinstallx11vnc-y #红帽(说明:CentOS和RHEL需要epel的支持)#aptinstallx11vnc-y #Ubuntu(2)生成密码。在服务端为每个能访问x1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论