Win 10可以使用原生的Linux了,但是界面真的是超级难用,所以想配置xhsell登录。网上的教程比较零散,这里记录下使用xshell登录bash的经验。
准备
- Xshell
- Ubuntu on windows
配置ssh server
自带的ssh server不好用,先卸载再安装即可。
// 卸载
sudo apt-get remove openssh-server
// 安装
sudo apt-get install openssh-server
// 编辑配置文件
// vim /etc/ssh/sshd_config
Port 36000 # 默认的是22,但是windows有自己的ssh服务用的也是22端口,修改一下
UsePrivilegeSeparation no
// 重启ssh服务
sudo service ssh --full-restart
配置中有一项PasswordAuthentication
, 改为yes
可以使用密码登录,这里我们使用ssh秘钥对登录,所以使用默认no
生成公钥秘钥
生成秘钥、私钥
xshell
> 工具
> 新建用户秘钥生成向导
> 下一步,具体如图。
上传公钥到server
目标地址是/root/.ssh/authorized_keys
文件,没有则新建
cd /root
mkdir .ssh
mv /mnt/d/download/key.pub /root/.ssh
cat key.pub > authorized_keys
这里注意网上很多例子是用xshell先密码登录,然后rz
命令将公钥文件传输至服务器,但是windows的Ubuntu可以在硬盘找到,直接cp或mv就很方便,只要知道D盘加载在/mnt/d
目录下,其他类似
配置xshell
xshell新建会话,简单配置下。
-
名称随便取,主机地址使用
新建会话127.0.0.1
, 端口号与第一步配置server时一致,这里用36000
-
连接-用户身份验证,选择
配置密钥登录public key
,用户名为 root (因为/root/.ssh),私钥选择第一步生成的私钥名称,密码是当时输入的密码,点击确认。
点击连接,大功告成。
登录成功界面
彩蛋:配置ssh服务开机启动
bash必须得一直开着,否则ssh服务就被关闭了
可以使用windows自带的定时任务计划上添加开机启动Ubuntu ssh服务的任务。
搜索“任务计划程序”,操作-- 创建基本任务
- 触发器:当计算机启动时
- 操作:启动程序
- 程序名:bash.exe
- 参数为
-c \"sudo /usr/sbin/sshd -D\""
意思是打开bash,执行sshd命令开启ssh服务 - 选择“点击完成打开属性页”按钮,点击完成,打开属性页
- 在属性页选择“使用最高权限运行”,避免错误。
以上配置后,每次开机都会自动打开bash,可以直接使用xshell连接你的ubuntu on Linux
参考:
网友评论
Connecting to 127.0.0.1:2222...
Could not connect to '127.0.0.1' (port 2222): Connection failed.
Type `help' to learn how to use Xshell prompt.