如何远程家里的linux服务器
如何远程家里的linux服务器详细介绍
要远程访问家里的 = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 3600
启动服务
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
plaintext
#### 3. 防火墙配置(ufw)
```bash
# 允许SSH端口
sudo ufw allow 2222/tcp
# 禁止ping探测
sudo ufw deny icmp
# 查看规则
sudo ufw status
三、高级访问方案
1. VPN 远程访问(OpenVPN)
bash
openvpn easy-rsa
make-cadir /etc/openvpn/easy-rsa
/etc/openvpn/easy-rsa
./vars
./clean-all
./build-ca
./build-key-server server
./build-dh
/etc/openvpn/server.conf
port
proto udp
dev tun
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/server.crt
key /etc/openvpn/easy-rsa/keys/server.key
dh /e
2. VNC 图形界面(SSH 隧道)
bash
tightvncserver
vncserver :1 1920x1080
:localhost:5901 username@your_domain
localhost:1
四、网络诊断工具
1. 端口扫描(nmap)
bash
nmap your_domain
nmap your_domain
2. 路由跟踪(traceroute)
bash
your_domain
五、移动端访问
1. Android 设备(内置 VPN)
- 设置 → 网络和互联网 → VPN
- 添加 VPN 网络:
- 类型:PPTP/L2TP/IPsec
- 服务器地址:your_domain
- 用户名 / 密码:服务器账户
- 高级选项:启用 IPsec
2. iOS 设备(第三方应用)
- 下载
OpenVPN Connect - 导入服务器配置文件(.ovpn)
- 输入证书密码,连接
六、常见问题处理
- 连接超时:
- 检查路由器端口转发是否正确
- 确认动态 DNS 服务是否正常更新
- 防火墙规则是否放行相关端口
- 公钥认证失败:
- 确保
authorized_keys权限为 600 - 检查 SELinux/AppArmor 是否拦截
- 客户端私钥是否正确加载
- 确保
- VPN 连接失败:
- 验证证书有效期
- 检查服务器端日志(/var/log/openvpn/server.log)
- 确认 UDP 1194 端口是否开放
七、推荐工具列表
| 工具名称 | 平台 | 功能说明 |
|---|---|---|
| Termius | 全平台 | 现代化 SSH 客户端,支持密钥管理 |
| MobaXterm | Windows | 集成 X11 转发和 VNC 客户端 |
| Netmaker | 全平台 | 基于 WireGuard 的零信任网络 |
| DuckDNS | 云端服务 | 免费动态 DNS 解析 |
| Tailscale | 全平台 | 基于 WireGuard 的 VPN 服务 |
八、安全最佳实践
- 定期审计:
- 每月检查
/var/log/auth.log - 定期更换 SSH 端口
- 使用
fail2ban监控登录尝试
- 每月检查
- 双因素认证:
bashlibpam-google-authenticator
google-authenticator
/etc/pam.d/sshd
auth required pam_google_authenticator.so
- 日志监控:
bashelasticsearch logstash kibana
9123 apt-get install elasticsearch logstash kibana
通过以上方案,您可以安全、高效地实现对家庭 Linux 服务器的远程访问。建议根据实际需求选择合适的方案组合,并定期更新安全策略以应对不断变化的网络环境。
展开过程