CentOS VNC共享文件夹设置指南(基于TigerVNC+Samba)
要通过VNC实现CentOS服务器与客户端的文件夹共享,需结合VNC服务器(提供远程桌面访问)和Samba服务(实现跨设备文件共享)。以下是详细步骤:
确保系统已更新并安装必要工具:
sudo yum update -y
sudo yum install tigervnc-server -y
sudo useradd vncuser # 创建用户
sudo passwd vncuser # 设置用户密码
切换至目标用户,执行:
su - vncuser
vncpasswd
输入并确认密码(此密码用于VNC客户端连接时的身份验证)。
复制默认模板并修改为指定端口(如:1对应端口5901):
sudo cp /usr/lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
sudo vi /etc/systemd/system/vncserver@:1.service
修改以下内容(替换vncuser为实际用户名):
[Service]
User=vncuser
Group=vncuser
WorkingDirectory=/home/vncuser
sudo systemctl daemon-reload
sudo systemctl start vncserver@:1.service
sudo systemctl enable vncserver@:1.service
sudo firewall-cmd --zone=public --add-port=5901/tcp --permanent
sudo firewall-cmd --reload
sudo yum install samba samba-client -y
sudo mkdir -p /home/vncuser/shared_folder # 创建共享目录
sudo chown -R vncuser:vncuser /home/vncuser/shared_folder # 设置所有者
sudo chmod -R 770 /home/vncuser/shared_folder # 授权用户及组读写执行
编辑Samba主配置文件:
sudo vi /etc/samba/smb.conf
在文件末尾添加以下内容(按需修改):
[shared_folder] # 共享名称(客户端访问时使用)
comment = VNC Shared Folder
path = /home/vncuser/shared_folder
browseable = yes # 允许浏览共享
writable = yes # 允许写入
valid users = vncuser # 允许访问的用户
create mask = 0660 # 新建文件权限
directory mask = 0770 # 新建目录权限
sudo smbpasswd -a vncuser # 将VNC用户添加至Samba
sudo smbpasswd -e vncuser # 启用Samba账户
sudo systemctl start smb
sudo systemctl enable smb
sudo firewall-cmd --zone=public --add-service=samba --permanent
sudo firewall-cmd --reload
在客户端(如Windows)安装TigerVNC Viewer,输入服务器IP及端口(如192.168.1.100:1),使用VNC密码登录。
连接成功后,在VNC桌面的“网络”或“此电脑”中查找共享文件夹(名称为smb.conf中定义的[shared_folder]),输入Samba用户名(vncuser)及密码即可访问、编辑文件。
browseable设为no,仅允许特定IP访问。setfacl命令为特定用户/组设置更精准的权限(如setfacl -m u:admin:rwx /home/vncuser/shared_folder)。ls -l /home/vncuser/shared_folder查看权限,确保无未授权访问。通过以上步骤,可实现CentOS VNC服务器与客户端之间的安全文件共享。如需更高级的功能(如加密传输),建议结合SSH隧道使用。