温馨提示×

CentOS下SFTP会话如何管理

小樊
44
2025-02-24 21:09:29
栏目: 智能运维
Centos服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在CentOS系统下,SFTP(SSH File Transfer Protocol)会话的管理可以通过以下几种方式进行:

1. 使用SSH密钥认证

为了提高安全性,建议使用SSH密钥对进行认证,而不是密码。

生成密钥对

ssh-keygen -t rsa -b 4096

按照提示操作,通常会生成id_rsa(私钥)和id_rsa.pub(公钥)。

将公钥复制到远程服务器

ssh-copy-id user@remote_host

输入远程服务器的密码,完成公钥的复制。

2. 使用screentmux管理会话

screentmux是终端复用工具,可以在一个终端窗口中创建多个会话,并且可以在断开连接后重新连接。

安装screentmux

sudo yum install screen
# 或者
sudo yum install tmux

启动会话

screen -S sftp_session
# 或者
tmux new -s sftp_session

在会话中启动SFTP

sftp user@remote_host

分离会话

screen中按Ctrl+A然后按D,在tmux中按Ctrl+B然后按D

重新连接会话

screen -r sftp_session
# 或者
tmux attach -t sftp_session

3. 使用nohup&后台运行

如果你需要在后台运行SFTP会话,可以使用nohup&

nohup sftp user@remote_host &

这样即使关闭终端,SFTP会话也会继续运行。

4. 使用systemd服务管理

如果你需要将SFTP会话作为系统服务运行,可以使用systemd

创建服务文件

sudo nano /etc/systemd/system/sftp.service

添加以下内容:

[Unit]
Description=SFTP Service

[Service]
ExecStart=/usr/bin/sftp -D -oPort=22 user@remote_host
Restart=always
User=nobody
Group=nogroup

[Install]
WantedBy=multi-user.target

启动服务

sudo systemctl daemon-reload
sudo systemctl start sftp
sudo systemctl enable sftp

5. 使用fail2ban防止暴力破解

为了防止暴力破解SFTP登录,可以使用fail2ban

安装fail2ban

sudo yum install fail2ban

配置fail2ban

编辑/etc/fail2ban/jail.local文件,添加以下内容:

[DEFAULT]
bantime = 600
maxretry = 3

[sftp]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/secure

启动fail2ban

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

通过以上方法,你可以在CentOS系统下有效地管理SFTP会话,提高安全性和便利性。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:CentOS中SFTP会话如何管理

0