1. samba-文件共享
用于局域网中共享文件
-
安装
apt-get install samba -
配置
配置文件位置:/etc/samba/smb.conf
[share] comment = share folder path = /home/xxx/xxx valid users = ubuntu browseable = yes public = yes writable = yes -
启动
systemctl start smbd -
添加共享用户
sudo smbpasswd -a xxx -
重启
sudo systemctl restart smbd
2. frp-内网穿透
用于将内网的设备暴露在公网使用
-
安装
在github下载适合的架构版本或https://wwqs.lanzouo.com/b01419n9i 密码:cfz2
解压后有 frpc(客户端) 和 frps(服务端)
客户端在内网机器上运行,服务端在有公网IP的机器上运行
-
配置
服务端配置文件,位置在解压后的文件夹内,文件名:frps.ini
# 服务端配置 [common] bind_addr = 0.0.0.0 # 绑定IP bind_port = 7000 # 绑定端口 bind_udp_port = 7001 kcp_bind_port = 7000客户端配置文件,位置在解压后的文件夹,文件名:frpc.ini
[common] # 自己的frps服务器,阿里云服务器绑定的域名(国内服务器绑定的域名需要备案)或公网IP地址 server_addr = xxx.xxx.xxx.xxx # frps服务端监听的端口号 server_port = 7000 # 令牌,和服务端一致 # token = your_token [web_2] # 使用TCP协议进行转发 type = tcp # 应用程序本地的IP,默认即可 local_ip = 127.0.0.1 # 应用程序本地的访问端口号 local_port = 3389 # 暴露的本地端口号 # 应用程序外网的访问端口号 remote_port = 9001 [ssh_2] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 9022 -
运行
windows直接点击运行
Linux执行 ./frps 或./frpc
解决后台问题可以使用screen,在新的窗口内运行挂起即可
常用screen参数 screen -S session_name # 新建一个叫session_name的session screen -ls(或者screen -list) # 列出当前所有的session screen -r session_name # 回到session_name这个session screen -d session_name # 远程detach某个session(类似挂起) screen -d -r session_name # 结束当前session并回到session_name这个session 进入screen窗口后,想暂时退出(等会还想连接这个screen窗口) crtl+a+d 退出当前screen窗口,结束当前screen窗口,不想再连接回来(即杀死会话) exit或者ctrl+d 强制杀死 screen -wipe xxx -
连接
以ssh为例 ssh -p 9022 user@xxx.xxx.xxx.xxx-p后加本地端口映射的远程端口号,@后的IP为服务器IP
更多用途可以在官网查看:https://gofrp.org/zh-cn/docs/
3. docker-虚拟机容器
用于一键部署各种应用
应用可以在docker hub找到:hub.docker.com
安装可以使用官方脚本一键部署
安装
curl -sSL https://get.docker.com/ | sh --- 官方
添加至用户组,解决权限问题,省去每次使用sudo
sudo gpasswd -a $USER docker
sudo systemctl restart docker
4. rustdesk-远程桌面(docker部署)
需要先安装docker,这里搭建的是中继服务器,用于提高连接速度
-
安装软件
sudo docker image pull rustdesk/rustdesk-server -
启动容器
sudo docker run --name hbbs -p 21115:21115 -p 21116:21116 -p 21116:21116/udp -p 21118:21118 -v "$PWD/data:/root" -d rustdesk/rustdesk-server hbbs -r 服务器IP或域名 sudo docker run --name hbbr -p 21117:21117 -p 21119:21119 -v "$PWD/data:/root" -d rustdesk/rustdesk-server hbbrhbbs和hbbr都是需要启动的,容器启动后需要设置服务器防火墙
注:21116是udp协议,防火墙设置时要注意,否则中继会有问题
-
获取key
docker hbbs容器中 key会自动生成
进入docker容器后复制,在客户端中使用
docker exec -it hbbs bash cat ./id_ed25519.pub如果要更改key,删除 id_ed25519 和 id_ed25519.pub 文件并重新启动 hbbs/hbbr,hbbs将会产生新的密钥对
-
客户端配置,以windows为例
id与中继服务器均为服务器IP

5. nextcloud-个人网盘(docker部署)
搭建网盘时需要先配置数据库,这里用docker部署mysql
-
拉取镜像
sudo docker pull mysql sudo docker pull nextcloud -
配置数据库
sudo docker run --name mysql -d -e MYSQL_ROOT_PASSWORD=xxxxx -p 3306:3306 mysql密码MYSQL_ROOT_PASSWORD自己设置,端口等也可以更改,用户名默认为root
-
启动nextcloud容器
docker run -d --restart=always --name nextcloud -p 80:80 nextcloud端口可以自定义
-
配置nextcloud
浏览器输入服务器地址

其中管理员账号是网盘登录管理用的
配置数据库点MySQL,用户名默认为数据库账户root,密码为配置数据库时的密码
数据库名自定义填nextcloud即可
数据库主机是服务器内网的IP地址,端口配置数据库时未修改的话为3306
最后点安装即可,加载可能需要一点时间
本文介绍了如何使用Samba在局域网中共享文件,FRP实现内网穿透让内网设备可见于公网,以及Docker部署虚拟机容器、rustdesk远程桌面和nextcloud个人网盘的方法。详细步骤包括安装、配置和启动过程。
1万+

被折叠的 条评论
为什么被折叠?



