저는 Linux 서버 개발이 처음입니다. 저는 모든 사람이 Android 앱에서 인터넷을 통해 접속할 수 있도록 우리 대학의 웹 서버를 만들고 싶습니다. Android 애플리케이션을 통해 인터넷을 통해 우리 서버의 데이터에 원격으로 액세스할 수 있는지 누군가 제게 대답해 주세요. 우분투 운영 체제에서 설명해주세요.
답변1
짧은 대답: 예, 가능합니다.
옵션이 많기 때문에 사용할 스택을 결정해야 합니다. 예를 들어 Apache 또는 Nginx를 웹 서버 예로 사용하고 MariaDB 또는 PostgreSQL을 데이터베이스 예로 사용할 수 있습니다.
Android 애플리케이션과 상호 작용하는 방법은 사용하기로 선택한 스택에 따라 다릅니다.
답변2
예를 들어 Apache 서버를 사용할 수 있습니다. 그러나 일부 명령에 대한 고급 지식과 인내심이 필요합니다.
일반적으로 Ubuntu에서 실행되도록 웹 서버를 구성하는 것은 매우 쉽습니다. 그러나 Apache는 여러 도메인의 요청을 처리하기 위해 여러 가지 방법으로 구성할 수 있습니다. 또한 HTTPS를 통해 통신을 암호화하고 다양한 유형의 인증을 사용하여 웹사이트를 보호할 수 있습니다. Apache는 Ubuntu의 기본 소프트웨어 리포지토리에서 사용할 수 있으므로 패키지 관리 도구를 사용하여 다른 패키지와 마찬가지로 설치할 수 있습니다. 예를 들어, 다음을 따르고 싶을 수도 있습니다.협회자세한 단계별 지침을 확인하세요. 질문이 있으시면 알려주시기 바랍니다.
답변3
그것은 당신이 생각하는 것과 다릅니다.
대학 서버를 사용하지 마세요. 클라우드 제공업체로부터 "가상 사설 서버"(VPS라고도 함)를 임대/구매할 시간입니다. 요즘은 CPU/네트워크 사용량이 낮아 꽤 저렴합니다(한 달에 6달러를 지불합니다).
이렇게 하면 서버가 해킹당하는 경우(인터넷에 연결된 경우 항상 발생할 수 있음) 피해는 서버로 제한됩니다. 서버가 대학 네트워크에 있는 경우 1) 인터넷에서 대학 네트워크에 대한 액세스를 허용해야 합니다(그리고 올바른 컴퓨터만 액세스할 수 있도록 해야 하며 이는 기술적으로 복잡합니다(방화벽, DMZ...)). 서버가 해킹되었고 해커가 대학 네트워크의 다른 컴퓨터에 액세스할 가능성이 있는 경우.
VPS가 있으면 일반적으로 "LAMP"(Linux, Apache, MySQL, PHP)인 "스택"(서버를 실행하는 데 필요한 소프트웨어 세트)을 설치하지만 기본적으로 다른 것일 수도 있습니다.
- 운영 체제(Linux는 무료이며 작업에 적합하며 Ubuntu Server와 같은 서버용으로 설계된 배포판도 있습니다).
- 요청을 받아 정적 콘텐츠(HTML, 이미지...)를 반환하거나 버킷을 일부 애플리케이션 코드에 전달하는 웹 서버입니다. 널리 사용되는 두 가지 선택은 Apache와 Nginx(둘 다 무료)입니다.
- 데이터베이스(데이터 지속성을 달성하는 가장 좋은 방법이므로), MySQL/MariaDB 또는 PostgresSQL은 무료이며 인기가 있습니다.
- 애플리케이션 코드에 대한 일부 지원이 있을 수 있습니다. PHP 또는 Python은 자체적으로 실행되며 Java에는 일반적으로 서버 런타임(Tomcat)이 필요합니다.
클라우드 제공업체는 해커로부터 효과적으로 보호할 수 있는 사전 설치된 시스템을 제공하는 경우가 많습니다.
서버 애플리케이션(사용자 정의 코드 또는 해당 스택에서 실행되는 일부 패키지)을 여기에 추가할 수 있습니다(아마도 시간이 더 걸릴 부분일 것입니다).
ourcollege.edu
대학에 아직 도메인 이름이 없는 경우 하나를 구입하고( ) server.ourcollege.edu
VPS 주소로 확인되도록 관련 DNS 서버를 시드할 수도 있습니다.
하지만 솔직히 말해서 여기서 이 질문을 해야 한다면 아직 필요한 기술이 없기 때문에 힘든 싸움이 될 것입니다.