从无到有构建一个Mini Linux(7)

31.编译安装dropbear

32.创建远程登录时,用到的目录

33.为目标系统生成密钥文件

34.设置安全的shells

35.开启网络服务转换功能

36.复制相应的库文件,路径要对应,没有则创建之

37.测试

31.编译安装dropbear

Dropbear是一个相对较小的SSH服务器和客户端

[[email protected] ~]# tar xf dropbear-2016.73.tar.bz2
[[email protected] ~]# cd dropbear-2016.73
[[email protected] dropbear-2016.73]# ./configure
[[email protected] dropbear-2016.73]# make && make install

复制相应的目录到目标主机对应的目录上(目录不存在则创建之)

[[email protected] dropbear-2016.73]# which dropbear
/usr/local/sbin/dropbear
[[email protected] dropbear-2016.73]# mkdir /mnt/sysroot/usr/local/sbin/ -pv
mkdir: created directory ‘/mnt/sysroot/usr/local‘
mkdir: created directory ‘/mnt/sysroot/usr/local/sbin/‘
[[email protected] dropbear-2016.73]# cp /usr/local/sbin/dropbear /mnt/sysroot/usr/local/sbin/
[[email protected] dropbear-2016.73]# which dropbearkey
/usr/local/bin/dropbearkey
[[email protected] dropbear-2016.73]# mkdir /mnt/sysroot/usr/local/bin/ -pv
mkdir: created directory ‘/mnt/sysroot/usr/local/bin/‘
[[email protected] dropbear-2016.73]# cp /usr/local/bin/dropbearkey /mnt/sysroot/usr/local/bin/
[[email protected] dropbear-2016.73]# which dbclient
/usr/local/bin/dbclient
[[email protected] dropbear-2016.73]# cp /usr/local/bin/dbclient /mnt/sysroot/usr/local/bin/
[[email protected] dropbear-2016.73]# tree /mnt/sysroot/usr/local/
/mnt/sysroot/usr/local/
├── bin
│   ├── dbclient
│   └── dropbearkey
└── sbin
    └── dropbear
2 directories, 3 files

32.创建远程登录时,用到的目录

[[email protected] dropbear-2016.73]# cd /mnt/sysroot/
[[email protected] sysroot]# mkdir dev/pts

[[email protected] sysroot]# vim etc/fstab
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/sda1 /boot ext4 defaults 0 0
/dev/sda2 / ext4 defaults 0 0
devpts /dev/pts devpts mode=620 0 0 --> 添加此行,实现开机自动挂载;mode 表示权限

33.为目标系统生成密钥文件

[[email protected] sysroot]# mkdir etc/dropbear
[[email protected] sysroot]# cd etc/dropbear/
[[email protected] dropbear]# dropbearkey -t rsa -s 2048 -f dropbear_rsa_host_key
[[email protected] dropbear]# dropbearkey -t dss  -f dropbear_dss_host_key

34.设置安全的shells

[[email protected] sysroot]# vim etc/shells

/bin/bash
/bin/ash
/bin/sh
/bin/hush
/sbin/nologin

35.开启网络服务转换功能

[[email protected] sysroot]# vim etc/nsswitch.conf

passwd:files
group:files
shadow:files
hosts:files dns

36.复制相应的库文件,路径要对应,没有则创建之

[[email protected] sysroot]# mkdir usr/lib64
[[email protected] sysroot]# cp -d /lib64/libnss_files* lib64/
[[email protected] sysroot]# cp -d /usr/lib64/libnss3.so usr/lib64/
[[email protected] sysroot]# cp -d /usr/lib64/libnssutil3.so usr/lib64/
[[email protected] sysroot]# cp -d /usr/lib64/libnss_files* usr/lib64/

37.测试

[[email protected] sysroot]# sync
[[email protected] sysroot]# sync

关闭宿主机

开启mini Linux
启动dropbear程序

利用另一台Linux 使用ssh登录到mini Linux
时间: 2024-10-09 23:18:27

从无到有构建一个Mini Linux(7)的相关文章

从无到有构建一个Mini Linux(4)

