여러 웹사이트를 실행하는 가상 머신이 있습니다. 모든 사용자는 기기의 외부 IP 주소를 통해 이 콘텐츠에 액세스할 수 있습니다. 저는 이 컴퓨터에서 Debian Stable을 실행하고 있습니다.
머신에 액세스 ssh
하고 구성할 수 있으므로 브라우저를 localhost 포트 /phpmyadmin에 연결하고 phpmyadmin에 액세스할 수 있도록 10080
로컬 포트를 로 전달합니다 . 내 컴퓨터가 네트워크 에 있습니다.localhost:80
10080
192.168.0.0/24
문제는 외부 웹사이트에서도 접근할 수 있다는 점입니다. 데비안이 이를 최상위 Apache 구성에 배치했기 때문입니다.
포트를 통해서만 ssh
연결에 대한 액세스를 제한하고 싶습니다. 그러나 디렉토리에 해당하는 청취 지시문은 없는 것 같습니다.
그러나 IP_address의 권한이 있습니다. 터널을 통과할 때 Apache는 내가 어떤 IP 주소에 연결하고 있는지 생각합니다 ssh
.
답변1
좋습니다. 이 문제는 해결하기가 비교적 간단합니다.
다음을 사용하여 서버에 액세스할 수 있습니다.
ssh -L 5580:localhost:80 www.servername.tld
그런 다음 다음을 통해 phpmyadmin에 액세스합니다.
http://localhost:5580/phpmyadmin/
데비안이 그것을 넣었기 때문에
M$가 있다면 이렇게 말할 수 있지만 Debian이 있으므로 원할 경우 기본값을 변경할 수 있습니다. :-)
그러나 IP_address의 권한이 있습니다. SSH를 통해 터널링할 때 Apache는 내가 어떤 IP 주소에 연결하고 있는지 생각합니다.
이미 사용한 것과 동일합니다.localhost
여기서 가장 간단한 해결책은 당신이 말한 것입니다
# /etc/phpmyadmin/apache.conf
Alias /phpmyadmin /usr/share/phpmyadmin
<Directory /usr/share/phpmyadmin>
...
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
또 다른 해결책은 phpmyadmin에 대한 독점 액세스를 위해 추가 포트를 수신하는 것입니다.
변경할 파일:
# /etc/apache2/ports.conf
Listen localhost:8880
그리고
# /etc/phpmyadmin/apache.conf
<VirtualHost *:8880>
ServerName localhost
Alias /phpmyadmin /usr/share/phpmyadmin
<Directory /usr/share/phpmyadmin>
...
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
마지막으로
apache2ctl configtest
apache2ctl restart
리디렉션 명령
ssh -L 5580:localhost:8880 www.servername.tld
그리고 연결하다
http://localhost:5580/phpmyadmin/