访问SFTP服务器配置
一、服务器配置SFTP
1、安装SSH服务:
大多数Linux系统默认安装了SSH服务,如果没有安装,可以通过包管理器进行安装,在Debian衍生系统中(如Ubuntu),可以使用以下命令安装SSH服务:
sudo apt install openssh-server
2、创建SFTP账户:
创建一个仅用于SFTP文件传输的SSH账户,指定一个用于SFTP服务的共享文件夹,/home/sftp/”,创建一个用户组和一个SFTP账户:
groupadd sftpGroup useradd -d /home/sftp/test -s /bin/false -g sftpGroup test mkdir /home/sftp/test chown test:sftpGroup /home/sftp/test chmod 755 /home/sftp/test passwd test
3、修改SSH配置文件:
编辑/etc/ssh/sshd_config
文件,以使得之前创建的SSH账户可用于SFTP服务,使用vim或gedit编辑该文件:
vim /etc/ssh/sshd_config
找到并注释掉以下内容:
#Subsystem sftp /usr/libexec/openssh/sftp-server
在末尾补充如下内容:
Subsystem sftp internal-sftp Match User test ChrootDirectory /home/sftp X11Forwarding no AllowTcpForwarding no ForceCommand internal-sftp
如果需要修改端口及控制登录的客户机IP,可以在Match User
之前添加如下内容:
Port 22 AllowUsers test@IP地址
修改完成后,重启SSH服务:
sudo systemctl restart sshd # 对于CentOS sudo systemctl restart ssh # 对于Debian衍生系统
二、客户机连接SFTP
1、直接连接:
在确保SFTP服务端的IP可以访问的前提下,安装了SSH客户端的客户机就可以通过SFTP与服务端传输文件,可以使用如下命令查询Linux服务端的IP:
ifconfig
使用SFTP命令连接到服务器:
sftp test@服务器IP地址
输入密码后,即可进入SFTP交互模式。
2、常用指令:
ls
:列出远程目录的内容。
cd
:切换目录。
lcd
:切换本地目录。
get
:从远程获取文件到本地。
put
:将本地文件上传到远程。
exit
或bye
:退出SFTP会话。
3、免密连接:
为了实现免密连接,需要在客户机上生成密钥对,并将公钥添加到服务器的授权文件中,在客户机上生成密钥对:
ssh-keygen -t rsa
然后将公钥复制到服务器的授权文件中:
ssh-copy-id test@服务器IP地址
修改公钥名和位置以及私钥名和位置,以便后续使用。
4、挂载SFTP:
Linux挂载SFTP:
直接挂载:
mkdir /mnt/sftp sftp test@服务器IP地址:/home/sftp /mnt/sftp -o IdentityFile=~/.ssh/id_rsa
卸载共享目录:
fusermount -u /mnt/sftp
启动时自动挂载:编辑/etc/fstab
文件,添加以下内容:
test@服务器IP地址:/home/sftp /mnt/sftp fuse.sshfs noauto,x-systemd.automount,_netdev,IdentityFile=~/.ssh/id_rsa,allow_other,defaults 0 0
Windows挂载SFTP:使用WinSCP等工具进行挂载。
相关问题与解答
Q1: 如何更改SFTP服务器的端口号?
A1: 要更改SFTP服务器的端口号,可以编辑/etc/ssh/sshd_config
文件,并在文件开头添加或修改Port
参数,
Port 2222 ```然后重启SSH服务即可。Q2: 如何在Linux客户机上挂载SFTP服务器? A2: 在Linux客户机上挂载SFTP服务器,可以使用如下命令:
mkdir /mnt/sftp
sftp 用户名@服务器IP地址:/远程目录 /mnt/sftp -o IdentityFile=~/.ssh/id_rsa
``IdentityFile`参数指定了私钥文件的位置。
以上内容就是解答有关“访问sftp服务器配置”的详细内容了,我相信这篇文章可以为您解决一些疑惑,有任何问题欢迎留言反馈,谢谢阅读。
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/632366.html