Metasploit 설치가 실패합니다. >= Ruby 2.1이 필요하지만 2.2가 있습니다.

Metasploit 설치가 실패합니다. >= Ruby 2.1이 필요하지만 2.2가 있습니다.

나는 문자 그대로 이틀 동안 메타스플로잇을 설치하려고 노력해 왔는데, 소프트웨어를 설치하는 데만 시간이 너무 많이 걸린다고 생각합니다. 저는 Arch Linux를 가지고 있고 AUR에서 Metasploit-git을 설치하려고 합니다. 나는 Arch Linux Metasploit 가이드를 따랐습니다.뿐만 아니라 이것.

나는 달려야 할 지점까지 가이드를 따라갔다 bundle install. 소수의 gem을 성공적으로 설치했지만 다음 오류로 인해 실패했습니다.

Gem::InstallError: metasploit-concern requires Ruby version >= 2.1.
An error occurred while installing metasploit-concern (0.4.0), and Bundler cannot continue.
Make sure that `gem install metasploit-concern -v '0.4.0'` succeeds before bundling.

다음은 일부 환경 변수입니다.

MY_RUBY_HOME=/home/me/.rvm/rubies/ruby-1.9.3-p551

RUBY_VERSION=ruby-2.2.1

PATH=/home/me/.rvm/gems/ruby-1.9.3-p551/bin:/home/me/.rvm/gems/ruby-1.9.3-p551@global/bin:/home/me/.rvm/rubies/ruby-1.9.3-p551/bin:/home/me/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/home/me/.gem/ruby/2.2.0/bin:/home/me/.rvm/bin:/home/me/.rvm/bin
GEM_HOME=/home/me/.rvm/gems/ruby-2.2.1

일부 변수에 Ruby-1.9가 표시되어 있지만 이에 대해 어떻게 해야 할지 잘 모르겠습니다. 출력은 다음과 ruby --version같습니다.

ruby 1.9.3p551 (2014-11-13 revision 48407) [x86_64-linux]

Ruby 2.2.1이 설치되어 있는데 왜 이것이 여전히 버전으로 표시되는지 모르겠습니다.

문제는 여러 인스턴스가 있다는 것이 밝혀졌습니다.

[[ -s "$HOME/.rvm/scripts/rvm" ]] && 소스 "$HOME/.rvm/scripts/rvm"

/etc/profile에서 하나만 빼고 모두 제거한 후 실행하면 rvm use --default 2.2.1이 문제가 해결되었습니다.

답변1

2일간의 시행착오 끝에 해결책을 찾았습니다. 아래 단계를 따르세요.하지만 먼저 VM에서 시도해 보세요. 이것은 나를 위해 일했습니다칼리 리눅스그것이 당신에게 효과가 있기를 바랍니다. 계속하기 전에 컴퓨터를 업데이트하세요.

  1. 자식 클론https://github.com/rapid7/metasploit-framework"폴더 이름"
  2. Ruby를 업데이트하려면 다음 단계를 따르세요. https://amionrails.wordpress.com/2014/02/10/install-rvm-ruby-on-rails-and-ruby-on-kali-linux/ 레일 설치까지 모든 단계를 따르세요.
  3. ./msfupdate - 계속되면 오류를 확인하세요.
  4. 다음을 설치하십시오: apt-get install build-essential libreadline-dev libssl-dev libpq5 libpq-dev libreadline5 libsqlite3-dev libpcap-dev openjdk-7-jre git-core autoconf postgresql pgadmin3 컬 zlib1g-dev libxml2-dev libxslt1-dev vncviewer libyaml -dev 컬 zlib1g-dev 루비-dev
  5. 보석 설치 번들
  6. 번들 설치
  7. ./msfupdate

다음으로 데이터베이스를 연결해야 합니다.

  1. 실행되고 있지 않으면 postgresql 서비스를 시작하십시오.
  2. su-포스트그레스
  3. createuser "사용자" -P -S -R -D
  4. Createdb -O "사용자" msf
  5. 출구
  6. 현재 git clone 폴더에 액세스 중인 경우 홈 폴더로 돌아갑니다.
  7. CD .msf4/
  8. nano -w 데이터베이스.yml

파일에 다음 줄을 추가하십시오. 프로덕션:
어댑터: postgresql
데이터베이스: msf
사용자 이름: "user"
비밀번호: "password"
호스트: 127.0.0.1
포트: 5432
풀: 75
시간 초과: 5


그런 다음 msf 폴더(git clone 폴더)로 돌아가서 실행합니다../msfconsole

이 형식에 대해 사과드립니다. 첫 번째 솔루션입니다. github에서 메타스플로잇 설치에 대한 튜토리얼을 제공한 hak5와 Ruby 업데이트에 대한 튜토리얼을 제공한 amionrails에 감사드립니다. 이것이 효과가 있는지 알려주세요.

관련 정보