을 사용하여 간단한 프록시를 설정하는 방법을 알고 ssh -D
있지만이 경우 사용자 이름과 비밀번호 기반 인증을 사용하고 싶습니다. 방법이 있습니까?
답변
동적 응용 프로그램 수준 포트 전달 ( ssh -D
)은이 기능을 지원하지 않습니다. 대신 Dante 를 살펴보십시오 .
[I] net-proxy/dante
Available versions: 1.1.19-r4 (~)1.2.3 (~)1.3.0 (~)1.3.1 (~)1.3.1-r1 (~)1.3.2 {debug kerberos pam selinux static-libs tcpd}
Installed versions: 1.3.2(04:14:03 PM 11/08/2011)(pam static-libs tcpd -debug -kerberos -selinux)
Homepage: http://www.inet.no/dante/
Description: A free socks4,5 and msproxy implementation
그러나 암호는 일반 텍스트로 전송됩니다 .
사용자 이름 기반 인증을 구성하려면 /etc/sockd.conf
파일을 열고 다음을 추가 / 변경하십시오.
logoutput: syslog /var/log/dante.log
# methods for socks-rules.
method: username #rfc931
# when doing something that can require privilege,
# it will use the userid "sockd".
user.privileged: root
# when running as usual,
# it will use the unprivileged userid of "sockd".
user.notprivileged: sockd
pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
protocol: tcp udp
command: bind connect udpassociate
log: error
method: username
}
시작 후 청취 소켓을 점검하십시오.
# netstat -nlp | grep sockd
tcp 0 0 127.0.0.1:1080 0.0.0.0:* LISTEN 5463/sockd
tcp 0 0 192.168.15.36:1080 0.0.0.0:* LISTEN 5463/sockd
문제가있는 경우 로그 파일 ( /var/log/messages
또는 /var/log/dante.log
)을 살펴보십시오 .
PS : 시스템 비밀번호 파일 ( /etc/passwd
)은 사용자 이름과 비밀번호 조합을 확인하는 데 사용됩니다.
답변
ssh -D
액세스를 위해 비밀번호가 필요하지 않으며 현재 구현에서는 비밀번호를 요구할 수 없습니다. 원하는 경우 종료 http 서버 (예 : 아파치)를 사용하여 다단계 프록시를 설정 한 다음 아웃 바운드 연결에 ssh 터널을 사용합니다.
그런 다음 다시 잡초로 들어가면 잘못된 길로 가고 아마도 달성하려는 것을 다시 생각해야 할 수도 있습니다.