ArchiSteamFarm 에서 IPC를 통한 웹브라우저로 봇을 제어할 수 있다.

하지만 기본적으로 로컬 접속만 허용되어 있는데 이를 풀기 위해서는 약간의 수정이 필요하다.

먼저 https://yellowtopaz.tistory.com/196 에서 작성했던 ASF.json 파일을 수정해야한다.


1. 환경설정

이전 글 내용대로 설정을 했다면 다음과 같은 설정 파일들을 만졌을 것이다.

ArchiSteamFarm[폴더]
├ArchiSteamFarm
└config
 ├ASF.json  (수정 필요)
 ├ASF.db
 ├사용자계정.json
 ├사용자계정.db
 ├사용자계정.bin
 └IPC.config (추가)

ASF.json 전역 설정파일을 수정하고, IPC.config 파일을 새로 만들어야 한다.


1.1. ASF.json

IPC관련 설정값을 기입하고 저장한다.

{

  "s_SteamOwnerID": "사용자 계정의 STEAMID64 숫자",

  "CurrentCulture": "ko-KR",

  "IPC": true,

  "IPCPassword": "접속 비밀번호"

}

비밀번호는 없어도 되지만 설정하는 것을 추천한다.

(공유기를 해킹당하면 답이 없다.)



1.2. IPC.config

config 폴더 안에 IPC.config 라는 파일을 추가하고 내용을 작성한다.

JSON 형태이고 간단하게 "관리용이름":{"URL": "http://접근허용IP:PORT"} 의 구조를 가진다.

WIKI예제

{
"Kestrel": {
"Endpoints": {
"example-http4": {
"Url": "http://127.0.0.1:1242"
},
"example-http6": {
"Url": "http://[::1]:1242"
},
"example-https4": {
"Url": "https://127.0.0.1:1242",
"Certificate": {
"Path": "/path/to/certificate.pfx",
"Password": "passwordToPfxFileAbove"
}
},
"example-https6": {
"Url": "https://[::1]:1242",
"Certificate": {
"Path": "/path/to/certificate.pfx",
"Password": "passwordToPfxFileAbove"
}
}
},
"PathBase": "/"
}
}

WIKI 예제에는 위와 같이 나열되어 있고 상세하게 설정하고 싶다면 위 예제에서 세부 내용을 고쳐서 작성하고, 귀찮다면 간단하게 공유기 대역만 열어서 공유기 환경에서는 자유롭게 접근할 수 있도록 설정하고자 한다면 다음처럼 내용을 작성 후 저장하면 된다.

케이스1) 단순형태 IPC.config

{
"Kestrel": {
"Endpoints": {
"HTTP": {
"Url": "http://192.168.0.*:1242"
}
}
}
}

IP 대역을 "Url": "http://*:1242" 로 설정하는 경우 외부에서도 접근이 가능하게 되며,
보안 등 신경써야 할 항목들이 늘어난다. 그래서 간단히 공유기에서 IP를 부여하는 대역만큼만 접근을 열면 아무래도 신경 쓸 내용이 많이 줄어들 것 이다.


케이스2) 여러 대역 설정 IPC.config

여러 대역을 통해 다음처럼도 작성할 수 있다.
또한 접속 경로별로 패스워드를 설정할 수 있는 것 같다.

{
"Kestrel": {
"Endpoints": {
"LOCALHOST": { "Url": "http://127.0.0.1:1242" },
"LOCALNETWORK": { "Url": "http://192.168.0.2:1242" },
                        "WEB": {
                                   "Url": "http://*:1242",
                                   "Password": "pppppppp"
                                  }
}
}
}

이런식으로 구성할 수 있다.

IPC.config 파일을 저장하고 ArchiSteamFarm 을 재 실행 하면

"IPC 서버 시작..."
"IPC 서버 준비 완료!"

메시지가 나오면 정상적으로 설정 된 것이다.

웹 브라우저에서 http://아이피주소:1242 를 입력하면 봇 제어를 위한 페이지로 접근할 수 있다.


2. IPC사용 방법

웹 브라우저를 통해 접근하면 위 스크린샷과 같은 화면을 볼 수 있다.

메뉴 구성

구분

용도

제어

  홈

첫화면(업데이트 로그)

  명령어

명령어를 통한 봇 제어

  봇

봇 추가/관리

  로그

로그 확인 (screen -r 로 볼 수 있는 것과 동일)

환경설정

  설정

봇 설정값 갱신 (왜 이름이 설정인지 모름)

  일반 환경설정

ASF.json 전역설정

심플한 방식을 가지고 있고 메뉴 하단에 봇 현황과 파밍 예정시간, 메모리 점유율, 가동시간이 표시된다.

일반 환경설정의 경우 ASF.json 을 편집하는것과 동일하며 GUI로 편하게 구성되어있다.
고급사용자가 아닌 경우 별로 건드리지 않고 기본값을 사용하는 것을 추천한다.

단, REMOTE ACCESS.HEADLESS 의 경우 명령어 메뉴에서 봇에게 상태변경 등을 명령하기 위해서는 TRUE로 설정되어야 한다.
봇을 추가하여 스팀인증기를 통한 인증을 하는 것 또한 명령어를 통해서 수행할 수 있다.

만약 명령어가 아닌 수동으로 하고 싶은 경우 터미널에서 screen -r 명령어를 통해 인증기 번호를 입력할 수 있다.


주요 명령어

명령어 메뉴를 눌러 내용을 보면 검은 화면에 커서만 깜빡이고 있다.
터미널과 동일하게 명령어를 통해서 봇들을 제어한다.

모든 명령어에 대한 설명은 ASF WIKI를 통해 확인하고 자주 사용할 법한 명령어 몇개만 소개하고 마치고자 한다.

명령어

설명

commands

사용 가능한 명령어 리스트 출력

help [command]

도움말

stop [botfilename]

봇 실행중단

start [botfilename]

중단된 봇 실행

play [botfilename] [게임명]

수동으로 지정한 게임 실행
이 게임명은 실제 보유하지 않은 게임도 가능
단, 보유하지 않은 게임의 경우 "비 Steam 게임 중" 
상태메시지가 추가되며, "AFK" 나 "파밍 중"과 같이
자유롭게 메시지를 남기는 용도로도 사용됨.

farm [botfilename]

해당 봇의 카드 파밍 시작

input [botfilename] [type] [value]

봇에게 입력 행위를 할 수 있음
input [botfilename] TwoFactorAuthentication [ACFFG]
이런 형태로 스팀 인증기의 인증번호를 입력할 수 있음.

botfilename의 경우 사용자계정.json 으로 설정했던 json 파일명 즉 "사용자계정" 이다.
사용자계정 이라고 설명할까 하다가 로그인아이디, 프로필아이디 등과 혼동될 것 같아 botfilename 이라고 작성했다.


play 명령어를 통해서 입력하는 게임명은 한글,영문으로 작성 시 "비 Steam 게임 중"이라는 상태 메시지가 추가되며 https://steamdb.info/apps/ 에서 게임을 검색해서 숫자로된 AppID를 입력해야 게임 플레이타임이 누적된다.


봇을 여러개 동시에 돌릴 수 있다.

Happy Farming!

+ Recent posts