노크 - 클라우드에서 온라인

이것은 Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 제공업체에서 실행할 수 있는 knockd 명령입니다.

프로그램:

이름


노크 - 포트 노크 서버

개요


노크 [옵션]

기술


노크 하는 포트 노크 섬기는 사람. 이더넷(또는 PPP)의 모든 트래픽을 수신합니다.
인터페이스, 포트 적중의 특별한 "노크" 시퀀스를 찾습니다. 클라이언트는 이러한 포트를 만듭니다.
TCP(또는 UDP) 패킷을 서버의 포트로 전송하여 적중합니다. 이 포트를 열 필요가 없습니다.
-- knockd는 링크 계층 수준에서 수신하기 때문에 목적지가 지정된 경우에도 모든 트래픽을 봅니다.
닫힌 포트의 경우. 서버가 포트 적중의 특정 시퀀스를 감지하면 다음을 실행합니다.
구성 파일에 정의된 명령입니다. 이것은 구멍을 여는 데 사용할 수 있습니다.
빠른 액세스를 위한 방화벽.

명령줄 옵션


-NS, --상호 작용
청취할 인터페이스를 지정하십시오. 기본값은 eth0.

-NS, --악마
데몬이 되십시오. 이것은 일반적으로 일반적인 서버와 같은 작업에 적합합니다.

-씨, --구성
구성 파일의 대체 위치를 지정하십시오. 기본값은 /etc/knockd.conf.

-NS, -디버그
디버깅 메시지를 출력합니다.

-엘, --조회
로그 항목의 DNS 이름을 조회합니다. 보안상 위험할 수 있습니다! 섹션 참조 보안
노트.

-V, --말 수가 많은
자세한 상태 메시지를 출력합니다.

-V, --번역
버전을 표시합니다.

-시간, --도움
구문 도움말.

구성


knockd는 구성 파일에서 모든 노크/이벤트 세트를 읽습니다. 각 노크/이벤트는
형식의 제목 표시자 [이름]어디로 name 표시될 이벤트의 이름입니다.
로그에서. 특별한 마커, [옵션], 전역 옵션을 정의하는 데 사용됩니다.

# 1 :
이 예에서는 두 번의 노크를 사용합니다. 첫 번째는 노커가 포트 22에 액세스하도록 허용합니다.
(SSH), 두 번째는 노커가 완료되면 포트를 닫습니다. 당신이 할 수있는대로
매우 제한적인(DENY 정책) 방화벽을 실행하고
조심스럽게 접근하고 싶습니다.

[옵션]
로그 파일 = /var/log/knockd.log

[openSSH]
시퀀스 = 7000,8000,9000
seq_timeout = 10
tcpflags = syn
명령 = /sbin/iptables -A 입력 -s %IP% -j 수락

[닫기SSH]
시퀀스 = 9000,8000,7000
seq_timeout = 10
tcpflags = syn
명령 = /sbin/iptables -D 입력 -s %IP% -j 수락

# 2 :
이 예에서는 단일 노크를 사용하여 포트 22(SSH)에 대한 액세스를 제어합니다. 후에
노크에 성공하면 데몬이 실행됩니다. 시작 명령, 기다려
에 지정된 시간 cmd_timeout, 다음을 실행 stop_command. 이것은 유용하다
자동으로 노커 뒤의 문을 닫습니다. 노크 시퀀스는 두 UDP를 모두 사용합니다.
및 TCP 포트.

[옵션]
로그 파일 = /var/log/knockd.log

[닫기SSH 열기]
시퀀스 = 2222:udp,3333:tcp,4444:udp
seq_timeout = 15
tcpflags = syn,ack
start_command = /usr/sbin/iptables -A 입력 -s %IP% -p tcp --syn -j 수락
cmd_timeout = 5
stop_command = /usr/sbin/iptables -D INPUT -s %IP% -p tcp --syn -j ACCEPT

# 3 :
이 예에서는 이벤트를 트리거하기 위해 고정된 단일 노크 시퀀스를 사용하지 않지만
시퀀스 파일(일회성 시퀀스)에서 가져온 시퀀스 세트,
one_time_sequences 지령. 각각의 성공적인 노크 후에 사용된 시퀀스는
무효화되고 시퀀스 파일의 다음 시퀀스는
성공적인 노크. 이것은 공격자가 이후에 재생 공격을 하는 것을 방지합니다.
시퀀스를 발견했습니다(예: 네트워크를 스니핑하는 동안).

[옵션]
로그 파일 = /var/log/knockd.log

[오픈클로즈SMTP]
one_time_sequences = /etc/knockd/smtp_sequences
seq_timeout = 15
tcpflags = 핀,!ack
start_command = /usr/sbin/iptables -A 입력 -s %IP% -p tcp --dport 25 -j 수락
cmd_timeout = 5
stop_command = /usr/sbin/iptables -D INPUT -s %IP% -p tcp --dport 25 -j ACCEPT

