近日,因工作需要,学习了CentOS远程监控的水平有限,多指教。
远程访问CentOS,包括三种方式ssh,telnet,vnc。
本例涉及的是以vnc远程访问CentOS。指令在root下操作。注意:vnc的端口为5900,工作区为1.
一、安装vnc
1、检查是否安装vnc。
rpm -q tigervnc tigervnc-server
2、卸载vnc。
yum erase tigervnc tigervnc-server -y
或者:
yum erase tigervnc tigervnc-server -y
3、安装vnc
yum install tigervnc tigervnc-server -y
二、vncserver配置
1、复制配置文件
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
2、修改配置文件
gedit 打开 vncserve@:1.service
注意:仔细阅读注解部分,很重要。
<user>替换为root,%i 替换为:1
修改前:
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i"
PIDFile=/home/<USER>/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
修改后
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill :1 > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l root -c "/usr/bin/vncserver :1"
PIDFile=/root/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill :1 > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
3、重新加载
systemctl daemon-reload
4、启用vnc
systemctl enable vncserver@:1.service
5、启动vnc
systemctl start vncserver@:1.service
可能出现的故障:
Job for vncserver@:1.service failed. See ‘systemctl status vncserver@:1.service’ and ‘journ alctl -xn’ for details.
解决方法:
(1)、修改配置文件 vncserver@:1.service 中 Type 为 simple。(按照修改没有成功)
(2)、# Clean any existing files in /tmp/.X11-unix environment。执行命令:
rm -rf /tmp/.Xll-unix/* 执行3-5。测试成功。
6、查询状态
systemctl status vncserver@:1.service,.
7、在防火墙加入vnc-server
(1)、加入防火墙
firewall-cmd --permanent --add-service vnc-server
systemctl restart firewalld.service
(2)、图形界面
8、局域网远程测试通过。
9、公网操作。
如果涉及到外网操作,转发规则注意,假设vnc本地默认的端口是5900,使用工作区1,在转发规则中外网的端口是5900,内网端口是5901.
三、注意问题
(1)、在有写操作或者文件改动的操作时,systemctl daemon-reload,经常使用。更新内存。