[ Server ][ Linux ] centos7 how to enable exec() 2 > linux

본문 바로가기
사이트 내 전체검색

linux

[ Server ][ Linux ] centos7 how to enable exec() 2

페이지 정보

작성자 웹지기 댓글 0건 조회 7,426회 작성일 19-04-16 10:57

본문

 도메인 당 PHP 기능을 사용하지 못하게하는 방법!


서버 보안을 처리 할 때 결국 일부 PHP 기능을 비활성화하려고 할 것입니다. 

공유 호스팅의 유일한 문제 는 도메인에 대한 exec 를 비활성화 할 수없고 일부 절름발이 스크립트로 인해 도메인을 필요로하는 다른 사용자를 위해 해당 기능을 활성화 할 수 없다는 것입니다. 

결국 한 사이트로 인해 전체 서버에서 exec 를 활성화해야 할 부분에 도달하게 됩니다. 

이것에 대한 해결책이 있으며 suhosin이라고합니다.

Suhosin은 "suhosin.executor.func.blacklist"라는 구성 변수를 가지고 있습니다.이 변수를 사용하여 일부 PHP 기능을 비활성화 할 수 있습니다. 

php.ini에서 이 변수와 disable_functions의 차이점은 모든 사이트에 대해 설정할 수 있다는 것입니다 . 

그러면 전체 서버에서 exec 를 비활성화 할 수 있도록 도메인 만 수정할 수 있습니다 (덮어 쓸 수 있음). 

단일 도메인에 대해이 기능을 사용 가능하게하십시오. 

suhosin을 설치하는 방법을 여기에 쓰지 않을 것이다. 

또한 PHP 확장을 필요로하므로 PHP를 다시 컴파일하거나 다시 컴파일 할 필요가 없습니다.


중요 : suhosin 확장 0.9.20이 더 이상 작동하지 않는다는 것을 알아 냈습니다. 우리가 0.9.18을 가지고있는 한 괜찮습니다. 

아마 확장 기능의 다음 버전이 다시 작동하도록 수정 될 것이므로 문제가 해결 될 때까지 버전 0.9.18을 사용하는 것을 잊지 마십시오.


php 함수 차단기로 suhosin을 사용하려면 php ini에서 disable_functions를 주석 처리하고 (예, 모든 함수를 활성화) 

php.ini suhosin.executor.func.blacklist에 다음과 같이 설정해야합니다. 

 

suhosin.executor.func.blacklist = exec, passthru, shell_exec, system, pcntl_exec, proc_open, proc_nice, proc_terminate, proc_get_status, proc_close, leak, apache_child_terminate, posix_kill, posix_mkfifo, posix_setpgid, posix_setsid, posix_setuid, escapeshellcmd, escapeshellarg

원하는만큼 많은 기능을 추가 할 수 있습니다. 

그 후, suhosin.executor.func.blacklist에 추가 된 모든 함수는 PHP 스크립트에서 더 이상 작동하지 않습니다. 도메인에 대한 함수를 활성화해야하는 경우 

exec 라고 가정 해 봅시다. apache 구성 파일을 편집하고 exec 함수없이 suhosin.executor.func.blacklist를 추가해야합니다. 


<VirtualHost 127.0.0.1> 

ServerAlias www.test.com

ServerAdmin webmaster@test.com

DocumentRoot /home/test/public_html

php_admin_value suhosin.executor.func.blacklist "passthru, show_source, shell_exec, system, pcntl_exec, popen, pclose, proc_open, proc_nice, proc_terminate, proc_get_status, proc_close, leak, apache_child_terminate, posix_kill, posix_mkfifo, posix_setpgid, posix_setsid, posix_setuid, escapeshellcmd, escapeshellarg"

 

</ VirtualHost> 


이제 exec는 서버에서는 사용할 수 없지만 테스트 도메인에서는 활성화되어 있습니다. 

추천0 비추천0

댓글목록

등록된 댓글이 없습니다.

