Linux搭建FTP并安装xrdp,实现Windows系统下利用FileZilla传输文件和远程桌面连接

一、实现FTP文件传输

1、搭建FTP服务器:
sudo apt-get install vsftpd
sudo service vsftpd status

2、查看vsftpd是否正在运行,并监听21端口
netstat -npl | grep :21

or
sudo service vsftpd status # 查看 vsftpd 服务状态

3、配置vsftpd.conf
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf_backup
sudo vim /etc/vsftpd.conf

  • 编辑如下:
    listen=YES
    local_enable=YES
    write_enable=YES

4、开启sftp加密:

  • 查看是否开启了SSH服务:
    systemctl status sshd
  • 安装SSH服务:
    sudo apt install openssh-server
  • 启动SSH服务:
    sudo systemctl enable sshd
    sudo systemctl start sshd

二、实现Windows对Linux的远程连接

1、安装xrdp
sudo apt-get install xdrp

2、开启xrdp
sudo service xrdp start

or
sudo systemctl start xrdp

3、查看xrdp运行状态
sudo service xrdp status

4、查看ubuntu ip:ip a 找到 inet对应的ip地址

5、打开windows下的远程桌面,进行连接即可。

可以参考另一篇博文:在Windows11上安装ubuntu版linux系统并实现桌面图形化(WSL)

登录后黑屏问题

我在实际登录过程中,出现了一个问题就是,可以连接,但显示的是一个黑屏,针对这个问题怎么解决呢?这里提供两个方案:

1、参考网上教程,更改/etc/xrdp/startwm.sh,加入:

shell 复制代码
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR

2、创建一个独立的用于远程登录的账号,用创建的新账号进行登录:

shell 复制代码
sudo adduser jackrd
  • 查看系统中所有的用户:
    grep bash /etc/passwd

考虑为用户增加权限,修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:

bash 复制代码
# Allow root to run any commands anywhere
root    ALL=(ALL)     ALL
newuser   ALL=(ALL)     ALL

大功告成!

相关推荐
深度Linux2 小时前
Linux网络编程中的零拷贝:提升性能的秘密武器
linux·linux内核·零拷贝技术
chian-ocean6 小时前
从理论到实践:Linux 进程替换与 exec 系列函数
linux·运维·服务器
拎得清n6 小时前
UDP编程
linux
敖行客 Allthinker6 小时前
从 UTC 日期时间字符串获取 Unix 时间戳:C 和 C++ 中的挑战与解决方案
linux·运维·服务器·c++
夏尔Gaesar8 小时前
Vim安装与配置教程(解决软件包Vim没有安装可候选)
linux·编辑器·vim
hunter2062068 小时前
如何监控ubuntu系统某个程序的运行状态,如果程序出现异常,对其自动重启。
linux·chrome·ubuntu
大道戏8 小时前
如何本地部署DeepSeek
windows·ai·deepseek
慕雪华年9 小时前
【Linux】opencv在arm64上提示找不到libjasper-dev
linux·运维·opencv
skywalk816310 小时前
在Windows下安装Ollama并体验DeepSeek r1大模型
人工智能·windows·ollama·deepseek
s_little_monster11 小时前
【Linux】从硬件到软件了解进程
linux·运维·服务器·经验分享·笔记·学习·学习方法