如何使用xftp与linux连接

xftp连接Linux,先确认系统、SSH开、防火墙通、IP密码对,步骤:新建连接,填IP用户名密码,选SFTP,确定连。
问题:连接失败查IP端口,认证失败校用户名,卡顿重连或检查网。
注意:首次警告接受,保存配置方便连,文件传输前查空间。

如何配置SFTP服务器

直接上结论:
1 . 安装OpenSSH服务器。

Debian/Ubuntu:sudo apt update && sudo apt install openssh-server
2 . 创建SFTP用户组。

sudo groupadd sftp
3 . 创建SFTP用户。

sudo useradd -g sftp -s /sbin/nologin sftpuser
4 . 设置用户目录及权限。

sudo mkdir /home/sftpuser
sudo chown root:sftp /home/sftpuser
sudo chmod 7 5 5 /home/sftpuser
5 . 配置sshd_config。

编辑/etc/ssh/sshd_config,添加: Subsystem sftp internal-sftp MatchGroup sftp ChrootDirectory /home/sftpuser ForceCommand internal-sftp AllowTcpForwarding no X1 1 Forwarding no
6 . 重启SSH服务。

sudo systemctl restart sshd
7 . 配置防火墙(UFW)。

sudo ufw allow 2 2
8 . 测试SFTP连接。

使用FileZilla/WinSCP,输入sftpuser和密码。

安全建议:
定期更新软件。

使用强密码或SSH密钥认证。

监控日志/var/log/auth.log。

禁用Root登录:PermitRootLogin no。

注意事项:
路径不一致需同步修改。

多用户需独立目录。

日志排查journalctl -u sshd或/var/log/auth.log。

搞定。

Linux FTP Server如何加密传输

啊,Linux上搞FTP加密,这事儿得整明白。
2 02 2 年那会儿,我琢磨过这事儿。
主要就是FTPS和SFTP两种。

先说FTPS吧。
这个就是在老的FTP上面,加点SSL/TLS的壳儿,让它传输东西的时候加密。
得用能支持SSL/TLS的FTP服务器软件,像vsftpd或者ProFTPD这种。
我后来选了vsftpd,这玩意儿在当年用得挺多。

首先,得装上它和OpenSSL。
打开终端,敲:
bash sudo apt-get update sudo apt-get install vsftpd openssl
然后,得搞个SSL证书和私钥。
这个得自个儿签,就是自签名证书。
执行这个命令:
bash sudo openssl req -x5 09 -nodes -days 3 6 5 -newkey rsa:2 04 8 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem
按提示输点啥国家啊,组织啊,这些信息。
弄完之后,证书和私钥就放在 /etc/ssl/private/vsftpd.pem 这个文件里了。

接下来,得改改vsftpd的配置文件。
用这个命令打开它:
bash sudo nano /etc/vsftpd.conf
里面得加或者改几个参数:
plaintext ssl_enable=YES allow_anon_ssl=NO force_local_data_ssl=YES force_local_logins_ssl=YES ssl_tlsv1 =YES ssl_sslv2 =NO ssl_sslv3 =NO rsa_cert_file=/etc/ssl/private/vsftpd.pem rsa_private_key_file=/etc/ssl/private/vsftpd.pem
这些参数啥意思啊?ssl_enable=YES 就是开启SSL。
allow_anon_ssl=NO 是不让匿名用户用SSL,这挺好。
force_local_data_ssl=YES 和 force_local_logins_ssl=YES 是强制本地传输和登录用SSL。
ssl_tlsv1 =YES 是开启TLSv1 ,其他的SSLv2 和SSLv3 就不开了,这些老版本不安全。

改完保存,然后重启vsftpd服务:
bash sudo systemctl restart vsftpd
再说SFTP。
这个是基于SSH的,搞文件传输。
不用额外证书,就是用SSH那套加密通道来传文件。
我当年用的是OpenSSH。

首先,装上OpenSSH服务器:
bash sudo apt-get update sudo apt-get install openssh-server
然后,得改改SSH的配置文件。
用这个命令打开它:
bash sudo nano /etc/ssh/sshd_config
里面得找或者加这么一行:
plaintext Subsystem sftp /usr/lib/openssh/sftp-server
如果你想让用户只能用SFTP,不能SSH,可以改成:
plaintext Subsystem sftp internal-sftp
然后,可以再加点用户限制的配置,比如:
plaintext Match Group sftpusers ChrootDirectory /home ForceCommand internal-sftp AllowTcpForwarding no
这些是限制sftpusers这个组的用户,让他们只能在/home目录里,而且只能用SFTP,不能转发TCP。

改完保存,然后重启SSH服务:
bash sudo systemctl restart ssh
FTPS和SFTP,这俩有啥不一样呢?FTPS吧,它兼容传统的FTP客户端,支持显式和隐式加密。
但是,它得管证书,还得防火墙开个新端口,比如9 9 0那个。
适合啥环境呢?适合得兼容老系统,或者明确说要用FTP协议的那些地方。

SFTP呢,它是基于SSH的,不用管证书,防火墙默认的2 2 端口就行。
但是,它跟FTP不兼容,得用SFTP客户端。
适合啥环境?适合对安全性要求高的,或者已经用SSH的环境。

最后,怎么验证呢?FTPS的话,得用支持FTPS的客户端,比如FileZilla。
连的时候,地址、端口用2 1 ,用户名密码都对,然后在连接的时候选“显式FTP over TLS”。
SFTP的话,可以用命令行,或者用WinSCP这种客户端,端口是2 2 ,直接连。

就这样,Linux上FTP加密的事儿,基本就整明白了。
FTPS或者SFTP,看你要啥了。