전용 서버 구성

From Team Fortress Wiki
Jump to: navigation, search

설치

Windows 전용 서버 설치

Team Fortress 2 Windows 전용 서버 설정법을 보려면, Windows 전용 서버 항목을 참조하세요.

이 문서에서는 Windows 기반 컴퓨터에서 Team Fortress 2 전용 서버를 만드는 법을 설명해줍니다. 먼저 Steam 콘솔 클라이언트 도구(또는 Steamcmd)를 사용해야 합니다. Steamcmd는 당신의 컴퓨터에 서버 콘텐츠의 최신 버전을 완벽하게 설치할 수 있도록 해 줍니다. 만약 이미 Steamcmd로 설치를 완료했다면, 도구가 현재 설치되어 있는 전용 서버를 최신 버전으로 업데이트해줍니다.

당신은 TF2 서버를 vojmar의 설치 도구 https://www.youtube.com/watch?v=0ZGScKWkPxg 로 설치하거나 http://media.steampowered.com/installer/steamcmd.zip 에서 Steamcmd를 내려받을 수 있습니다.

이 파일을 내려받고 명령어 셸에서 도구를 실행시키면 텍스트 windowed 설치 도구가 자동으로 당신의 서버를 설치하거나 업데이트할 것입니다. 시간과 파일을 내려받을 때의 트래픽을 아끼고 싶다면, 최신 Half-Life 전용 서버 설치 도구 root 폴더 안의 Steamcmd를 실행시키세요.


명령 행 설정 예시:

steamcmd +login anonymous +force_install_dir C:\tf2_server +app_update 232250 validate +quit

텍스트 파일로 명령 행을 보호하고 싶다면, 파일이 batch로 바뀌도록 확장자를 .bat 파일로 변경하세요. batch 파일은 언제나 업데이트할 수 있습니다.


더 자세한 설치 방법을 듣고 싶다면: SteamCMD (영어) 에 대한 Valve Developer Community (영어)

MOTD

MOTD는 "Message Of The Day"(오늘의 메시지)를 뜻합니다. 이것은 당신의 서버에 접속할 때마다 나타납니다. MOTD는 간단할 수도 있고, 복잡한 웹사이트 페이지일 수도 있습니다. 메시지를 수정하려면, orangebox/tf 폴더로 가서 이름이 motd.txtmotd_text.txt로 되어 있는 파일의 텍스트를 수정하세요(두 번째 파일은 플레이어가 게임 내에서 비활성화할 수 있는 HTML MOTD 파일입니다).

두 파일은 크기 제한이 있습니다. 한 파일은 크기가 1k를 넘어서는 안 됩니다(거의 1536개의 문자를 입력할 수 있는 크기입니다). motd_text.txt는 인터넷 브라우저 같은 HTML를 표시할 수 있습니다.

파일이 제한에 걸렸을 때 (크기 제한 등) 대안은 .html 파일을 웹으로 보낸 다음 링크를 거는 것입니다. 예를 들어 motd.txt: http://www.your-clan-website.com/motd.htmlmotd.html 파일을 표시하도록 할 수 있습니다.


TF2 게시판에 MOTD를 더 잘 만드는 법을 알고 싶다면: http://www.specialattack.net/node/39

http://hlds101.com/configuring.htm

Maplist

Maplist는 서버에서 플레이 가능한 맵 목록을 알려 주는 파일입니다. 만약 비공식 맵 투표 플러그인을 사용하기로 결심했다면, 맵 이름을 maplist.txt와 투표 목록에 적어 주세요. SRCDS(Source 전용 서버)로 플레이 가능 맵 목록을 수정할 수 있습니다. 이것은 orangebox/tf/maplist.txt에 들어있습니다.

비공식 맵을 추가하려면, .bsp 파일을 orangebox/tf/maps 디렉터리에 넣고 서버 디렉터리 안의 orangebox/tf/maplist.txt에서 maplist.txt를 찾아내고 목록에 이름을 추가하면 됩니다(맵 이름을 나열할 때, .bsp 확장자를 제외하고 .bsp 파일의 정확한 이름을 사용하세요).

