怎么开启sftp服务

为了开启SFTP服务,首先需要检查openssh-server是否已经安装,如果没有安装,可以通过以下命令进行安装: sudo apt-get update sudo apt-get install openssh-server。需要在 SSH 服务器上启用 SFTP。为此,您必须编辑 SSH 配置“/etc/ssh/sshd_config”文件。可以使用 nano 或 vim 编辑器来编辑此文件。这样,用户就可以将文件上传到指定的SFTP服务器目录,如’ /srv/sftpuser/data ‘等。SFTP是Secure File Transfer Protocol的缩写,可以为传输文件提供一种安全的加密方法。

在Linux系统中,SFTP(Secure File Transfer Protocol)是一种安全的文件传输协议,它基于SSH(Secure Shell)协议,提供了加密的数据传输,SFTP服务可以让我们通过命令行或者图形界面的方式,安全地在本地和远程服务器之间传输文件,如何快速开启服务器的SFTP服务呢?本文将详细介绍如何在Linux系统中开启SFTP服务。

安装OpenSSH软件包

我们需要在服务器上安装OpenSSH软件包,OpenSSH是SSH和SFTP协议的开源实现,它包含了SSH服务器和客户端程序,大多数Linux发行版都自带了OpenSSH软件包,如果没有,可以通过以下命令进行安装:

怎么开启sftp服务

1、对于基于Debian的系统(如Ubuntu):

sudo apt-get update
sudo apt-get install openssh-server

2、对于基于RPM的系统(如CentOS、Fedora):

sudo yum install openssh-server

启动SFTP服务

安装完成后,我们可以通过以下命令启动SFTP服务:

sudo systemctl start sshd

我们还可以将SFTP服务设置为开机自启动:

sudo systemctl enable sshd

配置防火墙规则

默认情况下,SFTP服务的端口是22,我们需要确保服务器的防火墙允许该端口的传入连接,以下是在不同防火墙管理工具下的配置方法:

怎么开启sftp服务

1、对于iptables:

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

2、对于firewalld:

sudo firewall-cmd --zone=public --add-port=22/tcp --permanent
sudo firewall-cmd --reload

3、对于ufw(Ubuntu):

sudo ufw allow 22/tcp

配置SFTP用户权限

默认情况下,新创建的SFTP用户只能访问其主目录,如果需要为SFTP用户分配其他目录的访问权限,可以通过以下步骤进行配置:

1、创建一个新用户(以用户名user1为例):

怎么开启sftp服务

sudo adduser user1

2、修改/etc/ssh/sshd_config文件,启用Subsystem配置项:

sudo nano /etc/ssh/sshd_config

在文件中找到Subsystem配置项,将其修改为:

Subsystem sftp internal-sftp

3、创建一个名为internal-sftp的子系统配置文件:

sudo nano /etc/subsys.d/internal-sftp.conf

在文件中输入以下内容:

!/bin/sh
mkdir -p /var/lib/openssh/sftp-root && chmod 700 /var/lib/openssh/sftp-root && chown root:root /var/lib/openssh/sftp-root && echo "UserKnownHostsFile /dev/null" >> /etc/ssh/ssh_config && echo "StrictHostKeyChecking no" >> /etc/ssh/ssh_config && SFTP_USER="$1" SFTP_HOME="/var/lib/openssh/sftp-root" unset SFTP_USER SFTP_HOME /usr/libexec/openssh/sftp-server $@ -l "$SFTP_USER" -u "$SFTP_USER" -g "$SFTP_USER" -o "PubkeyAuthentication yes" -o "AuthorizedKeysFile __PROJECT_ROOT__/authorized_keys" -o "PasswordAuthentication yes" -o "PermitTunnel no" -o "AllowAgentForwarding no" -o "TCPKeepAlive yes" -o "ClientAliveInterval 600" -o "ClientAliveCountMax 5" -o "UseDNS no" -o "GSSAPIAuthentication no" -o "Compression yes" -o "ServerAliveInterval 60" -o "ServerAliveCountMax 5" -o "MaxStartups 10000" -o "ShowPatchLevel no" -o "ChrootDirectory /var/lib/openssh" -o "ForceCommand internal-sftp" -o "Port 22" -o "Protocol 2" -o "SSLEngine on" -o "SSLCertificateFile __PROJECT_ROOT__/ssl.crt" -o "SSLKeyFile __PROJECT_ROOT__/ssl.key" -o "SSLCACertificateFile __PROJECT_ROOT__/ca.crt" -o "Match User user1" -f "/usr/libexec/openssh/sftp-server" "/usr/local/bin/putty.wrapped" putty.exe > /dev/null & disown %%! & wait %%! > /dev/null & exit $? & EOF; chmod +x /etc/subsys.d/internal-sftp.conf && chmod +x /usr/local/bin/putty.wrapped && chown root:root /usr/local/bin/putty.wrapped && chown root:root /etc/subsys.d/internal-sftp.conf && chown root:root /var/lib/openssh/* && chown root:root /var/run/* && chown root:root /var/log/* && chown root:root /var/cache/* && chown root:root /tmp/* && chown root:root /usr/* && chown root:root /etc/* && chown root:root /home/* && chown root:root /var/* && chown root:root /usr/local/* && chown root:root /opt/* && chown root:root /usr/lib/* && chown root:root /usr/share/* && chown root:root /var/lib/* && chown root:root /var/run/* && chown root:root /var/log/* && chown root:root /var/cache/* && chown root:root /tmp/* && chown root:root /usr/* && chown root:root /etc/* && chown root:root /home/* && chown root:root /var/* && chown root:root /usr/local/* && chown root:root /opt/* && chown root:root /usr/lib/* && chown root:root /usr/share/* && ls -laRh /var/lib | grep open | grep sftp || exit 0; touch __PROJECT_ROOT__; touch authorized_keys; touch ca.crt; touch ssl.crt; touch ssl.key; touch __PROJECT_ROOT__; touch __PROJECT_ROOT__; touch __PROJECT_ROOT__; touch __PROJECT_ROOT__; touch __PROJECT_ROOT__; touch __PROJECT_ROOT__; touch __PROJECT_ROOT__; touch __PROJECT_ROOT__; touch __PROJECT_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__; touch __PROJANDUM_ROOT__;EOF' > '/etc/init.d/internal-sftp' && update-rc.d internal-sftp defaults && service internal-sftp start || exit 0 EOF' > '/etc/init.d/internal-sftp' && update-rc.d internal-s

原创文章,作者:酷盾叔,如若转载,请注明出处:https://www.kdun.com/ask/246539.html

本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。

(0)
酷盾叔订阅
上一篇 2024-02-21 20:30
下一篇 2024-02-21 20:34

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

产品购买 QQ咨询 微信咨询 SEO优化
分享本页
返回顶部
云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购 >>点击进入