#1 新建用于登录的用户
useradd -p `echo "KYmO4ClPt1" | openssl passwd -1 -salt $(< /dev/urandom tr -dc '[:alnum:]' | head -c 32) -stdin` 9pZ7IER8

KYmO4ClPt1: 用于ssh登录的用户密码

9pZ7IER8: 用于ssh登录的用户名

#2 切换到登录用户
su 9pZ7IER8

#3 创建用于存放秘钥的文件夹,路径/home/ssh用户

cd
mkdir .ssh
cd .ssh

#4 生成SSH密钥对

PS:密钥生成后一定先传输到本地,防止无法连接到远程主机,并且要记录密码密码。

ssh-keygen -t rsa

#5 注册公钥文件
cat id_rsa.pub >> authorized_keys
chmod 644 authorized_keys
cd ..
chmod 700 .ssh

#6 切换到root用户,修改ssh配置文件
su root

#7 开启RSA验证
sed -i -e 's/#RSAAuthentication yes/RSAAuthentication yes/g' /etc/ssh/sshd_config
sed -i -e 's/#PubkeyAuthentication yes/PubkeyAuthentication yes/g' /etc/ssh/sshd_config
sed -i -e 's/#AuthorizedKeysFile/AuthorizedKeysFile/g' /etc/ssh/sshd_config

#8 禁止用户采用password登录
sed -i -e 's/#AuthorizedKeysFile/AuthorizedKeysFile/g' /etc/ssh/sshd_config
sed -i -e 's/PasswordAuthentication yes/PasswordAuthentication no/g' /etc/ssh/sshd_config
sed -i -e 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config

#9 禁止用户以root身份进行登录
sed -i -e 's/#PermitRootLogin yes/PermitRootLogin no/g' /etc/ssh/sshd_config

#10 修改端口号
sed -i -e 's/#Port 22/Port 41042/g' /etc/ssh/sshd_config

#11 修改iptables
sed -i '11s/^/\-A INPUT -m state --state NEW -m tcp -p tcp --dport 41042 -j ACCEPT\n/g' /etc/sysconfig/iptables
service iptables restart

#12 重启sshd服务

PS:执行下面操作前,确认密码在本地,防止无法连接到远程主机。
service sshd restart

SSH使用密钥登录并禁止密码登录的更多相关文章

  1. SSH公钥登录且禁止密码登录及更改默认端口

    1.ssh生成公私钥 ssh-keygen -t rsa -C "zhangsan@qq.com" 生成密钥的位置如下,id_rsa是私钥.id_rsa.pub是公钥: ➜ .ss ...

  2. 服务器使用ssh秘钥登录并禁止密码登录

    问题: 最近在登录服务器的时候,每次都会有提示999+ falied login等字眼,意思就是自己的服务器密码正在被人暴力破解.想象以下,别人有了你的服务器的root登录密码,那么就可以对你的服务器 ...

  3. Linux生成ssh密钥免密登录,允许/禁止密码登录,允许/禁止root远程登录,更改ssh端口

    进入想要使用密钥登录的用户家目录 cd 或 cd ~ 执行密钥创建命令,不行可能需要下载openssh-server与openssh-client ssh-keygen -t rsa -P " ...

  4. SSH 使用密钥登录并禁止口令登录

    小结:修改下sshd配置文件,把公钥传上去就好了 先生成公钥和私钥,默认在/root/.ssh/目录,可以先看一下有没有这个目录. 生成公钥后,以后其它服务器也都可以复用这个公钥 最好生成时输入密码! ...

  5. ssh 公钥登录远程主机 并禁止密码登录

    https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys-on-centos7 如果在新的机器上,得先用密码登录一 ...

  6. SSH配置—Linux下实现免密码登录

    首先,假设我们有两台服务器,服务器名称分别是 master 和 slave1,我们现在需要做的就是在服务器 master 上面登录 服务器 slave1 不需要输入密码就可以登录成功,如下图所示. 下 ...

  7. ssh的配置,ssh打开密钥登陆,关闭密码登陆。

    刚装玩fedora,那么我们就以fedora为例来说一下怎么配置: 1.先确认是否已安装ssh服务: [root@localhost ~]# rpm -qa | grep openssh-server ...

  8. centos的key登录,关闭密码登录

    1.删除机器原有的key rm -rf /root/.ssh 2.创建key[root@rain ~]# ssh-keygen -t rsa一路回车 3.改名[root@rain ~]# mv /ro ...

  9. shiro整合shiro多验证登录(账号密码登录和使用手机验证码登录)

    1. 首先新建一个shiroConfig  shiro的配置类,代码如下: @Configuration是标识这个类是一个配置文件,在启动时会加载这个类里面的内容,这个配置文件的位置的一定一定一定不能 ...

随机推荐

  1. angular之自定义 directive

    1,指令的创建至少需要一个带有@Directive装饰器修饰的控制器类.@Directive装饰器指定了一个选择器名称,用于指出与此指令相关联的属性的名字. 2,创建一个highlight.direc ...

  2. wii 入门之路--fatt

    wii 入门之路--fatt system menu:系统界面,开机进入后,显示很多应用,4.1用IOS60. Channel:理解为界面中的软件应用和游戏. IOS:IOS(Input Output ...

  3. CentOS 6.3从自带的Pyhon版本

    本文介绍CentOS 6.3从自带的Pyhon版本是2.6升级到2.7.6的方法. 因为CentOS系统中旧版本的Python已被深度依赖,所以不能卸载原有的Python,只能全新安装. 1.下载Py ...

  4. CSS布局 — 圣杯布局与双飞翼布局

    圣杯布局 实现原理 html代码中,middle部分首先要放在container的最前部分,然后是left,right 将三者都设置 float:left, position:relative (因为 ...

  5. 十三、dbms_flashback(用于激活或禁止会话的flashback特征)

    1.概述 作用:用于激活或禁止会话的flashback特征,为了使得普通用户可以使用该包,必须要将执行该包的权限授予这些用户,grant execute on dbms_flashback to sc ...

  6. ftp的虚拟用户的搭建

    虚拟的搭建在安装的根匿名的一样,在改配置文件之前需要创建虚拟的账号 路径为/etc/vsftpd/ 创建pam认证文件 然后修改配置文件其余的文件配置跟本地的一样. 然后重启vsftpd服务 想要实现 ...

  7. python金融分析项目

    1.进入ipython: C:\Users\Administrator>ipython Python (v3. , ::) [MSC v. bit (AM D64)] Type 'copyrig ...

  8. 联想北研实习生面试-嵌入式Linux研发工程师

    8月中旬暑假去联想北研参加了实习生面试,面试职位是嵌入式Linux研发工程师.投完简历第二天,主管回复我邮件,意思是说随时来面试,到北研时候给他打个电话就行.于是我回复条短信表示感谢,并约好时间第二天 ...

  9. week13《java程序设计》第13次作业总结

    week13<java程序设计>第13次作业总结 1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 答: 1.IP与端口:ip和域名相对应,可找 ...

  10. c# 验证码图片生成类

    using System; using System.Collections.Generic; using System.Drawing; using System.Drawing.Drawing2D ...