치트 예방

VAC

Valve Anti-Cheat는 서버에서 부당한 프로그램을 사용하는 사용자들을 자동으로 찾아내고 추방시킵니다(이동속도 해킹, aimbot 사용과 sv_cheats noclip 명령어 사용 같은 과격한 사례까지). VAC는 모든 서버에서 기본적으로 활성화되어 있고 관리자가 -insecure 행을 시작 옵션에 추가해서 비활성화시킬 수 있습니다.

서버 설정

VAC가 서버를 확보한 후, 치트에 대항하는 첫 번째 수단은 서버 변수(콘솔 명령어) sv_pure입니다. 클라이언트는 플레이어가 대체/변경할 수 있으며, 콘텐츠 및 데이터를 제한하는 수단으로 사용할 때 이 변수를 제어합니다. 만약 적절하게 구성되어 있지 않다면 취약점이 발견되기 쉬워집니다. 만약 서버에서 치트를 사용하는 것을 원하지 않는다면 임의로 (중요하진 않음) 변수를 1 또는 2로 설정할 수 있습니다. 기본 설정은 sv_pure 0으로 되어 있습니다. 가능한 수치는 특별한 상황이 아니면 0, 1, 그리고 2로 변경할 수 있습니다.

sv_pure 0
클라이언트가 모든 게임 파일의 위치를 지정할 수 있습니다. 클라이언트는 부당한 이익을 얻기 위해 적군의 모델 스킨 색을 바꾸거나, 벽을 보이지 않게 하거나, 기밀 서류 가방을 빛나게 하는 식으로 파일을 변경할 수 있습니다. 이것은 게임 프로세스를 변경한 것이 아니기 때문에 VAC는 이런 취약점에 대응할 수 없습니다. 클라이언트가 무엇을 할 수 있는지는 서버에 달려 있습니다.
sv_pure 1
클라이언트는 white list (허용된 콘텐츠 목록)에 나와 있는 데이터만 사용할 수 있습니다. 기본적으로 white list는 사용자 지정 플레이어 모델 스킨 등은 불러올 수 있습니다.
sv_pure 2
클라이언트가 모든 사용자 콘텐츠를 무시하게 되고 Steam 지정 데이터만 사용할 수 있습니다. 이것이 작동되어 있는 동안, sv_pure 2는 모든 사용자 지정 스킨/모델과 스프레이를 사용할 수 없도록 합니다.

white list 포맷 데이터와 sv_pure 서버에 대해 더 많은 정보를 알고 싶다면 Pure_Servers (영어) 에 대한 Valve Developer Community (영어)를 참조하세요.


대부분의 서버는 white list를 수정하고 sv_pure1로 설정해서 플레이어가 콘텐츠 디렉터리를 허용하거나 독자적인 모델을 사용하기가 어렵거나 불가능하게 합니다.

서드 파티 플러그인

몇몇 서드 파티 플러그인/애드온은 악의적 플레이어로부터 대항하기도 합니다. 더 많은 정보를 보거나 플러그인을 확인하고 싶다면 SRCDS Hardening @ alliedmods.net을 참조하세요.

명령 행 설정

명령 행 설정 (영어) 에 대한 Valve Developer Community (영어)

빠른 게임

빠른 게임은 메인 메뉴플레이 시작 단추로 서버에 접속할 수 있도록 합니다. 이것은 빠른 게임을 위해 서버에서 지원하는 Steam 지원 지식 기본 항목으로, 여기에서 확인할 수 있습니다.

TF2 전용 서버 Server.cfg 예시

// General Settings //

// Hostname for server.
hostname yourserver.com TF2 Server

// Overrides the max players reported to prospective clients
sv_visiblemaxplayers 24

