关于渗透测试过程中的SSH免登陆

      渗透测试过程中,经常会遇到服务器的系统为Linux相关的情况,菜刀下查看权限的时候,有时候运气好还是root权限。很久之前对于root权限的linux服务器,在渗透过程中我还真不知道如何下手。后来,我知道了,如果是root权限,我们可以看一看是否开了22端口,如果开了,很好,可以通过SSH公钥认证方式登录服务器,达到对服务器的完全访问和控制操作。这篇文章也不是什么新文,网上也有,在这里我只是留个笔记,后续可能用得到。不多说,开始吧。

      公钥认证:是使用一对加密字符串,一个称为公钥(public key), 任何人都可以看到其内容,用于加密;另一个称为密钥(private key),只有拥有者才能看到,用于解密。 通过公钥加密过的密文使用密钥可以轻松解密,但根据公钥来猜测密钥却十分困难。在使用公钥认证之前,先检查一下服务器的ssh配置文件/etc/ssh/sshd_config

RSAAuthentication yes        # 启用 RSA 认证,默认为yes
PubkeyAuthentication yes     # 启用公钥认证,默认为yes

      以上配置只是基础配置,看了其他文章中的配置,有几个关键点如下:

RSAAuthentication yes
PubkeyAuthentication yes
ServerKeyBits 1024
PasswordAuthentication yes
PermitRootLogin yes
AuthorizedKeysFile .ssh/authorized_keys

      以上的配置可以保证既能通过证书免密码登录,又不影响通过用户名口令登录。如果配置都OK了,那就进行下一步吧。

      本地生成公钥和私钥:使用ssh-keygen命令来生成公私钥。我在虚拟机中的Kali中实现,如下图所示:

      执行上述命令后,就会在/root/.ssh/目录下生成公私钥。

      服务器设置:

      第一步:如果目标站点/root/.ssh/下已经存在authorized_keys文件,则将公钥文件追加到authorized_keys文件上。如果不存在authorized_keys,则上传公钥文件id_rsa.pub并重命名为authorized_keys。

id_rsa.pub >> ./authorized_keys

      第二步:修改authorized_keys权限为600,修改.ssh目录权限为700:

chmod 700 /root/.ssh
chmod 600 /root/.ssh/authorized_keys

      设置完成后,执行命令service sshd restart(有些可能是service ssh restart)来重启ssh。

      这样就可以免密码登录了。

时间: 2024-10-11 10:37:08

关于渗透测试过程中的SSH免登陆的相关文章

Centos 集群配置SSH免登陆脚本

首先编写脚本生成集群服务器列表: hostsList.sh #!/bin/bash preIp="11.11.225." pwd="dyj2017" for i in `seq 2 80`; do echo -e $preIp$i $pwd >> hostsLists.txt done hostsLists.txt 11.11.225.2 dyj2017 11.11.225.3 dyj2017 11.11.225.4 dyj2017 .... 11.11

SSH免登陆ESXI让操作更便捷安全(几种常用工具)

通常在企业环境中,管理员很少去机房在物理机面前进行操作,大部分管理员喜欢远程管理主机,这样既方便又高效.在windows上我们使用远程桌面,在Linux上则使用SSH来连接.ESXi就是一个以Linux为核心改写的操作系统,因此ESXi中也保留了SSH来远程管理的功能,下面介绍常用的几种工具SSH免登陆ESXI服务器: 注意:,ESXi默认没有开启SSH的,必须手动开启. 方法一.使用Xshell工具实现ssh远程免登陆设置. 打开Xshell工具,选择用户密钥管理者或者新建用户密钥生成向导生成

Linux2 在Linux(CentOS)上配置SSH免登陆

前言:      本文主要是我在安装hadoop之前,需要先配置SSH免登陆.通过网上搜索,发现不少类似的资料,但多少都有些小问题,所以结合自己的实践,记录在此,作为参考.如果能帮助到其他人,自然是更好啦. ============================================================长长的分割线===================================================================== 正文:      以

ssh免登陆问题排错

目的:在A机器免密码SSH登陆B 按照ssh免登陆在A(192.168.1.101)机器生成密要 ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa 将生成的id_rsa.pub 拷贝到B(192.168.1.102) scp ~/.ssh/id_rsa.pub [email protected]:/root/.ssh 然后登陆机器B,执行如下命令: cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys 此时尝试通过Assh

Mac OS X上如何实现到Linux主机的ssh免登陆

转载说明: 本文转载自 http://www.aips.me/mac-key-ssh-login-linux.html 生成密钥对 用密码登录远程主机,将公钥拷贝过去 done 第一步:生成密匙对执行命令 ssh-keygen -t rsa执行结果如下: 12345678910111213141516171819202122 [email protected]:~ > ssh-keygen -t rsaGenerating public/private rsa key pair.Enter fi

SSH免登陆(配置)

ssh 可以实现免登陆,无密码登录要使用公钥与私钥.linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS为例. 一)准备工作     主机node1,node2,node3 修改主机名(vi  /etc/sysconfig/network) 192.168.9.11 node1 192.168.9.22 node2 192.168.9.33 node3 二)查看ssh命令(使用node1生成公钥)     ssh -version 如果没有安装 yum -y insta

python ssh免登陆

#!/usr/bin/env python import os,sys import pexpect import time def Pai(line,passwd): try: cmd = "ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]%s" %line   ##命令 child = pexpect.spawn(cmd)         ##铺抓命令 i=child.expect(['continue','passwor

git + idea 配置 github设置ssh免登陆方式提交拉取代码

1.下载安装git,官网:https://git-scm.com/download/win  安装默认配置安装 git2.20版本地址百度网盘地址: 链接:https://pan.baidu.com/s/16HAgKWL2-XigyRTaLJZlDA&shfl=sharepset 提取码:5lxe 2.idea设置git:setting -->git -->  选择git安装的目录-->bin 目录下的git.exe文件 3.配置本电脑的git  key: 进入git的命令号界面

ssh免秘钥登陆实现

1.用处 搭建集群或者工作中登陆跳板机经常需要做免秘钥互相登陆彼此服务器. 2. 准备工作   假设A主机10.20.0.1想通过ssh登录到B主机10.20.0.2上.   那么客户端(A主机)需要安装ssh客户端软件,服务器端(B主机开机sshd进程)需要安装ssh服务器软件.   ssh客户端Linux发行版一般都自带的,对于ssh服务器端,Ubuntu用户可以sudo apt-get install openssh-server来安装,其他Linux用户也安装openssh-server