지식 Profitserver 서비스를 사용하기 위한 간단한 지침
본관 지식 CentOS/ArchLinux에서의 3proxy 구성

CentOS/ArchLinux에서의 3proxy 구성


이 글에서는 ArchLinux/CentOS 운영 체제로 구동되는 전용 서버에서 3proxy 구성을 보여드리겠습니다. 3proxy는 가장 관련성 있고 기능적인 도구 중 하나입니다. HTTP, HTTPS, FTP, SOCKS 등 다양한 유형의 프로토콜을 지원합니다. 몇 분 만에 자체 프록시 서버를 설정하는 데 도움이 됩니다.

이 문서에는 유틸리티 설치 및 추가 구성에 대한 단계별 지침이 포함되어 있습니다. 공식 소스에서 설치, 구성 파일 설정, 비표준 포트 열기와 같은 문제가 고려되고 일반적인 오류가 설명되며 이를 해결하기 위한 실용적인 권장 사항이 제공됩니다. 출시하기 전에 다음을 주문해야 합니다. VPS or 전용 서버 CentOS 또는 ArchLinux 운영 체제로 구동됩니다. 이 예의 모든 작업은 하나의 전용 정적 공용 IP 주소가 있는 CentOS7 운영 체제로 구동되는 전용 서버에서 수행됩니다.

설치

1단계

3proxy는 소스에서 직접 설치됩니다. GCC 컴파일러로 사용됩니다. 우리는 root(슈퍼유저)로 서버에 연결하고 컴파일러를 설치합니다.

yum install gcc

2단계

이제 3proxy 소스 파일을 다운로드해야 합니다. 다음으로 이동하여 이 작업을 수행할 수 있습니다. 공식 웹 사이트 그리고 현재 버전에 대한 링크를 복사합니다:

유틸리티 설치

보관된 버전이 필요한 경우 링크를 직접 다운로드할 수도 있습니다. GitHub의:

Github에서 3proxy 설치

이 글을 쓸 당시 현재 버전은 0.9.3입니다. 다운로드하여 즉시 압축을 풉니다.

wget https://github.com/z3APA3A/3proxy/archive/0.9.3.tar.gz
tar -xvzf 0.9.3.tar.gz

3단계

압축 해제된 프로젝트가 있는 디렉토리로 이동하여 컴파일합니다.

cd 3proxy-0.9.3/
make -f Makefile.Linux

4단계

디렉토리를 생성하고 3proxy 파일을 /usr/bin으로 복사합니다.

mkdir -p /var/log/3proxy
mkdir /etc/3proxy
cp bin/3proxy /usr/bin/

5단계

카탈로그 작업을 위한 사용자를 만듭니다. 이 경우 사용자 이름은 다음과 같습니다. 3프록시 사용자:

useradd -s /usr/sbin/nologin -U -M -r 3proxyuser

생성된 사용자에게 디렉토리 작업 권한을 부여합니다.

chown -R 3proxyuser:3proxyuser /etc/3proxy
chown -R 3proxyuser:3proxyuser /var/log/3proxy
chown -R 3proxyuser:3proxyuser /usr/bin/3proxy

이제 다음 명령을 사용하여 구성 파일을 만들어 보겠습니다.

touch /etc/3proxy/3proxy.cfg

필요한 경우 루트 사용자에 대한 구성 파일에 대한 권한을 설정할 수 있습니다. 이 단계는 필수가 아닙니다. 하지만 보호 기능이 추가됩니다.

chmod 600 /etc/3proxy/3proxy.cfg

3프록시 구성

6단계

이전에 만든 설정 파일을 올바르게 채워야 합니다. 먼저 다음 명령으로 사용자의 uid와 gid를 찾습니다.

id 3proxyuser

우리의 경우에는 다음과 같은 값이 있습니다.

uid와 gid

구성 파일을 작성하려면 기성 구성을 사용하거나 다음을 사용할 수 있습니다. 선적 서류 비치 공식 웹사이트에서. 또한 예제가 있는 파일은 기본적으로 미리 설치되어 있습니다. 다음 경로에서 찾을 수 있습니다. /cfg/3proxy.cfg.샘플

