软件环境;ubuntu22,VMware15
本实验基于dns搭建好的ftp域名,使用客户端(Ubuntu)进行域名访问服务端服务器
root@huhy:~ ftp.hoyeong.com has address 192.168.200.160 root@huhy:~
服务端配置
安装ftp软件包
apt install -y vsftpd
备份配置文件好习惯
cp /etc/vsftpd.conf /etc/vsftpd.conf.bak
配置文件参数详解
anonymous_enable=YES anon_root=/var/ftp no_anon_password=YES/NO(NO) ftp_username=ftp anon_umask=022 anon_upload_enable=YES anon_world_readable_only=YES/NO(YES) anon_mkdir_write_enable=YES anon_other_write_enable=YES anon_max_rate=0 local_enable=YES local_root=/home/username chroot_local_user=YES/NO(NO) write_enable=YES/NO(YES) local_umask=022 file_open_mode=0755 dirmessage_enable=YES/NO(YES) message_file=.message banner_file=/etc/vsftpd/banner ftpd_banner=Welcome to BOB's FTP server chroot_list_enable=YES/NO(NO) chroot_list_file=/etc/vsftpd.chroot_list chroot_local_user=YES/NO(NO) userlist_file=/etc/vsftpd.user_list userlist_enable=YES/NO(NO) userlist_deny=YES/NO(YES) listen=YES listen_address=192.168.4.1 listen_port=21 write_enable=YES download_enable=YES userlist_enable=YES userlist_deny=YES max_clients=0 max_per_ip=0
修改配置文件
vim /etc/vsftpd.conf
重启服务生效
systemctl restart vsftpd
配置完后即可实现远程访问,上传下载文件
客户端测试
客户端配置dns的IP地址为域名解析
root@slave1:~ network: ethernets: ens33: dhcp4: no addresses: [192.168.200.101/24] gateway4: 192.168.200.2 nameservers: addresses: [192.168.200.160,8.8.8.8] version: 2 root@slave1:~ ftp.hoyeong.com has address 192.168.200.160 root@slave1:~
服务端/opt/下提前创建hoyeong.txt下载测试文档
root@huhy:/opt hoyeong.txt root@huhy:/opt
客户端/opt/下创建hwiung.txt上传测试文档
root@slave1:~ root@slave1:~ total 8 drwxr-xr-x 2 root root 4096 Nov 29 08:27 ./ drwxr-xr-x 19 root root 4096 Aug 29 14:42 ../ -rw-r--r-- 1 root root 0 Nov 29 08:27 hwiung.txt root@slave1:~
测试访问,客户端使用 ftp+地址的格式访问,由于配置了域名所以使用ftp+域名访问
注:客户端进入ftp服务器时会以当前目录作为起始目录,也就是说你在客户端/opt/下使用ftp访问服务端时使用上传文件就会以当前目录作为起始,访问时会以服务端的用户来进行访问,我的服务端只有一个huhy用户
ftp ftp.hoyeong.com Name (ftp.hoyeong.com:root):huhy 密码 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> ftp> cd /opt/ 250 Directory successfully changed. ftp> ls 229 Entering Extended Passive Mode (|||42970|) 150 Here comes the directory listing. -rw-r--r-- 1 0 0 0 Nov 29 08:25 hoyeong.txt 226 Directory send OK. ftp> get hoyeong.txt local: hoyeong.txt remote: hoyeong.txt 229 Entering Extended Passive Mode (|||34340|) 150 Opening BINARY mode data connection for hoyeong.txt (0 bytes). 0 0.00 KiB/s 226 Transfer complete. ftp> ftp> cd /home/huhy 250 Directory successfully changed. ftp> put hwiung.txt local: hwiung.txt remote: hwiung.txt 229 Entering Extended Passive Mode (|||26556|) 150 Ok to send data. 0 0.00 KiB/s 226 Transfer complete. ftp> ftp> exit 221 Goodbye.
验证上传的文件
ftp> exit 221 Goodbye.
验证下载的文件
root@slave1:/opt hoyeong.txt hwiung.txt root@slave1:/opt
如上测试,客户端可以自由访问etc、boot等目录,不安全,如下我们配置指定用户可以访问,且不能自由切换访问的目录
服务端下创建测试用户
root@huhy:~ root@huhy:~ root@huhy:~ New password: Retype new password: passwd: password updated successfully root@huhy:~ New password: Retype new password: passwd: password updated successfully root@huhy:~
修改配置文件
vim /etc/vsftpd.conf
userlist_file=/etc/vsftpd.user_list userlist_enable=YES userlist_deny=NO
root@huhy:~ ftpuser1 ftpuser2
重启生效
systemctl restart vsftpd
则只能被该/etc/vsftpd.user_list文件里面的用户访问,huhy用户拒绝访问
root@slave1:/opt Connected to ftp.hoyeong.com. 220 (vsFTPd 3.0.5) Name (ftp.hoyeong.com:root): huhy 530 Permission denied. ftp: Login failed ftp> user ftpuser1 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp>
修改配置文件
vim /etc/vsftpd.conf
chroot_local_user=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list allow_writeable_chroot=YES
root@huhy:~ ftpuser1
重启生效
systemctl restart vsftpd
ftpuser1用户可以自由切换目录
root@slave1:/opt Connected to ftp.hoyeong.com. 220 (vsFTPd 3.0.5) Name (ftp.hoyeong.com:root): ftpuser1 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> cd /opt 250 Directory successfully changed. ftp>
ftpuser2用户不能自由切换目录
root@slave1:/opt Connected to ftp.hoyeong.com. 220 (vsFTPd 3.0.5) Name (ftp.hoyeong.com:root): ftpuser2 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> cd /opt 550 Failed to change directory. ftp>
原文链接:https://blog.csdn.net/m0_56363537/article/details/128086772
© 版权声明
声明📢本站内容均来自互联网,归原创作者所有,如有侵权必删除。
本站文章皆由CC-4.0协议发布,如无来源则为原创,转载请注明出处。
THE END