-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Two factor authentication ko KR
얼마전 Valve는 다양한 계정관련 행동에 추가적인 인증을 요구하도록 하는 "에스크로(Escrow)"로 알려진 시스템을 도입했습니다. 자세한 내용은 여기 와 여기 에 있습니다. ASF의 2단계 인증 뒤에 있는 논리구조를 이해하기에 앞서 2단계 인증 시스템을 먼저 이해하는것이 중요합니다.
이제 모든 거래는 15일간 멈추는 것을 알고 있습니다. 이는 ASF에서는 큰 문제는 아닙니다만 특히 완전 자동화를 원하는 이들에겐 여전히 귀찮을 수 있습니다. 다행히도, ASF는 이러한 문제를 해결할 수 있는, ASF 2단계 인증이라고 불리는 해결책을 내장하고 있습니다.
아래에서 설명할 ASF 2단계 인증의 사용여부와 상관없이 ASF는 적절한 논리구조를 가지고 있으며 표준 2단계 인증으로 보호받는 계정을 알고 있습니다. 예를 들어 로그인 중에도 필요하면 세부사항을 입력하도록 요청할 것입니다. ASF 2단계 인증을 사용한다면 이러한 요청을 건너뛰고 자동으로 필요한 토큰을 생성하여 번거로움을 줄이고 추가 기능을 활성화 할 것입니다.(아래 참조)
ASF 2단계 인증은 토큰 생성, 확인사항 수락과 같은 ASF 프로세스에 2단계 인증 기능을 제공하는 역할을 하는 내장 모듈입니다. 기존의 인증기를 복제하므로 ASF 2단계 인증만을 사용할 필요는 없습니다.
2fa
명령어 를 실행하여 봇 계정이 이미 ASF 2단계 인증을 사용중인지 확인할 수 있습니다. 당신의 인증기를 ASF 2단계 인증으로 이미 불러오지 않았다면 2fa
명령어는 작동하지 않을 것입니다. 즉, 당신의 계정은 ASF 2단계 인증을 사용하고 있지 않고, 이 모듈의 동작을 필요로 하는 ASF의 고급기능을 사용할 수 없다는 뜻입니다.
ASF 2단계 인증을 활성화 하려면 다음의 조건이 필요합니다:
- 정상동작하는 안드로이드용 Steam 인증기
- 혹은 정상동작하는 iOS용 Steam 이증기
- 혹은 정상동작하는 SteamDesktopAuthenticator 의 Steam 인증기
- 혹은 정상동작하는 WinAuth 용 Steam 인증기
- 혹은 공유/식별 비밀과 기기 ID에 접근가능한 정상동작하는 Steam 인증 구현
아래에 설명하는 단계를 완료하려면 Steam에 연결되고 작동가능한, ASF가 지원하는 인증기가 있어야 합니다. ASF는 현재 몇 가지의 다른 2단계 인증을 지원합니다. 안드로이드, iOS, SteamDesktopAuthenticator, WinAuth 입니다. 아직 인증기가 없다면 이것들 중 하나를 골라 먼저 설치해야 합니다. 어느 것을 골라야 할지 모르겠다면 WinAuth를 추천합니다. 물론 설명만 잘 따라한다면 다른 것들도 잘 작동할 것입니다.
아래의 모든 가이드는 정상동작하고 있는 인증기를 필요로 합니다. 유효하지 않은 데이터를 가져오면 ASF 2단계 인증은 정상적으로 동작하지 않을것이므로 데이터를 가져오기 전에 인증기가 정상 작동하는지 확인하여야 합니다. 다음의 인증기 기능이 정상 작동하는지 테스트하고 확인하십시오.
- 토큰을 생성하고 이 토큰이 Steam 네트워크에서 수락될 수 있어야 함
- 확인사항을 가져오고, 모바일 인증기에 도착할수 있어야 함
- 확인사항을 수락하고, Steam 네트워크에서 확인/거부로 정확하게 인식될 수 있어야 함
인증기가 위의 행동을 할 수 있는지 확인하십시오. 만약 안된다면 ASF에서도 동작하지 않을 것이고 시간만 낭비하고 문제가 발생할 것입니다.
일반적으로 안드로이드 전화기에서 인증기를 가져올때 루트 권한이 필요하지는 않습니다. 루팅은 기기마다 다르므로 어떻게 루팅하는지는 말씀드리지 않겠습니다. 일반적으로 루팅을 어떻게 하는지에 대한 훌륭한 가이드와 일반적 정보는 XDA 를 참고하십시오. 자신의 기기나 필요한 가이드를 찾을 수 없다면, 그다음으로는 구글에서 찾아보십시오.
적어도 공식적으로 루팅없이 보호된 Steam 파일에 접근하는 것은 불가능합니다. Steam 파일을 추출하는 루팅이 필요없는 유일한 공식적 방법은 암호화되지 않은 /data
백업을 이런 저런 방법으로 생성해서 그 중 적절한 파일을 PC에 수동으로 가져오는 것입니다. 이는 휴대전화 제조사에 매우 의존하고 안드로이드 표준이 아니므로 여기서 다루지는 않습니다. 운이 좋아서 그런 기능이 있다면 사용할 수 있겠지만 대부분의 사용자들은 그런 것이 없습니다.
비공식적으로 루트 권한 없이 필요한 파일을 추출하는 것은 가능합니다. Steam 앱을 2.1 버전 혹은 이전버전으로 설치 또는 다운그레이드 하고, 모바일 인증기를 설정한 후, adb backup
으로 앱과 우리가 필요로 하는 data
파일의 스냅샷을 생성하면 됩니다. 하지만 이는 심각한 보안 취약점이고 전혀 지원을 받을 수 없는 방법이므로 더이상 자세히 말하지는 않겠습니다. Valve는 새 버전에서 어떤 이유로 이 보안취약점을 막아버렸고, 우리는 단지 가능성만 언급하겠습니다.
당신이 휴대전화를 성공적으로 루팅했다고 가정하면, 그 다음엔 마켓에서 이것 과 같은, 혹은 선호하는 어떤 루트 탐색기를 다운로드해야 합니다. 보호된 파일은 ADB (Android Debug Bridge) 나 다른 어떤 방법으로도 접근이 가능한데, 우리는 가장 사용자 친화적인 방법인 탐색기를 사용하겠습니다.
루트 탐색기를 열었다면 /data/data
폴더로 이동하십시오. /data/data
디렉토리는 보호되어 있으며 루트 권한 없이 접근할 수 없음을 명심하십시오. 거기에서 com.valvesoftware.android.steam.community
폴더를 찾아 내장된 내부 저장소인 /sdcard
에 복사하십시오. 그 다음 휴대전화를 PC에 연결하고 그 폴더를 평소처럼 내부 저장소에서 복사하십시오. 복사를 제대로 했는데도 혹시 폴더가 보이지 않는다면 먼저 휴대전화를 재시작해보십시오.
Now, you can choose if you want to import your authenticator to WinAuth first, then to ASF, or to ASF right away. 첫번째 옵션은 더 친숙하고 인증기를 PC에 복제하여 전화기, PC, ASF 세가지 다른 곳에서 확인을 누르고 토큰을 생성할 수 있게 합니다. 이렇게 하려면 WinAuth를 열고, 새 Steam 인증기를 추가하고, 안드로이드에서 가져오기를 선택하고, 위에서 가져온 파일을 선택하여 지시를 따르십시오. 끝난 뒤에 이 인증기를 WinAuth에서 ASF로 가져올 수 있습니다. 방법은 아래의 WinAuth 항목에서 설명합니다.
WinAuth를 사용하고 싶지 않거나 필요없다면 보호된 디렉토리에서 files/Steamguard-SteamID
를 복사하십시오. SteamID
는 추가하려는 계정의 64비트 Steam 식별자입니다. (계정이 하나라면 이 파일이 유일하겠지만 계정이 두개 이상이라면 SteamID로 구별하십시오) 이 파일을 ASF의 config
디렉토리에 넣어야 합니다. 그 다음, 이 파일을 봇이름.maFile
로 이름을 변경하십시오. 봇이름
은 ASF 2단계 인증을 추가하려는 봇의 이름입니다. 이 단계 후에 ASF를 실행하십시오. ASF는 .maFile
을 인식하고 가져올 것입니다.
[*] 정보: ImportAuthenticator() <1> .maFile을 ASF 형식으로 변환하는 중...
<1> Device ID를 입력하세요. ("android:" 포함해서):
한 단계만 더 하면 됩니다. shared_prefs/steam.uuid.xml
에서 DeviceID
속성값을 찾으십시오. android:
로 시작하는 XML 태그 안에 있습니다. 이것을 복사해서(혹은 받아적어서) ASF가 요청하면 넣으십시오. 모든 것을 정확하게 했다면 가져오기가 완료될 것입니다.
[*] 정보: ImportAuthenticator() <1> 모바일 인증기 가져오기를 성공적으로 완료했습니다!
확인사항 수락이 실제로 동작하는지 확인하십시오. DeviceID
입력에서 실수했다면 반쪽자리 인증기를 갖고 있는 것입니다. 토큰은 동작하지만 확인사항 수락은 동작하지 않습니다. 필요하면 Bot.db
를 삭제하고 다시 시작할 수 있습니다.
iOS에서는 ios-steamguard-extractor 를 사용할 수 있습니다. 이는 암호화되지 않은 백업을 하고, PC에 이를 넣어서 다른 방법으로는 얻을 수 없는 Steam 데이터를 추출할 수 있다는 사실 덕분에 가능합니다. iOS 암호화때문에 탈옥없이는 불가능합니다.
프로그램을 다운로드 받으려면 최신 릴리스 로 가십시오. 데이터를 추출한 후 WinAuth에 넣고, WinAuth에서 ASF에 넣을 수 있습니다. 혹은 {
로 시작해서 }
로 끝나는 생성된 json 파일을 복사해서 봇이름.maFile
에 넣고 평소처럼 진행해도 됩니다. 저라면 WinAuth에 먼저 가져오고 토큰 생성과 확인사항 수락이 정상작동하는 것을 확인하는 쪽을 강력하게 권장합니다. 이렇게 하면 모든게 잘되고 있는지 확인할 수 있습니다. 자격 증명이 유효하지 않으면 ASF 2단계 인증은 정상작동하지 않을 것이므로 ASF 가져오기 단계를 마지막에 하는 것이 낫습니다.
질문이나 이슈는 이슈 를 참고하시기 바랍니다.
위의 도구는 비공식이므로 위험을 감수하고 사용한다는 사실을 명심하십시오. 제대로 동작하지 않는다고 해도 기술 지원을 제공하지 않습니다. 유효하지 않은 2단계 인증 자격증명을 내보낸다는 몇몇 징후를 받았습니다. ASF에 데이터를 가져오기 전에 WinAuth 같은 인증기에서 확인사항을 먼저 검증하십시오.
이미 SDA에서 실행되는 인증기가 있다면 maFiles
폴더에 steamID.maFile
파일이 있음을 알것입니다. 이 파일을 ASF의 config
로 복사하십시오. 이 .maFile
이 암호화되지 않은 형태인지 확인하십시오. ASF는 SDA 파일을 복호화할 수 없으며 암호화되지 않은 파일의 내용은 {
문자로 시작해야 합니다.
ASF 환경설정 디렉토리의 steamID.maFile
파일을 봇이름.maFile
로 이름을 바꿔야 합니다. 봇이름
은 ASF 2단계 인증을 추가하려는 봇의 이름입니다. 또는 그대로 둘 수도 있습니다. ASF는 로그인 후 자동으로 선택할 것입니다. ASF를 도와주면 ASF가 로그인 전에 ASF 2단계 인증을 사용할 수 있습니다. ASF를 도와주지 않으면, ASF가 성공적으로 로그인 한 후에 파일을 선택할 수 있습니다. ASF는 로그인 전에는 당신 계정의 steamID
를 모르기 때문입니다.
모든 것을 정확하게 했다면 ASF를 실행하고 다음화면을 보게 됩니다.
[*] 정보: ImportAuthenticator() <1> .maFile을 ASF 형식으로 변환하는 중...
[*] 정보: ImportAuthenticator() <1> 모바일 인증기 가져오기를 성공적으로 완료했습니다!
이제부터 이 계정의 ASF 2단계 인증이 작동하게됩니다.
먼저 새로운 빈 봇이름.maFile
파일을 ASF 환경설정 디렉토리에 생성하십시오. 봇이름
은 ASF 2단계 인증을 추가하려는 봇의 이름입니다. 파일명은 봇이름.maFile.txt
가 아닌 봇이름.maFile
이어야 함을 명심하십시오. 윈도우에서 알려진 확장자는 기본적으로 숨겨집니다. 부정확한 이름을 넣으면 ASF가 선택하지 않습니다.
이제 평소처럼 WinAuth를 실행하십시오. Steam 아이콘을 오른쪽 클릭하고 "Show SteamGuard and Recovery Code"를 선택하십시오. 그리고 "Allow copy"에 체크합니다. {
로 시작하는 친숙한 JSON 구조가 창의 아래쪽에 나타납니다. 이전 단계에서 생성한 봇이름.maFile
파일에 전체 텍스트를 복사해 넣습니다.
모든 것을 정확하게 했다면 ASF를 실행하고 다음화면을 보게 됩니다.
[*] 정보: ImportAuthenticator() <1> .maFile을 ASF 형식으로 변환하는 중...
<1> Device ID를 입력하세요. ("android:" 포함해서):
까다로운 부분이 왔습니다. WinAuth는 ASF가 필요로하는 deviceID 속성값이 없습니다. 따라서 한가지를 더 해야 합니다.
WinAuth의 "Show SteamGuard and Recovery Code" 메뉴로 돌아가십시오. 좀 전에 복사한 JSON 코드 위에 "Device ID" 속성값이 있을 것입니다. android:
부분을 포함한 안드로이드 device ID를 전부 복사해서 ASF에 넣습니다.
이것도 적절히 했다면 이제 끝입니다!
[*] 정보: ImportAuthenticator() <1> 모바일 인증기 가져오기를 성공적으로 완료했습니다!
확인사항 수락이 실제로 동작하는지 확인하십시오. DeviceID
입력에서 실수했다면 반쪽자리 인증기를 갖고 있는 것입니다. 토큰은 동작하지만 확인사항 수락은 동작하지 않습니다. 필요하면 Bot.db
를 삭제하고 다시 시작할 수 있습니다.
지금부터 모든 2fa
명령어가 기존의 2단계 인증 기기에서 호출한 것 처럼 작동할 것입니다. 토큰을 생성하고 확인사항을 수락하는 데 ASF 2단계 인증과 당신의 인증기(안드로이드, iOS, SDA, WinAuth)를 둘다 사용할 수 있습니다.
전화기에 인증기가 있다면 SteamDesktopAuthenticator 와 WinAuth는 더이상 필요가 없으므로 삭제해도 됩니다. 하지만 만일을 대비해서 남겨두길 권장합니다. 일반적인 스팀 인증기보다 더 편리한 것은 말할것도 없습니다. ASF 2단계 인증은 범용 인증기가 아닙니다. 따라서 절대로 유일한 인증기가 되어서는 안됩니다. ASF 2단계 인증은 인증기가 가지고 있어야 할 모든 데이터를 포함하고 있지도 않습니다. ASF 2단계 인증을 원래의 인증기로 변환할 수 없으므로, 범용 인증기를 WinAuth, SDA, 전화기같은 다른 곳에 가지고 있어야 합니다.
ASF 2단계 인증을 사용할 수 있으면 ASF는 ASF가 보내거나 받는 거래의 자동 수락에 2단계 인증을 사용합니다. 예를 들어 로그인 같이 필요에 따라 2단계 인증 토큰을 자동으로 생성할 수도 있습니다. 또한, ASF 2단계 인증은 2fa
명령어를 사용가능하게 합니다. 제가 까먹지 않았다면 지금은 이게 전부입니다. 기본적으로 ASF는 필요에 따라 2단계 인증 모듈을 사용합니다.
2단계 인증으로 보호된 계정에 접근하려면 2단계 인증 토큰이 필요합니다. 이는 ASF 2단계 인증이 있는 모든 계정을 포함합니다. 가져온 인증기에서 토큰을 생성해야 하지만, 해당 봇에 대화로 2fa
명령어를 보내 임시 토큰을 생성할 수도 있습니다. 해당 봇 인스턴스에 임시 토큰을 생성하기 위해 2fa <봇이름>
명령을 사용할 수도 있습니다. 이는 브라우저 등에서 봇 계정에 접근하기에는 충분하지만, 위에서 언급했다시피 안드로이드, iOS, SDA, WinAuth 등 원래의 인증기를 대신 사용해야 합니다.
네. 원래 인증기도 정상작동하며 ASF 2단계 인증과 함께 사용할 수 있습니다. 바로 그것이 전체 프로세스입니다. 당신 인증기의 자격증명을 ASF로 가져오고, ASF는 이를 이용하여 당신을 대신해 선택된 확인사항을 승낙합니다.
ASF 모바일 인증기는 해당 계정에 관련된 중요한 다른 데이터와 함께 환경설정 디렉토리의 봇이름.db
파일에 저장됩니다. ASF 2단계 인증을 제거하려면, 아래 내용을 읽어보십시오.
그냥 ASF를 중지하고 제거하려는 ASF 2단계 인증과 연결된 봇의 봇이름.db
파일을 삭제하십시오. 이렇게 하면 ASF로 가져온 2단계 인증은 제거되지만 인증기와의 연결을 끊지는 않습니다. 그 대신 인증기와의 연결을 끊고 싶다면, ASF에서 삭제하는 것과 상관없이 사용하는 안드로이드, iOS, SDA, WinAuth 등의 인증기에서 연결을 끊어야 합니다. 혹은 무슨 이유로든 그렇게 할 수 없다면 인증기와 연결되어있는 동안 받았던 복구 코드를 Steam 웹사이트에서 사용하십시오. ASF에서 인증기의 연결을 끊는 것은 불가능합니다. 이는 당신이 기존에 가지고 있는 범용 인증기를 사용해야 할 부분입니다.
아니오. ASF는 인증기 정보를 사용하기 위해 그 정보를 가져옵니다. 위의 질문에서처럼 먼저 ASF 2단계 인증을 제거하는 것과 상관없이, 인증기와 연결을 끊게 되면 ASF 2단계 인증도 기능을 멈추게 됩니다. 인증기를 전화기와 ASF(추가로 SDA/WinAuth) 양쪽에서 사용하고 싶다면 SDA/WinAuth에서 인증기를 생성하지 말고 전화기에서 인증기를 가져와야 합니다. 오직 하나의 인증기만 연결할 수 있습니다. ASF는 ASF 2단계 인증에서 사용하기 위해 그 인증기와 데이터를 가지고 옵니다. 동일한 인증기가, 그냥 두 곳에 있는 것 뿐입니다. 어떤 방식으로든 모바일 인증기 자격증명의 연결을 끊기로 결정했다면, 이전에 복사한 모바일 인증기 자격증명은 더이상 유효하지 않으므로 ASF 2단계 인증은 작동을 멈출것입니다. ASF 2단계 인증과 전화기의 인증기를 함께 사용하기 위해서는 위에서 설명한대로 안드로이드/iOS에서 가져와야만 합니다.
여러가지 측면에서 그렇습니다. 첫째, 그리고 가장 중요한 것은 ASF 2단계 인증은 보안을 상당히 증가시킵니다. ASF 2단계 인증 모듈은 ASF 자체의 확인사항만을 수락하므로, 공격자가 해로운 거래를 요청한다고 해도 ASF 2단계 인증은 ASF가 생성한 것이 아니기 때문에 그러한 거래를 수락하지 않습니다. 보안 측면에 추가해서, ASF 2단계 인증을 사용하면 성능/최적화 효과도 있습니다. SDA나 WinAuth등은 매 X분동안의 확인사항을 비효율적으로 모으는데 비해 ASF 2단계 인증은 확인사항이 생성되면 즉시 가져와서 수락합니다. 즉, ASF에서 생성된 확인사항을 자동화하려면 ASF 2단계 인증 대신 서드 파티 인증기를 사용할 이유가 없습니다. 이것이 ASF 2단계 인증의 존재이유이고, 당신이 사용하는 인증기로 그외의 것들을 확인하는데 아무런 지장을 주지 않습니다. 전체 ASF 활동에 ASF 2단계 인증을 사용하기를 강력하게 권장합니다. 다른 어떤 솔루션모다 훨씬 더 안전합니다.
고급사용자의 경우, 직접 maFile을 수동으로 생성할 수 있습니다. 파일은 유효한 JSON 구조 를 가져야 합니다:
{
"shared_secret": "STRING",
"identity_secret": "STRING",
"device_id": "STRING"
}
device_id
는 가져오기에서는 선택사항이었지만 ASF 동작을 위해서는 필수사항입니다. 생략하는 경우 가져오기 단계에서 묻는 창이 나옵니다. 물론 "STRING"
은 각 항목에 맞는 유효한 내용으로 대체하여야 합니다.
표준 인증기 데이터는 더 많은 항목이 있지만, ASF의 가져오기 단계에서 모두 무시되므로 필요하지 않습니다. 그렇다고 삭제할 필요는 없습니다. ASF는 위에서 설명한 2개의 필수 항목과 선택항목 device_id
로 구성된 유효한 JSON만을 필요로 합니다.
- 🏡 Home
- 🔧 환경설정
- 💬 FAQ
- ⚙️ Setting up (start here)
- 👥 백그라운드 게임 등록기
- 📢 Commands
- 🛠️ Compatibility
- 🧩 ItemsMatcherPlugin
- 📋 Management
- ⏱️ Performance
- 📡 Remote communication
- 👪 Steam 가족 공유
- 🔄 Trading