linux搭建SFTP服务

SFTP采用的是ssh加密隧道,安装性方面较FTP强,并且依赖的是系统自带的ssh服务html

FTP还须要额外的进行安装FTP服务linux

SFTP搭建流程:服务器

一、建立SFTP组ssh

$groupadd sftp  

建立完成以后使用cat /etc/group命令组的信息测试

$cat /etc/group

二、建立一个sftp用户mysftp并加入到建立的sftp组中,同时修改mysftp用户的密码加密

$useradd -g sftp -s /bin/false mysftp  

$passwd mysftp 

三、新建/data/sftp/mysftp目录,并将它指定为mysftp组用户的home目录3d

$mkdir -p /data/sftp/mysftp  

$usermod -d /data/sftp/mysftp mysftp  #修改mysftp用户的home目录为/data/sftp/mysftp

四、编辑配置文件/etc/ssh/sshd_configrest

$vi /etc/ssh/sshd_config

将以下这行用#符号注释掉code

# Subsystem      sftp    /usr/libexec/openssh/sftp-server  orm

并在文件最后面添加以下几行内容而后保存

Subsystem       sftp    internal-sftp    

Match Group sftp    

ChrootDirectory /data/sftp/%u    

ForceCommand    internal-sftp    

AllowTcpForwarding no    

X11Forwarding no  

linux如何搭建sftp服务器

五、设置目录权限

$chown root:sftp /data/sftp/mysftp  

$chmod 755 /data/sftp/mysftp

六、新建一个目录供sftp用户mysftp上传文件,这个目录全部者为mysftp全部组为sftp,全部者有写入权限全部组无写入权限 

$mkdir /data/sftp/mysftp/upload  

$chown mysftp:sftp /data/sftp/mysftp/upload  

$chmod 755 /data/sftp/mysftp/upload 

七、关闭selinux并重启sshd服务,而后测试

#关闭selinux
$setenforce 0
setenforce:SELinux is disabled
#重启sshd服务
$systemctl restart sshd.service

在其余服务器上进行验证,sftp 用户名@ip地址

linux如何搭建sftp服务器

注意:openssh的版本必须大于4.8p1

--------------------------------------------------

PHPSTORM设置同步SFTP

--------------------------------------------------

一、File->Create New Project form Existing Files,选择第4个,files are accessible via FTP/SFTP/FTPS,Next

二、Project local path 选择本地项目的地址,Project name 须要与本地目录同名,Next

三、远程服务器地址10.17.11.251,填写我的帐户密码后,能够点击Test Connection测试链接是否正常。记得勾选下方的Don't check HTTP connection to server,Next

四、选择远程服务器目标项目根目录,选择后点击上方的Project Root,如目录不存在,联系管理员建立。Next

五、finish

六、远程SFTP链接已经建立完成。

同步项目时,选择目标目录或者文件,右键->Deployment->Upload to...,选择对应的远程服务器。也可以使用快捷键Ctrl+Alt+Shift+X

勾选Tools->Deployment->Automatic Upload,每次本地修改保存后会自动同步远程服务器。

相关文章
相关标签/搜索