Centos/Redhat_7.9安装tigervnc

本文详细介绍了如何在Linux系统中安装TigerVNC服务器,配置开机启动服务,以及修改VNC的默认端口以增强安全性。通过设置自定义的桌面号和端口号,可以避免使用标准的5900系列端口,减少被扫描和入侵的风险。此外,还提到了使用脚本和rc.local文件实现多个用户的自动启动配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装tigervnc并配置开机启动用户vnc,修改vnc默认端口

1. 安装tigervnc,查看安装版本

yum install tigervnc-server -y
rpm -qa | grep tigervnc-server

2. 修改配置文件,添加用户VNC开机自启动

cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service

vim /etc/systemd/system/vncserver@\:1.service
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=simple

# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'

[Install]
WantedBy=multi-user.target

如果为普通用户可将root修改为普通用户即可

vncpasswd		##设置vnc登录密码,输入两次密码后输入no;

启动vnc

systemctl daemon-reload
systemctl start vncserver@\:1.service
systemctl status vncserver@:1.service

备注:这里的@后的:1表示"桌面号",默认启动的桌面号为5900+桌面号,我们配置的是1那么就是5901,以此类推

3. 配置开机启动

基础的方式,每个用户都需要添加,而且很容易出问题。

systemctl enable vncserver@:1.service

已脚本的形式开机自启动vnc

vim /root/src/auto_startvnc.sh
#!/bin/bash
/usr/bin/rm -rf /tmp/.X11-unix/*
/usr/bin/rm -rf /tmp/.*-lock
su - user01 -c "vncserver -geometry 1920x1080 -depth 24 :2"
su - user02 -c "vncserver -geometry 1920x1080 -depth 24 :3"
……

加入rc.local文件中,需要配置/etc/rc.d/rc.local的执行权限

echo "/usr/bin/sh /root/src/auto_startvnc.sh" >> /etc/rc.d/rc.local

4. 修改默认的端口号配置

需求:将vnc端口映射到外网;

  1. 可以通过net做端口转发,将外网的其他端口映射到内网机器590*端口(防止默认端口被扫描,而密码复杂度过低导致机器被入侵);
  2. 可以通过改vnc默认的启动端口来实现更改端口;
    备注:在企业环境中很少这样做,安全的做法是通过vpn技术拨号登录内网访问。
    实践:vnc改默认端口
which vncserver
grep "59" /usr/bin/vncserver -n

21:#  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,
188:$vncPort = 5900 + $displayNumber;
500:# n is taken if something is listening on the VNC server port (5900+n) or the
519:# (5900+n) or the X server port (6000+n).
536:    if (!bind(S, pack('S n x12', $AF_INET, 5900 + $n))) {

其中188行和536行需要更改,这里我们改成19500

vncserver #启动一个vnc
ps -ef | grep vnc
root   7613     1  0 15:02 ?        00:00:09 /bin/Xvnc :2 -auth /root/.Xauthority -depth 24 -desktop ctest:2 (root) -fp catalogue:/etc/X11/fontpath.d -geometry 1920x1080 -pn -rfbauth /root/.vnc/passwd -rfbport 19502 -rfbwait 30000
root   7626     1  0 15:03 ?        00:00:00 /bin/sh /root/.vnc/xstartup

#-rfbport 19502就是启动的端口号
也可以通过netstat查看
netstat -ntlp | grep 195
### 如何查找 Docker CE 在阿里云镜像站点上的 CentOS 7.9 稳定版资源 为了在阿里云镜像站点上找到适用于 CentOS 7.9 的 Docker CE 稳定版资源,可以按照以下方法操作: #### 配置 Docker 官方仓库的阿里云镜像 首先需要配置 Docker 的官方仓库至阿里云镜像站点。可以通过 `yum-config-manager` 命令来完成这一过程[^1]。 ```bash yum-config-manager \ --add-repo \ https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo ``` 接着修改 `/etc/yum.repos.d/docker-ce.repo` 文件中的默认源地址为阿里云镜像地址: ```bash sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo ``` 最后刷新缓存以使更改生效: ```bash yum makecache fast ``` #### 下载离线安装包 如果目标环境无法联网,则可以选择下载 Docker CE 的二进制文件并上传到服务器进行离线安装。对于 CentOS 7.9 和 x86_64 架构,可以从阿里云提供的静态链接中获取稳定版本的压缩包[^2]。 具体 URL 地址如下所示: ```plaintext https://mirrors.aliyun.com/docker-ce/linux/static/stable/x86_64/ ``` 进入上述页面后会看到多个不同版本号对应的 tar.gz 文件(例如 `docker-27.4.0.tgz`),选择适合需求的一个版本下载即可。 #### 卸载旧版 Docker (如有必要) 在某些情况下可能已经存在较早版本的 Docker 被预装于系统之中,在这种情形下建议先将其移除再继续后续步骤[^4]: ```bash sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine ``` #### 获取 Docker Compose 最新版本(可选扩展部分) 除了基础容器引擎外,还经常需要用到编排工具——Docker Compose 来管理多服务应用项目。以下是自动拉取其最新发行版的方法说明[^5]: 编写一段简单的 shell script 实现动态抓取指定平台架构下的 compose 可执行程序: ```bash #!/bin/bash set -e LATEST_VERSION=$(curl -fsSLI -o /dev/null -w "%{url_effective}" https://github.com/docker/compose/releases/latest | grep -oE "[0-9]+\.[0-9]+\.[0-9]+") DOWNLOAD_URL="https://github.com/docker/compose/releases/download/v${LATEST_VERSION}/docker-compose-$(uname -s)-$(uname -m)" echo $DOWNLOAD_URL curl -L "$DOWNLOAD_URL" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose ``` 此脚本利用 curl 请求 GitHub Releases 页面获得当前最新的 tag name 后拼接成实际可用的 download link 并保存到指定路径赋予执行权限结束整个流程。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值