// Maximum number of rounds to play before server changes maps
mp_maxrounds 5

// Set to lock per-frame time elapse
host_framerate 0

// Set the pause state of the server
setpause 0

// Control where the client gets content from 
// 0 = anywhere, 1 = anywhere listed in white list, 2 = steam official content only
sv_pure 0

// Is the server pausable
sv_pausable 0

// Type of server 0=internet 1=lan
sv_lan 0

// Collect CPU usage stats
sv_stats 1



// Execute Banned Users //
exec banned_user.cfg
exec banned_ip.cfg
writeid
writeip



// Contact & Region //

// Contact email for server sysop
sv_contact emailaddy@google.com

// The region of the world to report this server in.
// -1 is the world, 0 is USA east coast, 1 is USA west coast
// 2 south america, 3 europe, 4 asia, 5 australia, 6 middle east, 7 africa
sv_region -1



// Rcon Settings //

// Password for rcon authentication
rcon_password yourpw

// Number of minutes to ban users who fail rcon authentication
sv_rcon_banpenalty 1440

// Max number of times a user can fail rcon authentication before being banned
sv_rcon_maxfailures 5



// Log Settings //

// Enables logging to file, console, and udp < on | off >.
log on

// Log server information to only one file.
sv_log_onefile 0

// Log server information in the log file.
sv_logfile 1

// Log server bans in the server logs.
sv_logbans 1

// Echo log information to the console.
sv_logecho 1



// Rate Settings //

// Frame rate limiter
fps_max 600

// Min bandwidth rate allowed on server, 0 == unlimited
sv_minrate 0

// Max bandwidth rate allowed on server, 0 == unlimited
sv_maxrate 20000

// Minimum updates per second that the server will allow
sv_minupdaterate 10

// Maximum updates per second that the server will allow
sv_maxupdaterate 66



// Download Settings //

// Allow clients to upload customizations files
sv_allowupload 1

// Allow clients to download files
sv_allowdownload 1

// Maximum allowed file size for uploading in MB
net_maxfilesize 15



// Team Balancing //

// Enable team balancing
mp_autoteambalance 1 

// Time after the teams become unbalanced to attempt to switch players.
mp_autoteambalance_delay 60

// Time after the teams become unbalanced to print a balance warning
mp_autoteambalance_warning_delay 30

// Teams are unbalanced when one team has this many more players than the other team. (0 disables check)
mp_teams_unbalance_limit 1



// Round and Game Times //

// Enable timers to wait between rounds. WARNING: Setting this to 0 has been known to cause a bug with setup times lasting 5:20 (5 minutes 20 seconds) on some servers!
mp_enableroundwaittime 1

// Time after round win until round restarts
mp_bonusroundtime 8

// If non-zero, the current round will restart in the specified number of seconds
mp_restartround 0

// Enable sudden death
mp_stalemate_enable 1

// Timelimit (in seconds) of the stalemate round.
mp_stalemate_timelimit 300

// Game time per map in minutes
mp_timelimit 35



// Client CVars //

// Restricts spectator modes for dead players
mp_forcecamera 0

// Toggles whether the server allows spectator mode or not
mp_allowspectators 1

// Toggles footstep sounds
mp_footsteps 1

// Toggles game cheats
sv_cheats 0

// After this many seconds without a message from a client, the client is dropped
sv_timeout 900

// Maximum time a player is allowed to be idle (in minutes), made this and sv_timeout equal same time?
mp_idlemaxtime 15

// Deals with idle players 1=send to spectator 2=kick
mp_idledealmethod 2

// Time (seconds) between decal sprays
decalfrequency 30



// Communications //

// enable voice communications
sv_voiceenable 1

// Players can hear all other players, no team restrictions 0=off 1=on
sv_alltalk 0

// Amount of time players can chat after the game is over
mp_chattime 10

// Enable party mode
tf_birthday 0

인기있는 모드/애드온

부가적인 보호 수단

통상


관리자 제어

같이 보기