Linux开发日记(一):SSH登录

一.ssh生成

ssh有公钥和密钥,可要求生成passphrase,也可以没有。.pub为公钥。密钥保存在自己的Linux系统上。然后公钥上传到Linux服务器,之后我们就能无密码SSH登录了.SSH密钥就好比是你的身份证明。就是一种加密算法,有很多类型的,默认的RSA长度是2048位.

  1. 阿里云生成:阿里云默认生成2048位的rsa类型加密:https://helpcdn.aliyun.com/document_detail/51793.html
    Ssh-keygen
  2. 生成自己生成的密钥为id_rsa,存储在C:>Users>lenovo>.ssh文件夹中
    生成方式:制造密钥对,在Git Bash中使用root来生成rsa公约和密钥,命令:ssh-keygen -t rsa(若在系统中生成http://blog.csdn.net/spring292713/article/details/14000737)
    Linux开发日记(一):SSH登录_第1张图片
    http://blog.csdn.net/permike/article/details/52386868
[root@host] ssh-keygen  < ==建立密钥对
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): <== 按 Enter
Created directory '/root/.ssh'
Enter passphrase (empty for no passphrase): <== 输入密钥锁码,或直接按 Enter 留空
Enter same passphrase again: <== 再输入一遍密钥锁码
Your identification has been saved in /root/.ssh/id_rsa. <== 私钥
Your public key has been saved in /root/.ssh/id_rsa.pub. <== 公钥
The key fingerprint is:
0f:d3:e7:1a:1c:bd:5c:03:f1:19:f1:22:df:9b:cc:08 root@host

二.使用Xshell登录登录用户

http://blog.csdn.net/kangshihang1998/article/details/60465724?locationNum=2&fps=1

三.生成普通用户:sudo adduser bike

Linux开发日记(一):SSH登录_第2张图片
下面的内容若无要求,直接Enter即可
Linux开发日记(一):SSH登录_第3张图片

四.

更换bash和dash(sh):两种状态下的语句不同
相互切换:sudo dpkg-reconfigure dash
查看:/bin/sh
Linux开发日记(一):SSH登录_第4张图片

五.复制公钥(不确定,有待考究)

ssh4

六.设置root密码

Linux开发日记(一):SSH登录_第5张图片

  1. 修改普通用户权限,允许root

  2. chmod u+w /etc/sudoers//添加文件的写权限

  3. vi /etc/sudoers//添加普通用户的root权限

  4. chmod u-w /etc/sudoers//关闭文件的写权限

  5. 编辑/etc/sudoers文件。也就是输入命令"vim /etc/sudoers",进入编辑模式,找到这一 行:“root ALL=(ALL) ALL”(这一句不同系统可能不同)在起下面添加"xxx ALL=(ALL) ALL"(这里的xxx是你的用户名),然后保存退出。
    所以自行添加时需要关注root用户的格式,xxx用户应该要写成一样的

  6. root执行sudo时不需要输入密码(eudoers文件中有配置root ALL=(ALL) ALL这样一条规则)

  7. 欲切换的身份与执行者的身份相同,不需要输入密码

  8. /etc/sudoers文件设置为允许用户在不输入该用户的密码的情况下使用所有命令
    如设置允许wheel用户组中的用户在不输入该用户的密码的情况下使用所有命令
    ( %wheel ALL=(ALL) NOPASSWD: ALL)

ps:这里说下你可以sudoers添加下面四行中任意一条
youuser ALL=(ALL) ALL
%youuser ALL=(ALL) ALL
youuser ALL=(ALL) NOPASSWD: ALL
%youuser ALL=(ALL) NOPASSWD: ALL
第一行:允许用户youuser执行sudo命令(需要输入密码).
第二行:允许用户组youuser里面的用户执行sudo命令(需要输入密码).
第三行:允许用户youuser执行sudo命令,并且在执行的时候不输入密码.
第四行:允许用户组youuser里面的用户执行sudo命令,并且在执行的时候不输入密码.

