در مطلب قبل امن کردن دسترسی Admin CPدر SolusVm را توضیح دادیم که برای مطالعه در این زمینه روی لینک زیر کلیک کنید:
امن کردن دسترسی Admin CPدر SolusVm
حال در این نوشته می خواهیم درباره ی امن کردن دسترسی Admin API در SolusVm آموزش ارائه کنیم.
الف:فیلتر نمودن Ip:
۱–به مسیر Edit /etc/lighttpd/lighttpd.conf بروید و دستورات زیر را تایپ کنید:
[php]
$HTTP[“remoteip”] !~ “10.0.0.5” {
$HTTP[“url”] =~ “^/api/admin” {
url.access-deny = ( “” )
}
}
[/php]
توجه: ۱۰٫۰٫۰٫۵ را با Ip آدرس های که می خواهید به API های آن دسترسی پیدا کنید بازنویسی کنید.همچنین کی توانید با به وسیله ی علامت | به Ip آدرس های بیشتر دسترسی پیدا کنید.
۲-lighttpd مجددا راه اندازی کنید:
[php]
<pre>service lighttpd restart
[/php]
ب- احراز هویت Htpasswd :
در این روش سیستم باید قابلیت احراز هویت به وسیله نام کاربری و رمز ورود را داشته باشد.
SolusVM به خودی خود دارای API های امن می باشد.به هر حال شما می توانید به وسیله Htpasswd یک سطح امنیتی بیشتر به API اضافه کنید.
۱- به آدرس Edit /etc/lighttpd/lighttpd.conf در محیط مستر خود بروید و چک کنید که mod_auth فعال باشد.ماژول آن باید به این صورت باشد:
[php]
server.modules = ( “mod_auth”,
“mod_access”,
“mod_fastcgi”,
“mod_accesslog” )
[/php]
۲- دستورات زیر را در این آدرس /etc/lighttpd/lighttpd.conf اجرا کنید:
[php]
auth.backend = “htpasswd”
auth.backend.htpasswd.userfile = “/usr/local/solusvm/.api-htpasswd”
auth.require = (“/api/admin” => (
“method” => “basic”,
“realm” => “”,
“require” => “valid-user”
))
[/php]
۳-نتیجه باید به شکل زیر نمایش داده شود.
[php]
server.modules = (
“mod_auth”,
“mod_access”,
“mod_fastcgi”,
“mod_accesslog” )
server.document-root = “/usr/local/solusvm/www/”
server.errorlog = “/var/log/lighttpd/error.log”
index-file.names = ( “index.php”, “index.html”,
“index.htm”, “default.htm” )
mimetype.assign = (
“.pdf” => “application/pdf”,
“.gz” => “application/x-gzip”,
“.tar.gz” => “application/x-tgz”,
“.tgz” => “application/x-tgz”,
“.tar” => “application/x-tar”,
“.zip” => “application/zip”,
“.gif” => “image/gif”,
“.jpg” => “image/jpeg”,
“.jpeg” => “image/jpeg”,
“.png” => “image/png”,
“.css” => “text/css”,
“.html” => “text/html”,
“.htm” => “text/html”,
“.js” => “text/javascript”,
“.log” => “text/plain”,
“.conf” => “text/plain”,
“.text” => “text/plain”,
“.txt” => “text/plain”,
“.dtd” => “text/xml”,
“.xml” => “text/xml”,
“.bz2” => “application/x-bzip”,
“.tbz” => “application/x-bzip-compressed-tar”,
“.tar.bz2” => “application/x-bzip-compressed-tar”,
“” => “application/octet-stream”,
)
server.tag = “SolusVM”
accesslog.filename = “/var/log/lighttpd/access.log”
auth.backend = “htpasswd”
auth.backend.htpasswd.userfile = “/usr/local/solusvm/.api-htpasswd”
auth.require = (“/api/admin” => (
“method” => “basic”,
“realm” => “”,
“require” => “valid-user”
))
url.access-deny = ( “~”, “.inc” )
$HTTP[“url”] =~ “\.pdf$” {
server.range-requests = “disable”
}
static-file.exclude-extensions = ( “.php”, “.pl”, “.fcgi” )
fastcgi.server = ( “.php” =>
( “localhost” =>
(
“socket” => “/var/run/lighttpd/php-fastcgi.socket”,
“bin-path” => “/usr/bin/php-cgi”
)
)
)
server.port = ۵۳۵۳
server.pid-file = “/var/run/lighttpd.pid”
server.username = “solusvm”
server.groupname = “solusvm”
$SERVER[“socket”] == “0.0.0.0:5656” {
ssl.engine = “enable”
ssl.pemfile = “/usr/local/solusvm/ssl/cert.pem”
}
[/php]
۴- یک فایل رمز ورود بسازید:
[php]
htpasswd -c /usr/local/solusvm/.api-htpasswd SAMPLEUSERNAME
[/php]
توجه داشته باشید Htpasswd ممکن است بر روی سرور شما نصب نباشد.به دلیل اینکه Htpasswd قسمتی از httpd می باشد.تعداد زیادی تولید کننده آن لاین برای Htpasswd وجود دارد.
۵-Lighttp مجددا راه اندازی کنید:
[php]
<pre>service lighttpd restart
[/php]
برای خرید اینجا را کلیک کنید
منبع:وب سایت SolusVM