예를 들어, 두 가지 유형의 구성을 고려해 보겠습니다. 로깅 여부각 줄에는 주석이 첨부됩니다(# 기호로 표시).

이것은 기성 구성의 예입니다 로깅 없이:

# We specify the user's data that we found out in the previous command
setgid 995
setuid 997

# Type the NS-servers. It is possible to clarify your own servers at /etc/resolv.conf
nserver 1.1.1.1
nserver 8.8.8.8

# Cache size
nscache 65536

# Timeouts
timeouts 1 5 30 60 180 1800 15 60

# Authorization of users by login/password (if required). You may not to use it or specify the path to the file in which authorization data is stored, for example, users $/etc/3proxy/.authfile

# If you insert a password in md5 format, replace “CL” with “CR”, as indicated in the example. You can use 2 methods at the same time.
auth cache strong
users "userproxy:CL:passwordproxy"
users "userproxy2:CR:b89097a7ad0b94f13b3c313ae76699d4 "

# Launch mode. Daemon only.
Daemon

# We write the port through which the http connection will take place. The example shows the standard one. To establish a socks connection, use the command specified in the second line, the port is also standard.
proxy -p3128			
socks -p1080

로깅이 없는 구성 파일 옵션을 고려했습니다. 이제 다음을 사용하여 구성 파일을 만듭니다. 로깅 및 사용자 권한 부여; 나중에 서버 설정 중에 사용됩니다..

비표준 포트에서도 서버를 감지할 수 있으므로 권한 정보를 제공해야 합니다..

# Configuring the server to launch from the userproxy user and the passwordproxy password.
users userproxy:CL:passwordproxy

# Specify the user's uid and gid
setgid 995
setuid 997

# Nameservers (NS-servers)
nserver 1.1.1.1
nserver 8.8.8.8

# Timeouts
timeouts 1 5 30 60 180 1800 15 60

# Cache size (standard)
nscache 65536

# Indicate the launch mode
daemon

# We install http proxy on a non-standard 50001 port. If there are several IP addresses on the server, be sure to specify a specific address for connecting the network. For example, "-e91.150.32.146". The argument "i" is a local address.
proxy –p50001	

# In a same way as socks proxy, we conduct the installation on a 50002 port.
socks –p50002			

# Path to the directory with logs, logs format and proxy rotation
Log /var/log/3proxy/3proxy.log D	
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
rotate 30

이것으로 주요 구성 파일의 설정이 완료되었습니다. 마지막 단계로 넘어가서 실행합니다.

7단계

systemd에 대한 초기화 파일을 만듭니다.

touch /etc/systemd/system/3proxy.service

필요한 권한을 발급합니다:

chmod 664 /etc/systemd/system/3proxy.service

다음 값을 파일에 복사하여 붙여넣고 저장합니다.

[Unit]
Description=3proxy Proxy Server
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/3proxy /etc/3proxy/3proxy.cfg
ExecStop=/bin/kill `/usr/bin/pgrep 3proxyuser`
RemainAfterExit=yes
Restart=on-failure
[Install]
WantedBy=multi-user.target»

참고 사항 : “ExecStop” 값에는 5단계에서 생성된 사용자 이름을 지정해야 합니다.

그 후 다음 명령을 사용하여 데몬 구성을 업데이트해야 합니다.

systemctl daemon-reload

8단계

우리가 해야 할 일은 구성된 3proxy를 실행하고 자동 시작에 추가하고 방화벽에서 포트를 여는 것뿐입니다.

자동 시작, 실행 및 상태 확인에 추가하세요.

systemctl enable 3proxy
systemctl start 3proxy
systemctl status 3proxy

상태를 확인한 후 3proxy가 성공적으로 시작되었다는 정보를 확인할 수 있습니다.

프록시가 실행 중입니다

남은 것은 포트를 여는 것뿐입니다.

firewall-cmd --zone=public --add-port=50001/tcp
firewall-cmd --zone=public --add-port=50002/tcp
firewall-cmd –reload

필요하다면 서버를 재부팅합니다. 다음 명령으로 포트가 열려 있는지 확인할 수 있습니다.

firewall-cmd --list-all

무엇이 되어야 할까요:

방화벽 포트 열기

보시다시피 두 포트 모두 성공적으로 열리고 수신되고 있습니다. http 연결은 첫 번째 포트에 있고, socks는 두 번째 포트에 있습니다.

편리한 서비스를 통해 연결을 확인하세요.

3proxy 설정 성공

모든 것이 작동하고 있습니다. 우리의 경우, 로그인/암호 인증 없이 보안되지 않은 연결을 사용하거나 표준 포트 세트를 사용하는 것은 권장하지 않습니다.. 구성 파일을 설정하는 동안, 로그인을 지정하고 복잡한 비밀번호를 생성하고 포트도 비표준으로 변경하세요.. 예외적인 경우 IP 주소 인증을 사용할 수 있습니다.

일반적인 문제

문제가 발생하여 프록시가 작동하지 않습니까? 아마도 3proxy 구성이 잘못되었을 것입니다. 유틸리티를 설치하고 구성하는 동안 가장 흔한 문제와 그 해결책을 고려해 보겠습니다.

연결 없음

많은 사용자에게 가장 흔한 문제는 구성 파일이 올바르게 구성된 것처럼 보일 때 액세스할 수 없는 연결입니다. 모든 설정이 올바르게 구성되었고 호스팅 제공자가 선택한 포트를 제한하지 않으며 모든 데이터가 작동하는 서비스를 나타내는 경우 문제는 방화벽에 있거나 더 정확히 말하면 잘못된 구성에 있을 수 있습니다. 예를 들어 서로 충돌하는 두 개 이상의 프로그램이 시스템에 설치되어 있을 수 있습니다. 문제를 해결하려면 특정 방화벽 하나만 사용하면 됩니다. iptables 또는 방화벽-cmd만 선택하는 것이 좋습니다.

서비스가 시작되지 않습니다

모든 필수 구성 파일을 설정한 후 서비스가 시작되지 않습니다. 이는 구성 단계를 놓쳤거나, 적절한 권한이 부여되지 않았거나, 구성 파일에 사소한 오류가 있는 경우에 발생합니다. 지침을 단계별로 다시 주의 깊게 공부하는 것이 좋습니다. 아마도 단계 중 하나를 놓쳤을 수 있습니다. 아무것도 도움이 되지 않으면 OS를 다시 설치하고 처음부터 모든 단계를 따르는 것이 좋습니다. 다음을 사용하는 것이 좋습니다. 견본 테스트 구성으로 /cfg/3proxy.cfg.sample에 위치하며 사전 설치됨 방화벽 cmd 방화벽으로 사용

로깅

마지막으로, 그다지 중요하지 않은 문제는 파일 저장과 관련이 있습니다. 3proxy는 설치하는 동안 몇 MB가 걸리지만, 시간이 지남에 따라 로깅을 통해서만 크기를 상당히 늘릴 수 있습니다. 사실 많은 사용자가 별도의 파일에 로그 기록을 활성화하지만, 로테이션을 설정하지 않고 관련 없는 로그를 삭제하지 않습니다. 이 문제를 해결하는 데 세 가지 옵션을 사용할 수 있습니다.

  1. 로깅 활성화;
  2. 주기적으로 관련없는 로그를 삭제합니다.
  3. 위의 구성에서 한 것처럼 회전을 활성화합니다. 예를 들어, 구성 파일에서 "rotate 30"은 3proxy가 최신 30개 파일만 저장한다는 것을 의미합니다.

맺음말

CentOS 및 ArchLinux 운영 체제에 3proxy를 설치하고 구성하는 것은 매우 간단하지만 동시에 효과적인 작업입니다. 이 문서에서는 필요한 패키지를 설치하고, 구성 파일을 구성하고, 서비스를 시작하는 단계를 다루었습니다. 습득한 지식을 통해 어려움 없이 직접 프록시 서버를 설치하고 구성할 수 있습니다.

❮ 이전 기사 Windows OS에서 디스크 파티션을 늘리는 방법
다음 기사 ❯ Windows 비밀번호를 재설정하는 방법

VPS에 대해 문의하세요

저희는 언제든지 여러분의 질문에 답변할 준비가 되어 있습니다.