Total 103건 3 페이지
  • 73 [ Server ][ Linux ] centos7 Gitlab-CI를 이용한 자동 배포 환경 만들기
  • Gitlab-CI 기능을 활용 - branch commit시 자동배포 Gitlab CI-CD 기능을 사용하려면 gitlab-runner를 설치해야 한다. Gitlab CE 버젼을 설치하면 자동으로 gitlab-runner가 설치고 계정도 생성되므로 설정만 해주면 된다. 설정은 본 글의 하단부분을 따라하면 된다. ※ Gitlab CI 설치 - Gitlab Repository 추가 # curl -L https://packages.gitlab.com/install/reposi...
  • 웹지기 08-08 11880 0 0 댓글 0
  • 72 [ Server ][ Linux ] git / gitlab init ~ pull 작업 흐름 (진행 방향)
  • 1) 설정이 어떻게 되어있는지 확인을 위해 설정 내용을 확인한다. git 을 진행하기 원하는 폴더를 설정한다 해당폴더로 이동 후 git init 명령으로 디렉토리에 git 저장소 설정을 해준다. /home/aaa/public_html 이라는 폴더가 존재할 때 public_html 아래의 내용을 git에 올리고 싶다면 public_html 폴더로 이동 후 다음의 명령들을 실행한다. # git init # git config --list 사용자 설정을 해준다. ...
  • 웹지기 08-07 5849 0 0 댓글 0
  • 71 [ Server ][ Linux ] centos7 원격데스크탑 / XRDP
  • EPEL 설치 # yum install epel-release -y XRDP 와 VNC 설치 # yum install xrdp tigervnc-server -y 설치가 완료 되었다면 서비스 등록 # systemctl enable xrdp 방화벽을 확인하고 원격포트 방화벽이 설정 되어 있지 않으면 설정해준다. # firewall-cmd --permanent --zone=public --add-port=3389/tcp 재부팅하고 접속해보자 # reboot
  • 웹지기 08-05 4750 0 0 댓글 0
  • 70 [ Server ][ Linux ] centos7 gui 설치 / 접속 / 언어설정
  • Centos7 의 기본은 터미널이다. 그래서 GUI를 보고 싶어서 설치해봐야겠다. Centos7 minimal 버젼 설치이후 설치해 보았다. # echo $LANG 현재 설정언어를 볼 수 있다 영문으로 변경은 # LANG=en_US.UTF-8 GUI 설치방법은 중간에 질문이 한번 나온다 y를 눌러주면 된다 패키지가 많아서 조금 걸리는 것 같네요. # yum groupinstall "GNOME Desktop" &#...
  • 웹지기 08-05 6069 0 0 댓글 0
  • 69 [ Server ][ Linux ] CentOS7 .gitignore 사용법 - git 전송 무시 목록 설정
  • .gitignore 파일이란? - ".gitignore" 파일은 Git에 소스를 올릴 때 특정 파일이름 패턴이 업로드 되지 않도록 설정하는 파일 # # =&gt; 주석 # logs =&gt; logs라는 파일 또는 폴더 # *.log =&gt; 확장자가 log라는 모든 파일 # error.log* =&gt; error.log 이부분까지 일치하는 파일 # tmp/ =&gt; tmp의 하위 폴더...
  • 웹지기 08-02 5522 0 0 댓글 0
  • 68 [ Server ][ Linux ] CentOS7 gitlab SSH key 생성
  • 터미널을 열어서 ssh key를 생성 # ssh-keygen # Generating public/private rsa key pair. # Enter file in which to save the key (/Users/funyphp/.ssh/id_rsa): 이메일주소 # Enter passphrase (empty for no passphrase): enter # Enter same passphrase again: enter gitlab에서는 비트수...
  • 웹지기 08-01 5381 1 0 댓글 2
  • 67 [ Server ][ Linux ] centos7 git / gitlab init 부터 pull 까지
  • 서버에서 git을 설치한 이후 사용해야 한다. git 버젼을 확인한다. # git --version git 사용자 이름을 추가하고 이메일을 설정한다. # git config --global user.name "your_name" # git config --global user.email "your_email" 원격지 저장 - 삭제는 add 대신 remove # git remote add ori...
  • 웹지기 08-01 5294 0 0 댓글 0
  • 65 [ Server ][ Linux ] CentOS7 CWP WEB PANEL – INSTALLATION
  • 시스템 요구사항 32비트 서버 = 512MB RAM 64비트 서버 = 512MB RAM HDD - 10GB 운영체제 CentOS 6.x, 7.x ReadHat 6.x, 7.x CloudLinux 6.x, 7.x CentOS 6 과 CentOS 7 의 설치 방법이 다르니 주의 하세요 @CentOS 7 설치 // 호스트명 설정( example.com을 자신의 도메인으로 설정 하세요 ) # cd / # echo 'cwp.example.com' &gt; /e...
  • 웹지기 07-15 5562 0 0 댓글 0
  • 64 [ Server ][ Linux ] httpd 2.4.x update to 2.4.39 on centos7 …
  • @mysql mariadb 업데이트 후 apache를 업데이트 하자 httpd 2.4.x 와 2.4.39의 버젼으로 업데이트 되면서 사용하지 않는 파일이 많아 오류가 많이 발생한다. @버젼 확인 # yum info httpd @epel 활성화 # yum install -y epel-release # cd /etc/yum.repos.d # wget https://repo.codeit.guru/codeit.el`rpm -q --qf "%{VERSION}" $(rp...
  • 웹지기 07-11 5997 0 0 댓글 0
  • 63 [ Server ][ Linux ] kloxo-mr7 한글 패치
  • /usr/local/lxlabs/kloxo/httpdocs/lang 해당 경로에서 en-us 폴더를 다운받아서 ko-kr로 수정 language를 Korea KR 로 수정 각 php파일을 열어 번역을 해주고 파일 업로드 해주면 된다.
  • 웹지기 07-11 5403 0 0 댓글 0
  • 62 [ Server ][ Linux ] centos7 kloxo-mr7 mariadb upgrade
  • mariadb 10.0.038 =&gt; mariadb 10.3.16 mysql 정지 # systemctl stop mysql mysql 삭제 # yum remove mysql mysql-server redo setup #curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash # cd /etc/yum.repos.d # cp m...
  • 웹지기 07-11 6209 0 0 댓글 0
  • 61 [ Server ][ Linux ] centos7 kloxo-mr7 웹으로 로그인 오류
  • 기본 사용자 이름은 admin 이고 비밀번호는 admin인데 로그인이 되지 않거나 웹페이지 열리지 않는 경우 방화벽을 먼저 설정해 봅니다 @웹브라우저로의 접속이 되지 않을 경우 방화벽 설정을 해준다 # firewall-cmd --permanent --zone=public --add-port={21,80,443,3306,7777,7778}/tcp # firewall-cmd --reload # firewall-cmd --list-all @사이트 로그인이 ...
  • 웹지기 07-10 5298 0 0 댓글 0
  • 60 [ Server ][ Linux ] centos7 kloxo-mr7 mysql 비빌번호 오류 수정 / 변경
  • 오류 비밀번호 수정이 되지않아서 링크를 따라 선행 후 변경을 시도해야 한다. # service mysql stop # /usr/bin/mysql_safe --skip-grant-tables &amp; # mysql -u root mysql #update user set password=password('123456') where user='root'; # quit # service mysql restart
  • 웹지기 07-10 5259 0 0 댓글 0
  • 59 [ Server ][ Linux ] httpd 2.4.x update to 2.4.39 on centos7
  • httpd 2.4.x update to 2.4.39 on centos7 # cd /etc/yum.repos.d # wget https://repo.codeit.guru/codeit.el`rpm -q --qf "%{VERSION}" $(rpm -q --whatprovides redhat-release)`.repo # yum install httpd -y 오류 확인을 위해 # httpd -t httpd: Syntax error on line 13 of /et...
  • 웹지기 07-10 11108 0 0 댓글 0
게시물 검색

회원로그인

접속자집계

오늘
1,832
어제
7,449
최대
33,828
전체
8,399,004

그누보드5
Copyright © funyphp.com. All rights reserved.