七.格式化并挂载磁盘

格式化次磁盘
http://blog.chinaunix.net/uid-25829053-id-3067619.html
(Linux下添加新硬盘,分区及挂载)
1.查看磁盘和系统盘sudo fdisk -lu
Linux开发日记(一):SSH登录_第6张图片
2.查看格式化的类型sudo mkfs.
ssh7
3.查看磁盘具体内容sudo fdisk -l /dev/vdb
Linux开发日记(一):SSH登录_第7张图片
4.格式化磁盘mkfs -t ext4 /dev/vdb
ssh9

挂载磁盘

1.挂载磁盘到/mnt: mount /dev/vdb /mnt
2.查看挂载情况:df -TH
Linux开发日记(一):SSH登录_第8张图片
挂载:mount /dev/vdb /mnt
取消挂载:umount /dev/vdb /home

ssh 所选的用户密钥未在远程主机上注册
错误原因:硬盘本来挂载点为/mnt,修改为/home后用户没有修改权限,导致结果
错误修改方法:先把磁盘恢复挂载到/mnt 下面,然后把整个/home 文件夹内的内容在根目录下面复制一份,随便叫另外一个名字。然后再把磁盘挂载到/home 下面,然后再把之前copy出来的文件再copy进新的home文件夹下面。需要注意的是拷贝的只是/home中的内容,刚开始我就将/home中本来有的内容,拷贝成了/home/home,这样的话是没用的,必须和原来一样才可以

八.虚拟内存

虚拟内存:free -m可查看虚拟内存大小(swap大小,951为951MB大小)
https://wenku.baidu.com/view/0e23f9f9a6c30c2258019e3d.html
http://www.educity.cn/os/1577257.html
1.首先用命令free查看系统内 Swap 分区大小。 free -m
total used free shared buffers cached Mem: 1002 964 38 0 21 410 -/+ buffers/cache: 532 470 Swap: 951 32 929
可以看到 Swap 只有951M,不符合 Oracle-xe-client 的安装要求。
3.创建一个 Swap 文件。 mkdir swap
cd swap
sudo dd if=/dev/zero bs=1024 count=100000 of=swapfile
ssh11
出现下列提示,上面命令中的 count 即代表swap文件大小。
记录了 100000+0 的读入 记录了 100000+0 的写出
102400000 字节 (102 MB) 已复制,0.74704 秒,137 MB/秒
(count=2100000时大小为2G)
3.把生成的文件转换成 Swap 文件 (sudo) mkswap swapfile
Setting up swapspace version 1, size = 102395 kB
no label, UUID=09fde987-5567-498a-a60b-477e302a988b
出错记录:sudo dd if=/dev/zero of=swapfile bs=1024
count=100000
(dd语句从/dev/zero输入,系统不能识别bs和count的参数)
错误显示为:系统生成了一个名称为《swapfile bs=1024
count=100000 》的文件
ssh12
所以应该正确语句为sudo dd if=/dev/zero bs=1024 count=100000 of=swapfile
4.激活 Swap 文件: sudo swapon swapfile
再次查看 free -m 的结果。
total used free shared buffers cached Mem: 1002 967 34 0 22 410 -/+ buffers/cache: 534 467
5.若是临时生成swap
需要将swapfile删除: 如果需要卸载这个 swap 文件,可以进入建立的 swap 文件目录。执行下列命令。 sudo swapoff swapfile
如果需要一直保持这个 swap ,换到root 然后把它写入 /etc/fstab 文件,设置自动挂载。
swapfile path(修改) swap swap defaults 0 0
(需要再查一下)

九.保证普通用户一定可以登录,关闭ssh的root登录权限

vim /etc/ssh/sshd_config
关闭root权限
禁止root用户的登陆,修改/etc/ssh/sshd_config
permitrootlogin yes 改为
permitrootlogin no

你可能感兴趣的:(服务器)