在 CentOS 上“设置 SFTP 端口”,本质上是 修改 SSH 服务的端口(因为 SFTP 依赖 SSH)。下面分几种常见情况说明。
sudo vi /etc/ssh/sshd_config
找到或添加:
# 默认是 22
Port 2222
如果原来有
Port 22,可以保留(同时监听两个端口),或改为新端口。
sudo semanage port -a -t ssh_port_t -p tcp 2222
若未安装 semanage:
sudo yum install policycoreutils-python-utils -y
sudo firewall-cmd --permanent --add-port=2222/tcp
sudo firewall-cmd --reload
sudo systemctl restart sshd
sftp -P 2222 user@server_ip
SFTP 本身不能单独设端口,但可以通过:
sshd 实例cp /etc/ssh/sshd_config /etc/ssh/sshd_sftp.conf
Port 2222
Subsystem sftp internal-sftp
Match User sftpuser
ChrootDirectory /home/sftpuser
ForceCommand internal-sftp
cp /usr/lib/systemd/system/sshd.service /etc/systemd/system/sshd-sftp.service
修改 ExecStart 指向新配置,然后启动。
如果你需要:
可以告诉我你的使用场景,我给你完整配置示例。