2011-04-27 4 views
0

현재 내 LAN에 웹 서버와 파일 서버가 있습니다. 둘 다 LAN에 정적 IP를 가지고 있으며 라우터는 인바운드 포트 80 트래픽을 웹 서버로 전달하므로 파일 서버는 내부적으로 만 액세스 할 수 있습니다.LAN 아키텍처 - 입력을 찾고 있습니다.

웹 서버를 통해 파일 서버와 상호 작용할 수있는 작은 PHP 응용 프로그램을 작성하고 싶습니다. 따라서 라우터 수준에서는 아무 것도 변경하지 않습니다. 공개 IP를 검색하는 사용자는 웹 서버에서 포트 80 만 찾을 수 있습니다.

제 질문은 꽤 높은 수준이며 반드시 "정답"이 필요하지 않습니다. 이 작업을 수행하는 몇 가지 방법을 볼 수 있으며 입력/아이디어를 위해이를 열어 볼 수 있습니다.

하나는 webserver에서 fileserver로 ssh를 실행하고 디렉토리 목록, 업로드하는 scp 파일 등을 반환하는 exec (ssh)를 통해 쉘 명령을 실행하는 것입니다.이 방법은 다른 사람에게 root 권한을주는 것보다 낫습니다. fileserver가 PHP 프론트 엔드를 손상 시킨다면 나는 그 아이디어에 너무 열중하지 않지만 그것을 고려하고있다.

또 다른 방법은 파일 서버의 내용을 웹 서버 드라이브에 복제하여 주기적으로 동기화하는 것입니다.하지만 이는 실용적이지 않고 중앙 파일 서버를 사용하는 목적에 어긋납니다. 따라서 나는 이미 그 사실을 기각했습니다. 생각.

내가 지금까지 가지고있는 전부입니다. 누구나 생각이나 의견이 있으십니까?

+2

그냥 NFS 또는 유사한 무언가를 통해 파일 서버를 탑재합니다. –

+0

thx - 좀 더 조사한 후에, 이것이 내가 할 일이다. (NFS 대신 삼바 공유를 설치했지만 같은 생각이다.) – David

답변

1

SFTP chroot jail을 설정할 수 있습니다. 이것이 의미하는 바는 권한이 부여 된 계정이 쉘에 SFTP 할 수 있지만 결코 액세스 할 수 없다는 것입니다. lastlog과 sshd 로그를 통해 액세스를 감시 할 수도 있습니다.

대부분의 보안을 위해 sshd에서 키 쌍 로그인을 구성하십시오. 이점은 필요하다면 '일반적인'SFTP 계정에 대한 다중 액세스를 제공 할 수 있다는 것입니다. 모든 공개 키를 대상 계정 .ssh/authorized_keys2에 추가하기 만하면됩니다.

이 도움이 될 것입니다 http://ubuntuforums.org/showthread.php?t=858475

+0

당신은 sshfs를 통해 그것을 마운트 할 수 있습니다. 이것은 내 경험으로는 꽤 단단합니다. –

관련 문제