1.
准备与前提检查
- 检查:获取服务器公网 IP、SSH 端口(默认22)、用户名(如 root 或 deploy)、密码或公钥。
- 本地环境:确认已安装 OpenSSH(Linux/Mac)或 PuTTY/WinSCP(Windows)。
- 网络:若本地被 ISP 限制,请准备 VPN 或企业公网出站策略。
2.
通过 SSH 连接(基础操作)
- 命令(Linux/Mac):ssh user@IP -p 端口;示例:ssh root@203.0.113.5 -p 2222。
- Windows:用 PuTTY 填写 HostName 和 Port,设置 Saved Sessions 保存配置。
- 验证:首次连接会提示接受指纹,确认后保存;若失败看防火墙或端口是否被 ISP 屏蔽。
3.
设置 SSH 密钥认证(推荐)
- 生成密钥(本地):ssh-keygen -t rsa -b 4096 -C "youremail@example.com",按提示保存。
- 上传公钥:使用 ssh-copy-id -i ~/.ssh/id_rsa.pub -p 2222 user@IP 或手动追加到服务器 ~/.ssh/authorized_keys 并 chmod 600。
- 测试免密登录:ssh -i ~/.ssh/id_rsa -p 2222 user@IP,若成功可禁用密码认证(编辑 /etc/ssh/sshd_config)。
4.
SCP 与 SFTP 传输文件(简单可靠)
- scp(单文件):scp -P 2222 /local/path/file.tar.gz user@IP:/remote/path/。
- scp(目录):scp -r -P 2222 /local/dir user@IP:/remote/。
- sftp:sftp -oPort=2222 user@IP,常用于交互式上传下载;Windows 用 WinSCP 或 FileZilla 填写端口与密钥。
5.
rsync(增量同步与高效传输)
- 基本命令:rsync -avz -e "ssh -p 2222" /local/dir/ user@IP:/remote/dir/。
- 选项说明:-a 保持属性,-v 显示过程,-z 压缩节省带宽,--delete 同步删除。
- 场景:部署静态文件、备份定时任务(结合 cron)。
6.
在 Windows 上使用 WinSCP / PuTTY 的实操
- WinSCP:新建站点填 IP、Port、用户名,选择 SSH 密钥(Tools→Preferences→Authentication 指定 ppk)。
- PuTTYgen:将 OpenSSH 私钥转换为 ppk,页面启动 Pageant 加载私钥可实现免密。
- 注意:WinSCP 的同步和目录比较功能适合单向部署与回滚。
7.
设置服务器端 FTP/SFTP 服务(可选)
- 推荐用 SFTP(与 SSH 一致),若需 FTP 可安装 vsftpd 并禁止匿名登录。
- 配置要点:仅允许特定用户、启用 chroot 限制目录、使用 TLS/SSL,以避免明文传输。
- 测试:从外网用 FileZilla 连接并验证读写权限与速度。
8.
安全加固与运维工具
- 防火墙:使用 ufw(Ubuntu)或 firewall-cmd,示例 ufw allow 2222/tcp;只开放必要端口。
- 防暴力与监控:安装 fail2ban 针对 SSH,设置 ban 时间与阈值;安装 htop、ncdu、logwatch。
- 自动化:把常用 rsync/scp 写成脚本,并用 cron 或 CI(GitLab CI/GitHub Actions)触发。
9.
远程故障处理与常见问题
- 无法连通:本地 traceroute/ipconfig,确认服务器防火墙、ISP 或云商控制面板的安全组。
- 权限问题:检查目标目录权限(chown/chmod),SFTP 通常受 chroot 限制。
- 传输中断:rsync 可断点续传,scp 则重新传输;使用 screen 或 tmux 在服务器上保持会话。
10.
性能与可靠性优化建议
- 大文件分片:用 rsync 或 split 分割大文件再传;或启用 gzip 压缩参数。
- 带宽限制:rsync --bwlimit=KBPS 控制占用,避免影响生产网络。
- 备份策略:本地定期拉取快照到异地(另一台服务器或本地 NAS),并测试恢复流程。
11.
问:如何在本地被 NAT 或防火墙限制时仍访问柬埔寨服务器?
-
12.
答:
- 方案一:使用 VPN(OpenVPN/WireGuard)将本地网络连到可出站的公网;
- 方案二:使用跳板机(bastion host)或反向 SSH 隧道(ssh -R),将服务器端口映射回可访问主机。
13.
问:上传大量小文件速度慢怎么办?
-
14.
答:
- 合并打包:先 tar.gz 打包再传输(tar -czf archive.tar.gz dir/),传输后解压以减少握手开销;
- 或用 rsync 的 -z 压缩与 --partial 参数,减少重传开销。
15.
问:如何保证长期运维安全与可恢复性?
-
16.
答:
- 定期备份并验证恢复、启用 SSH 密钥与两步验证、只开放必要端口并启用 fail2ban 与日志告警,保持系统与软件补丁及时更新。
来源:怎么上柬埔寨服务器实现文件传输与远程运维的最佳实践