17370845950

使用 xshell 登录 Windows 的 linux 子系统

以下是针对ssh服务器配置的详细指南,内容包括配置ssh服务器、使用xshell登录、设置windows开机自启ssh服务以及测试计划任务。文章内容保持原意,同时进行了伪原创处理。

1. 配置SSH服务器

首先,需要对SSH服务器进行配置。以下是详细步骤:

# 移除预装的SSH服务器
sudo apt-get remove openssh-server

安装新的SSH服务器

sudo apt-get install openssh-server

编辑配置文件

vim /etc/ssh/sshd_config

修改端口号,避免与Windows SSH服务端口冲突

Port 2222

启用密码登录

UsePrivilegeSeparation yes

允许root用户登录

PermitRootLogin yes

重启SSH服务

sudo service ssh --full-restart

2. 使用Xshell登录连接配置

要使用Xshell连接到Windows的Linux子系统,请按照以下步骤操作:

设置用户名和密码:

3. Windows配置开机自启

3.1 Windows计划任务配置

可以通过Windows自带的计划任务功能来设置开机启动Ubuntu SSH服务。按照以下步骤操作:

  • 搜索“任务计划程序”,选择“操作” - “创建基本任务”。
  • 触发器设置为“当计算机启动时”。
  • 操作选择“启动程序”,程序名设置为“bash.exe”(在默认打开的文件夹中查找)。
  • 数设置为:
    -c "sudo -u root /usr/sbin/sshd"
    ,以启动Linux子系统的SSH服务。
  • 选择“点击完成打开属性页”按钮,完成后打开属性页。
  • 在属性页中选择“使用最高权限运行”。

3.2 测试计划任务命令

以管理员身份打开DOS窗口,输入以下命令进行测试:

cd C:\WINDOWS\system32
bash.exe -c "sudo -u root /usr/sbin/sshd"

如果出现提示输入密码的弹窗,需要为

user1
用户进行后续配置。

3.3 Linux权限配置

由于计划任务自启动时无法输入密码,因此需要修改

/etc/sudoers
文件,允许
user1
用户在使用
sudo
时无需输入密码。

vim /etc/sudoers

添加以下行

user1 ALL=(ALL) NOPASSWD: ALL

完成上述配置后,重新测试步骤3.2中的命令,确认不再出现输入密码的提示。

4. 计划任务测试

配置完成后,首先关闭Linux的SSH服务:

sudo service ssh stop
ps aux | grep ssh

确认SSH服务已关闭。如果有其他行显示,使用

kill
命令关闭。

接下来,回到任务计划程序页面:

找到创建的计划任务,右键点击并选择手动运行,查看运行结果。如果“上次运行结果列”显示“操作成功完成”,则表示计划任务配置成功。