구성 : 글로벌 지시문


UseSyslog
syslog()를 통해 작업 메시지를 기록합니다. 이렇게 하면 로그 항목이
/var/log/messages 또는 이와 동등한 것.

로그 파일 = /경로/대상/파일
일반적으로 /var/log/knockd.log 파일에 작업을 직접 기록합니다.

피드파일 = /경로/대상/파일
데몬 모드에 있을 때 사용할 pidfile, 기본값: /var/run/knockd.pid.

인터페이스 =
청취할 네트워크 인터페이스입니다. 경로가 아닌 이름만 지정하면 됩니다.
장치(예: "/dev/eth0"가 아니라 "eth0"). 기본값: eth0.

구성 : 노크/이벤트 지시문


순서 = [: ][, [: ] ...]
특수 노크에서 포트의 순서를 지정하십시오. 같은 포트가 잘못된 경우
플래그가 수신되면 노크는 버려집니다. 선택적으로 프로토콜을 정의할 수 있습니다.
포트별로 사용됩니다(기본값은 TCP).

One_Time_Sequences = /경로/to/one_time_sequences_file
사용할 일회성 시퀀스가 ​​포함된 파일입니다. 고정된 것을 사용하는 것보다
시퀀스에서, knockd는 해당 파일에서 사용할 시퀀스를 읽습니다. 각각 후
성공적인 노크 시도 이 시퀀스는 '#' 문자를 작성하여 비활성화됩니다.
사용된 시퀀스를 포함하는 행의 첫 번째 위치에 있습니다. 사용된 시퀀스
그런 다음 파일의 다음 유효한 시퀀스로 대체됩니다.

첫 번째 문자는 '#'로 바뀌므로 그대로 두는 것이 좋습니다.
각 줄의 시작 부분에 공백. 그렇지 않으면 노크의 첫 번째 숫자
시퀀스는 사용한 후 '#'으로 덮어씁니다.

일회성 시퀀스 파일의 각 라인에는 정확히 하나의 시퀀스가 ​​포함되며
에 대한 형식과 동일한 형식 순서 지령. '#'으로 시작하는 줄
문자는 무시됩니다.

주의 사항: 노크가 실행되는 동안 파일을 편집하지 마십시오!

Seq_Timeout =
시퀀스가 완료될 때까지 기다리는 시간(초)입니다. 전에 시간이 경과하면
노크가 완료되면 폐기됩니다.

TCP플래그 = 지느러미|syn|rst|psh|ack|urg
이 플래그가 설정된 패킷에만 주의하십시오. TCP 플래그를 사용할 때,
knockd는 플래그와 일치하지 않는 tcp 패킷을 무시합니다. 이것은 다른
잘못된 패킷이 전체 노크를 무효화하는 정상적인 동작,
클라이언트가 다시 시작하도록 강제합니다. "TCPFlags = syn"을 사용하는 것은 다음과 같은 경우에 유용합니다.
SSH 트래픽이 일반적으로 간섭(및
따라서) 노크를 무효화합니다.

여러 플래그를 쉼표로 구분합니다(예: TCPFlags = syn,ack,urg). 플래그는 다음과 같습니다.
"!"에 의해 명시적으로 제외됨 (예: TCPFlags = syn,!ack).

시작 명령 =
클라이언트가 올바른 포트 노크를 할 때 실행할 명령을 지정합니다. 모두
인스턴스 %IP% 노커의 IP 주소로 대체됩니다. NS 명령
지시어는 에 대한 별칭입니다. 시작 명령.

명령_시간 초과 =
사이에 기다리는 시간 시작 명령중지_명령 몇 초 안에. 이 지시문은
선택 사항, 다음 경우에만 필수 중지_명령 사용.

중지_명령 =
때 실행할 명령을 지정합니다. 명령_시간 초과 초가 지난 후
시작 명령 실행되었습니다. 모든 인스턴스 %IP% 로 대체됩니다
노커의 IP 주소. 이 지시문은 선택 사항입니다.

보안 노트


사용법 - -l or --조회 로그 항목의 DNS 이름을 확인하는 명령줄 옵션은
보안 위험! 공격자는 모니터링할 수 있는 경우 시퀀스의 첫 번째 포트를 찾을 수 있습니다.
knockd를 실행하는 호스트의 DNS 트래픽. 또한 스텔스로 간주되는 호스트(예:
ACK+RST 패킷으로 응답하는 대신 닫힌 TCP 포트에 패킷을 드롭하면
공격자가 첫 번째(알 수 없는) 포트에 도달할 경우 DNS 이름을 확인하여 스스로 제거
시퀀스의.

onworks.net 서비스를 사용하여 knockd 온라인 사용



최신 Linux 및 Windows 온라인 프로그램