호스트 이름 및 IP 주소의 원격 검색

호스트 이름 및 IP 주소의 원격 검색

내 환경에는 약 1000개의 프로덕션 서버가 있습니다. 모든 서버에서 직접 루트 로그인이 비활성화되어 있습니다. sudo 액세스 권한이 있는 사용자 "abc"가 있습니다. "abc"를 사용하여 각 컴퓨터에 로그인한 다음 sudo su -루트 액세스 권한을 얻었습니다.

이 스크립트를 Ubuntu 시스템에서 실행하고 RHEL 시스템에 연결하고 있다는 점에 유의하세요.

각 원격 서버 IP의 호스트 이름과 운영 체제 버전을 알아야 합니다.

그래서 원격 시스템에 연결하여 명령을 실행하고 출력을 로컬 파일에 저장하는 스크립트를 만들었습니다.

내가 만든 스크립트는 다음과 같습니다.

for i in `cat test1` 
do 
{ 
    echo "***************************$i***************************************" 
    sshpass -p 'password' ssh abc@ipaddress “/sbin/ifconfig >> /home/ankush/output.txt”
} 
done 

test1파일에 있는 모든 컴퓨터 IP 주소 에 연결하고 ifconfig원격 시스템에서 명령을 실행하지만 실행하지는 않습니다.

실행시 오류는 다음과 같습니다.

***************************ip address***************************************
bash: “/sbin/ifconfig: No such file or directory

답변1

각 원격 서버 IP의 호스트 이름과 운영 체제 버전을 알아야 합니다.

이를 수행하기 위한 훌륭한 도구가 있습니다 nmap. Ubuntu에서 작동합니다.여기.

예:

nmap -sP 192.168.1.*

이것은다른 링크이것은 효과가 있을 수 있습니다.

답변2

안시푸르다음과 같은 작업(및 그 이상)을 수행할 수 있습니다.

ansible remotehost -m setup

관련 정보