16.编译busybox 17.提供inittab文件 18.提供初始化脚本 19.第七次测试启动 16.编译busybox BusyBox简介     BusyBox 是一个集成了一百多个最常用linux命令和工具的软件.     BusyBox 包含了一些简单的工具,例如ls.cat和echo等等,还包含了一些更大.更复杂的工具,     如grep.find.mount以及telnet.有些人将 BusyBox 称为 Linux 工具里的瑞士军刀.     简单的说BusyBox就好像是个

从无到有构建一个Mini Linux(3)

10.重新编译内核使其支持键盘和鼠标驱动 11.第四次测试启动 12.利用脚本实现init功能 13.第五次测试启动 14.编译内核使其能够直接识别到设备文件 15.第六次测试启动 10.重新编译内核使其支持键盘和鼠标驱动 [[email protected] ~]# lsusb  //查看Usb接口类型和型号 [[email protected] ~]# cd /usr/src/linux [[email protected] ~]# make menuconfig //使其支持键盘和鼠标驱动

从无到有构建一个Mini Linux(2)

6.重新编译内核使其识别ext4文件系统 7.第二次测试启动 8.使用bash程序模拟init 9.第三次测试启动 6.重新编译内核使其识别ext4文件系统 [[email protected] ~]# cd /usr/src/linux [[email protected] linux]# make menuconfig //选择ext4文件驱动 File systems  ---> <*> The Extended 4 (ext4) filesystem [*]   Ext4 POS

从无到有构建一个Mini Linux(5)

20.编辑/etc/fstab文件,进一步完善 rc.sysinit 及 inittab文件 21.第八次测试启动 22.编译内核使用能够支持网络功能 (直接编译为核心) 23.第九次测试启动 24.编译内核使其能够支持网络功能 (编译为模块) 25.第十次测试启动 20.编辑/etc/fstab,完善 rc.sysinit.inittab [[email protected] sysroot]# vim etc/fstab sysfs /sys sysfs defaults 0 0 proc 

从无到有构建一个Mini Linux(6)

26.进一步增加功能(开机自动加载网卡驱动,设置主机名) 27.第十一次测试启动 28.创建/etc/sysconfig/network 及 /etc/issue文件 29.设置登录认证 30.第十二次测试启动 26.进一步增加功能(开机自动加载网卡驱动,设置主机名) [[email protected] ~]# cd /mnt/sysroot/ [[email protected] sysroot]# vim etc/rc.d/rc.sysinit  echo -e "\tWelcome to

从无到有构建一个Mini Linux(8)

遇到的问题及解决方式 1.dropbear启动时,如果提示缺少库,复制宿主机上的库文件到目录主机上 -bash-4.1# cd /usr/local/sbin -bash-4.1# ./dropbear -E -F 切换终端,查看端口是否监听 -bash-4.1# netstat -tln 2.此时dropbear并不在PATH环境变量中,要用绝对或相对路径启动之 3.root无法远程登录 ---查看dropbear运行时,提示的错误即可--- 4.可以新建一个普通用户,并添加密码 -bash-

构建一个mini linux系统

mini linux: 启动流程: centos6:post>bootsequence(bios)>BootLoader(mbr)>kernel(如无法直接识别硬盘驱动,需借助ramdisk)>rootfs>/sbin/init centos7:post>bootsequence(bios)>BootLoader(mbr)>kernel(如无法直接识别硬盘驱动,需借助ramfs)>rootfs>/sbin/systemd bootloader:l

第三周——构建一个简单的Linux系统MenuOS

[洪韶武 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 ] 第三周  构建一个简单的Linux系统MenuOS

构建一个简单的Linux系统 MenuOs —— start_kernel到init进程(20135304刘世鹏)

构建一个简单的Linux系统 MenuOs —— start_kernel到init进程 作者:刘世鹏20135304 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 Linux内核代码简介 内核源码三个个重要目录 arch占有代码量最大,支持不同cpu的源代码,arch/x86目录下的代码是我们关注的重点 init,内核启动相关的代码基本都在init目录下,init/main.c中start_kernel是整