{"id":28668,"date":"2023-06-11T08:27:19","date_gmt":"2023-12-23T00:45:48","guid":{"rendered":"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e5%b0%9d%e8%af%95%e5%ae%89%e8%a3%85%e4%ba%86nict%e7%9a%84exist%e3%80%82\/"},"modified":"2025-08-12T09:27:36","modified_gmt":"2025-08-12T01:27:36","slug":"%e6%88%91%e5%b0%9d%e8%af%95%e5%ae%89%e8%a3%85%e4%ba%86nict%e7%9a%84exist%e3%80%82","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e5%b0%9d%e8%af%95%e5%ae%89%e8%a3%85%e4%ba%86nict%e7%9a%84exist%e3%80%82\/","title":{"rendered":"\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86NICT\u7684EXIST"},"content":{"rendered":"<p>\u6211\u5b89\u88c5\u4e86NICT\u7f51\u7edc\u5b89\u5168\u7814\u7a76\u5ba4\u4e8e2019\u5e743\u670815\u65e5\u53d1\u5e03\u7684EXIST\uff0c\u5e76\u8bb0\u5f55\u4e0b\u4e86\u8fd9\u4e2a\u8fc7\u7a0b\u3002<\/p>\n<h1>\u9996\u5148<\/p>\n<h2>EXIST\u662f\u4ec0\u4e48\u5728NICT\uff08\u56fd\u5bb6\u4fe1\u606f\u901a\u4fe1\u7814\u7a76\u9662\uff09\u7684NICTER\u5206\u6790\u56e2\u961f\u5f00\u53d1\u7684Web\u5e94\u7528\u7a0b\u5e8fEXIST\u4e2d\uff0cNICTER\u5206\u6790\u56e2\u961f\u4f7f\u7528\u5b83\u6765\u8fdb\u884c\u65e5\u5e38\u8c03\u67e5\u548c\u5206\u6790\u5de5\u4f5c\u3002\u5b83\u53ef\u4ee5\u81ea\u52a8\u6c47\u96c6\u6765\u81ea\u793e\u533a\u548c\u5b89\u5168\u4f9b\u5e94\u5546\u7b49\u63d0\u4f9b\u7684\u7f51\u7edc\u5a01\u80c1\u4fe1\u606f\u3002<\/p>\n<blockquote><p>EXIST\u662f\u4e00\u4e2a\u7f51\u7edc\u5e94\u7528\u7a0b\u5e8f\uff0c\u5b83\u53ef\u4ee5\u6c47\u96c6\u5404\u79cd\u7f51\u7edc\u5a01\u80c1\u60c5\u62a5\u5e76\u8fdb\u884c\u8de8\u6e90\u68c0\u7d22\u3002\u5b83\u4ece\u5404\u79cd\u4fe1\u606f\u6e90\u4e2d\u901a\u8fc7\u8ba2\u9605\u548cAPI\u83b7\u53d6\u7f51\u7edc\u5a01\u80c1\u60c5\u62a5\uff0c\u5e76\u5c06\u5176\u96c6\u4e2d\u5b58\u50a8\u5728EXIST\u7684\u6570\u636e\u5e93\u4e2d\u3002\u7528\u6237\u53ef\u4ee5\u901a\u8fc7WebUI\u6216\u8005WebAPI\uff0c\u5728EXIST\u4e0a\u4f7f\u7528\u7279\u5b9a\u5173\u952e\u5b57\u8fdb\u884c\u8de8\u6e90\u641c\u7d22\u7f51\u7edc\u5a01\u80c1\u60c5\u62a5\u3002\uff08\u5f15\u81ea\uff1aNICTER\u535a\u5ba2\uff09<\/p><\/blockquote>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657cfe0737434c4406bc45b4\/5-0.png\" alt=\"png1\" \/><\/p>\n<h2>\u73af\u5883\u6784\u6210<\/p>\n<pre class=\"post-pre\"><code>- OS: CentOS 7.6  \r\n- DB: MariaDB 10.3.13\r\n- Python 3.6.7\r\n<\/code><\/pre>\n<h1>\u5b89\u88c5\u8bf7\u6309\u7167GitHub\u7684\u6b65\u9aa4\u8fdb\u884c\u5b89\u88c5\u3002<br \/>\n\u5982\u679c\u64cd\u4f5c\u7cfb\u7edf\u5904\u4e8e\u4ee3\u7406\u73af\u5883\u4e2d\uff0c\u8bf7\u4e8b\u5148\u5728\/etc\/profile\u4e2d\u6dfb\u52a0\u4ee3\u7406\u8bbe\u7f6e\u3002<\/p>\n<h2>\u64cd\u4f5c\u7cfb\u7edf\u7684\u66f4\u65b0<\/p>\n<pre class=\"post-pre\"><code># sudo yum update -y  \r\n# sudo yum upgrade -y\r\n# cat \/etc\/redhat-release\r\nCentOS Linux release 7.6.1810 (Core)\r\n<\/code><\/pre>\n<h2>Git\u7684\u5b89\u88c5<\/p>\n<pre class=\"post-pre\"><code># yum install git -y\r\n\r\n# \u30d7\u30ed\u30ad\u30b7\u306e\u8a2d\u5b9a\u306f\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u5b9f\u65bd\r\n# git config --global http.proxy http:\/\/proxy.example.com:port\r\n# git config --global https.proxy http:\/\/proxy.example.com:port\r\n<\/code><\/pre>\n<h2>Python3\u7684\u5b89\u88c5\u6dfb\u52a0Yum\u5b58\u50a8\u5e93\u5e76\u5b89\u88c5Python3.6\u3002<\/p>\n<pre class=\"post-pre\"><code># yum install -y https:\/\/centos7.iuscommunity.org\/ius-release.rpm\r\n# yum install python36u python36u-libs python36u-devel python36u-pip -y\r\n# yum groupinstall 'development tools' -y\r\n# python3.6 --version\r\nPython 3.6.7\r\n<\/code><\/pre>\n<h2>pip\u7684\u5347\u7ea7\u7248\u672c\u7531\u4e8ePython\u81ea\u5e26\u7684pip\u7248\u672c\u8f83\u65e7\uff0c\u56e0\u6b64\u60a8\u53ef\u4ee5\u4f7f\u7528&#8211;upgrade\u9009\u9879\u5c06\u5176\u66f4\u65b0\u4e3a\u6700\u65b0\u7248\u672c\u3002\u5982\u679c\u5904\u4e8e\u4ee3\u7406\u73af\u5883\u4e0b\uff0c\u60a8\u53ef\u4ee5\u6dfb\u52a0&#8211;proxy http:\/\/proxy.example.com:port\u9009\u9879\u3002<\/p>\n<pre class=\"post-pre\"><code># pip3.6 install --upgrade pip\r\n# pip3.6 --version\r\npip 19.0.3 from \/usr\/lib\/python3.6\/site-packages\/pip (python 3.6)\r\n<\/code><\/pre>\n<h2>\u6e90\u4ee3\u7801\u7684\u514b\u9686<\/p>\n<pre class=\"post-pre\"><code># cd \/opt\r\n# git clone https:\/\/github.com\/nict-csl\/exist.git\r\n<\/code><\/pre>\n<h2>\u5b89\u88c5Python\u6a21\u5757\u5982\u679c\u5728\u4ee3\u7406\u73af\u5883\u4e0b\uff0c\u53ef\u4ee5\u5728pip\u547d\u4ee4\u4e2d\u6dfb\u52a0&#8211;proxy http:\/\/proxy.example.com:port\u3002<\/p>\n<pre class=\"post-pre\"><code># cd \/opt\/exist\r\n# pip install -r requirements.txt\r\n<\/code><\/pre>\n<h2>\u5b89\u88c5MariaDB\u5982\u679c\u5728\u4ee3\u7406\u670d\u52a1\u5668\u73af\u5883\u4e0b\uff0c\u9700\u8981\u5728 ~\/.curlrc \u6587\u4ef6\u4e2d\u6dfb\u52a0\u4ee3\u7406\u4fe1\u606f\u3002<\/p>\n<pre class=\"post-pre\"><code>proxy-user<span class=\"o\">=<\/span>username:password\r\n<span class=\"nv\">proxy<\/span><span class=\"o\">=<\/span>http:\/\/proxy.example.com:port\r\n<\/code><\/pre>\n<pre class=\"post-pre\"><code># curl -sS https:\/\/downloads.mariadb.com\/MariaDB\/mariadb_repo_setup | sudo bash\r\n[info] Repository file successfully written to \/etc\/yum.repos.d\/mariadb.repo.\r\n[info] Adding trusted package signing keys...\r\n[info] Succeessfully added trusted package signing keys.\r\n\r\n# yum install MariaDB-server MariaDB-client -y\r\n# systemctl start mariadb\r\n# systemctl enable mariadb\r\n<\/code><\/pre>\n<h2>mysql_secure_installation: MySQL\u5b89\u5168\u5b89\u88c5\u8fdb\u884cMariaDB\u7684\u6700\u5c0f\u5b89\u5168\u8bbe\u7f6e\u3002<\/p>\n<pre class=\"post-pre\"><code># mysql_secure_installation\r\n\r\nNOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB\r\n      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!\r\n\r\nIn order to log into MariaDB to secure it, we'll need the current\r\npassword for the root user.  If you've just installed MariaDB, and\r\nyou haven't set the root password yet, the password will be blank,\r\nso you should just press enter here.\r\n\r\nEnter current password for root (enter for none): \/\/\u521d\u671f\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u6642\u306f\u30d1\u30b9\u30ef\u30fc\u30c9\u304c\u306a\u3044\u305f\u3081\u3001\u305d\u306e\u307e\u307eEnter\u62bc\u4e0b\r\nOK, successfully used password, moving on...\r\n\r\nSetting the root password ensures that nobody can log into the MariaDB\r\nroot user without the proper authorisation.\r\n\r\nSet root password? [Y\/n] Y\r\nNew password: \/\/\u65b0\u3057\u3044\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u5165\u529b\r\nRe-enter new password: \/\/\u518d\u5ea6\u3001\u65b0\u3057\u3044\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u5165\u529b\r\nPassword updated successfully!\r\nReloading privilege tables..\r\n ... Success!\r\n\r\n\r\nBy default, a MariaDB installation has an anonymous user, allowing anyone\r\nto log into MariaDB without having to have a user account created for\r\nthem.  This is intended only for testing, and to make the installation\r\ngo a bit smoother.  You should remove them before moving into a\r\nproduction environment.\r\n\r\nRemove anonymous users? [Y\/n] Y\r\n ... Success!\r\n\r\nNormally, root should only be allowed to connect from 'localhost'.  This\r\nensures that someone cannot guess at the root password from the network.\r\n\r\nDisallow root login remotely? [Y\/n] Y\r\n ... Success!\r\n\r\nBy default, MariaDB comes with a database named 'test' that anyone can\r\naccess.  This is also intended only for testing, and should be removed\r\nbefore moving into a production environment.\r\n\r\nRemove test database and access to it? [Y\/n] Y\r\n - Dropping test database...\r\n ... Success!\r\n - Removing privileges on test database...\r\n ... Success!\r\n\r\nReloading the privilege tables will ensure that all changes made so far\r\nwill take effect immediately.\r\n\r\nReload privilege tables now? [Y\/n] Y\r\n ... Success!\r\n\r\nCleaning up...\r\n\r\nAll done!  If you've completed all of the above steps, your MariaDB\r\ninstallation should now be secure.\r\n\r\nThanks for using MariaDB!\r\n<\/code><\/pre>\n<h2>\u91cd\u65b0\u542f\u52a8MariaDB<\/p>\n<pre class=\"post-pre\"><code># systemctl restart mariadb\r\n<\/code><\/pre>\n<h2>MariaDB\u7684\u914d\u7f6e.<br \/>\n\u4f7f\u7528mysql -u root -p\u547d\u4ee4\u767b\u5f55MariaDB\uff0c\u5e76\u8fdb\u884c\u5b58\u5728\u6027\u68c0\u67e5\u7684\u8bbe\u7f6e\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"n\">MariaDB<\/span> <span class=\"p\">[(<\/span><span class=\"k\">none<\/span><span class=\"p\">)]<\/span><span class=\"o\">&gt;<\/span> <span class=\"k\">CREATE<\/span> <span class=\"k\">DATABASE<\/span> <span class=\"n\">intelligence_db<\/span><span class=\"p\">;<\/span>\r\n<span class=\"n\">MariaDB<\/span> <span class=\"p\">[(<\/span><span class=\"k\">none<\/span><span class=\"p\">)]<\/span><span class=\"o\">&gt;<\/span> <span class=\"k\">CREATE<\/span> <span class=\"k\">USER<\/span> <span class=\"s1\">'exist'<\/span><span class=\"o\">@<\/span><span class=\"s1\">'localhost'<\/span> <span class=\"n\">IDENTIFIED<\/span> <span class=\"k\">BY<\/span> <span class=\"s1\">'Passw0rd'<\/span><span class=\"p\">;<\/span>\r\n<span class=\"n\">MariaDB<\/span> <span class=\"p\">[(<\/span><span class=\"k\">none<\/span><span class=\"p\">)]<\/span><span class=\"o\">&gt;<\/span> <span class=\"k\">GRANT<\/span> <span class=\"k\">ALL<\/span> <span class=\"k\">PRIVILEGES<\/span> <span class=\"k\">ON<\/span> <span class=\"n\">intelligence_db<\/span><span class=\"p\">.<\/span><span class=\"o\">*<\/span> <span class=\"k\">TO<\/span> <span class=\"s1\">'exist'<\/span><span class=\"o\">@<\/span><span class=\"s1\">'localhost'<\/span><span class=\"p\">;<\/span>\r\n<span class=\"n\">MariaDB<\/span> <span class=\"p\">[(<\/span><span class=\"k\">none<\/span><span class=\"p\">)]<\/span><span class=\"o\">&gt;<\/span> <span class=\"n\">quit<\/span>\r\n<\/code><\/pre>\n<h2>Django\u914d\u7f6e\u590d\u5236\u6a21\u677f\u6587\u4ef6\u5e76\u521b\u5efa\u914d\u7f6e\u6587\u4ef6\u3002<\/p>\n<pre class=\"post-pre\"><code># cp -p \/opt\/exist\/intelligence\/settings.py.template \/opt\/exist\/intelligence\/settings.py\r\n<\/code><\/pre>\n<p>\u66f4\u65b0settings.py\u6587\u4ef6\u4e2d\u7684\u4fe1\u606f\u3002<br \/>\n\u9700\u8981\u66f4\u65b0\u7684\u5185\u5bb9\u5982\u4e0b\uff1a<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">ALLOWED_HOSTS : FQDN\u306e\u60c5\u5831<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">DATABASES : #MariaDB\u306e\u8a2d\u5b9a \u3067\u8a2d\u5b9a\u3057\u305f\u60c5\u5831<\/ul>\n<pre class=\"post-pre\"><code>ALLOWED_HOSTS <span class=\"o\">=<\/span> <span class=\"o\">[<\/span>\r\n     <span class=\"s1\">'localhost'<\/span>,\r\n     <span class=\"s1\">'xxx.xxx.xxx.xxx'<\/span>, <span class=\"c\"># \u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u30b5\u30fc\u30d0\u30fc\u306eIP\u30a2\u30c9\u30ec\u30b9 etc.<\/span>\r\n<span class=\"o\">]<\/span>\r\n\r\n...<span class=\"o\">(<\/span>\u4e2d\u7565<span class=\"o\">)<\/span>...\r\n\r\nDATABASES <span class=\"o\">=<\/span> <span class=\"o\">{<\/span>\r\n    <span class=\"s1\">'default'<\/span>: <span class=\"o\">{<\/span>\r\n        <span class=\"s1\">'ENGINE'<\/span>: <span class=\"s1\">'django.db.backends.mysql'<\/span>,\r\n        <span class=\"s1\">'NAME'<\/span>: <span class=\"s1\">'intelligence_db'<\/span>,\r\n        <span class=\"s1\">'USER'<\/span>: <span class=\"s1\">'exist'<\/span>,\r\n        <span class=\"s1\">'PASSWORD'<\/span>: <span class=\"s1\">'Passw0rd'<\/span>,\r\n        <span class=\"s1\">'HOST'<\/span>: <span class=\"s1\">''<\/span>,\r\n        <span class=\"s1\">'PORT'<\/span>: <span class=\"s1\">''<\/span>,\r\n        <span class=\"s1\">'OPTIONS'<\/span>: <span class=\"o\">{<\/span>\r\n            <span class=\"s1\">'charset'<\/span>: <span class=\"s1\">'utf8mb4'<\/span>,\r\n            <span class=\"s1\">'init_command'<\/span>: <span class=\"s1\">'SET character_set_connection=utf8mb4;'<\/span>\r\n                            <span class=\"s1\">'SET collation_connection=utf8mb4_unicode_ci;'<\/span>\r\n                            <span class=\"s2\">\"SET NAMES 'utf8mb4';\"<\/span>\r\n                            <span class=\"s2\">\"SET CHARACTER SET utf8mb4;\"<\/span>\r\n        <span class=\"o\">}<\/span>,\r\n    <span class=\"o\">}<\/span>\r\n<span class=\"o\">}<\/span>\r\n<\/code><\/pre>\n<h2>Django\u7684\u8fc1\u79fb<\/p>\n<pre class=\"post-pre\"><code># cd \/opt\/exist\r\n# python3.6 manage.py makemigrations exploit reputation threat threat_hunter twitter twitter_hunter\r\n# python3.6 manage.py migrate\r\n<\/code><\/pre>\n<h2>Redis\u670d\u52a1\u5668\u7684\u5b89\u88c5<\/p>\n<pre class=\"post-pre\"><code># yum install redis -y\r\n# systemctl start redis\r\n# systemctl enable redis\r\n<\/code><\/pre>\n<h2>\u82b9\u83dc\u7684\u8bbe\u7f6e<\/p>\n<pre class=\"post-pre\"><code><span class=\"c\"># Name of nodes to start<\/span>\r\n<span class=\"c\"># here we have a single node<\/span>\r\n<span class=\"nv\">CELERYD_NODES<\/span><span class=\"o\">=<\/span><span class=\"s2\">\"localhost\"<\/span>\r\n<span class=\"c\"># or we could have three nodes:<\/span>\r\n<span class=\"c\">#CELERYD_NODES=\"w1 w2 w3\"<\/span>\r\n\r\n<span class=\"c\"># Absolute or relative path to the 'celery' command:<\/span>\r\n<span class=\"nv\">CELERY_BIN<\/span><span class=\"o\">=<\/span><span class=\"s2\">\"\/bin\/celery\"<\/span>\r\n\r\n<span class=\"c\"># App instance to use<\/span>\r\n<span class=\"c\"># comment out this line if you don't use an app<\/span>\r\n<span class=\"nv\">CELERY_APP<\/span><span class=\"o\">=<\/span><span class=\"s2\">\"intelligence\"<\/span>\r\n<span class=\"c\"># or fully qualified:<\/span>\r\n<span class=\"c\">#CELERY_APP=\"proj.tasks:app\"<\/span>\r\n\r\n<span class=\"c\"># How to call manage.py<\/span>\r\n<span class=\"nv\">CELERYD_MULTI<\/span><span class=\"o\">=<\/span><span class=\"s2\">\"multi\"<\/span>\r\n\r\n<span class=\"c\"># Extra command-line arguments to the worker<\/span>\r\n<span class=\"nv\">CELERYD_OPTS<\/span><span class=\"o\">=<\/span><span class=\"s2\">\"--time-limit=300 --concurrency=8\"<\/span>\r\n\r\n<span class=\"c\"># - %n will be replaced with the first part of the nodename.<\/span>\r\n<span class=\"c\"># - %I will be replaced with the current child process index<\/span>\r\n<span class=\"c\"># and is important when using the prefork pool to avoid race conditions.<\/span>\r\n<span class=\"nv\">CELERYD_PID_FILE<\/span><span class=\"o\">=<\/span><span class=\"s2\">\"\/var\/run\/celery\/%n.pid\"<\/span>\r\n<span class=\"nv\">CELERYD_LOG_FILE<\/span><span class=\"o\">=<\/span><span class=\"s2\">\"\/var\/log\/celery\/%n%I.log\"<\/span>\r\n<span class=\"nv\">CELERYD_LOG_LEVEL<\/span><span class=\"o\">=<\/span><span class=\"s2\">\"INFO\"<\/span>\r\n<\/code><\/pre>\n<h2>\u82b9\u83dc\u7684\u81ea\u52a8\u542f\u52a8\u8bbe\u7f6e<\/p>\n<pre class=\"post-pre\"><code>[Unit]\r\nDescription=Celery Service\r\nAfter=network.target\r\n\r\n[Service]\r\nType=forking\r\nUser=root\r\nGroup=root\r\nEnvironmentFile=\/etc\/sysconfig\/celery\r\nWorkingDirectory=\/opt\/exist\r\nExecStart=\/bin\/sh -c '${CELERY_BIN} multi start ${CELERYD_NODES} \\\r\n-A ${CELERY_APP} --pidfile=${CELERYD_PID_FILE} \\\r\n--logfile=${CELERYD_LOG_FILE} --loglevel=${CELERYD_LOG_LEVEL} ${CELERYD_OPTS}'\r\nExecStop=\/bin\/sh -c '${CELERY_BIN} multi stopwait ${CELERYD_NODES} \\\r\n--pidfile=${CELERYD_PID_FILE}'\r\nExecReload=\/bin\/sh -c '${CELERY_BIN} multi restart ${CELERYD_NODES} \\\r\n-A ${CELERY_APP} --pidfile=${CELERYD_PID_FILE} \\\r\n--logfile=${CELERYD_LOG_FILE} --loglevel=${CELERYD_LOG_LEVEL} ${CELERYD_OPTS}'\r\n\r\n[Install]\r\nWantedBy=multi-user.target\r\n<\/code><\/pre>\n<h2>\u9632\u706b\u5899\u7684\u914d\u7f6e<\/p>\n<pre class=\"post-pre\"><code># firewall-cmd --zone=public --add-service=http --permanent\r\n# firewall-cmd --zone=public --add-service=https --permanent\r\n# firewall-cmd --zone=public --add-port=8000\/tcp --permanent\r\n# firewall-cmd --reload\r\n<\/code><\/pre>\n<h2>\u6253\u5f00EXIST<\/p>\n<pre class=\"post-pre\"><code># mkdir -p \/var\/log\/celery; chown root:root \/var\/log\/celery\r\n# mkdir -p \/var\/run\/celery; chown root:root \/var\/run\/celery\r\n# systemctl start celery.service\r\n# systemctl enable celery.service\r\n# python3.6 \/opt\/exist\/manage.py runserver 0.0.0.0:8000\r\n<\/code><\/pre>\n<p>\u5728Web\u6d4f\u89c8\u5668\u4e2d\u8bbf\u95ee http:\/\/&lt;EXIST\u670d\u52a1\u5668\u7684IP\u5730\u5740&gt;:8000\uff0c\u5982\u679c\u51fa\u73b0\u4ee5\u4e0b\u5c4f\u5e55\uff0c\u5219\u8868\u793a\u542f\u52a8\u5b8c\u6210\u3002<\/p>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657cfe0737434c4406bc45b4\/56-0.png\" alt=\"exist.png\" \/><\/p>\n<h1>\u76f8\u5173\u94fe\u63a5<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">\u72ec\u7acb\u884c\u653f\u6cd5\u4eba\u60c5\u5831\u901a\u4fe1\u7814\u7a76\u6a5f\u69cb (NICT)<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">GitHub<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">NICTER Blog &#8211; \u30b5\u30a4\u30d0\u30fc\u8105\u5a01\u60c5\u5831\u96c6\u7d04\u30b7\u30b9\u30c6\u30e0 EXIST<\/ul>\n<h1>\u53c2\u8003\u4fe1\u606f<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">CentOS7\u306bPython3\u7cfb\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u624b\u9806<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">NICT\u306e\u516c\u958b\u3057\u305f\u30b5\u30a4\u30d0\u30fc\u8105\u5a01\u60c5\u5831\u3092\u81ea\u52d5\u96c6\u7d04\u3067\u304d\u308bEXIST\u3092\u3064\u304f\u3063\u3066\u307f\u305f(\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u7de8)<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">curl\u30b3\u30de\u30f3\u30c9\u306b\u3066proxy\u8a2d\u5b9a<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">MariaDB\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\/\u521d\u671f\u8a2d\u5b9a [CentOS7]<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\u30b5\u30a4\u30d0\u30fc\u8105\u5a01\u60c5\u5831\u96c6\u7d04\u30b7\u30b9\u30c6\u30e0 EXIST \u3092\u69cb\u7bc9\u3057\u3066\u307f\u305f #exist<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>\u6211\u5b89\u88c5\u4e86NICT\u7f51\u7edc\u5b89\u5168\u7814\u7a76\u5ba4\u4e8e2019\u5e743\u670815\u65e5\u53d1\u5e03\u7684EXIST\uff0c\u5e76\u8bb0\u5f55\u4e0b\u4e86\u8fd9\u4e2a\u8fc7\u7a0b\u3002 \u9996\u5148 EXIST\u662f [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[227],"class_list":["post-28668","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-227"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86NICT\u7684EXIST - Blog - Silicon Cloud<\/title>\n<meta name=\"description\" content=\"\u5173\u4e8e\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86NICT\u7684EXIST\u7684\u6280\u672f\u6587\u7ae0\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/zh\/blog\/\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86nict\u7684exist\u3002\/\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86NICT\u7684EXIST\" \/>\n<meta property=\"og:description\" content=\"\u5173\u4e8e\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86NICT\u7684EXIST\u7684\u6280\u672f\u6587\u7ae0\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/zh\/blog\/\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86nict\u7684exist\u3002\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:published_time\" content=\"2023-12-23T00:45:48+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-12T01:27:36+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657cfe0737434c4406bc45b4\/5-0.png\" \/>\n<meta name=\"author\" content=\"\u79d1, \u9896\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u79d1, \u9896\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e5%b0%9d%e8%af%95%e5%ae%89%e8%a3%85%e4%ba%86nict%e7%9a%84exist%e3%80%82\/\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e5%b0%9d%e8%af%95%e5%ae%89%e8%a3%85%e4%ba%86nict%e7%9a%84exist%e3%80%82\/\",\"name\":\"\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86NICT\u7684EXIST - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\"},\"datePublished\":\"2023-12-23T00:45:48+00:00\",\"dateModified\":\"2025-08-12T01:27:36+00:00\",\"author\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/8ca01ba7f7362ad4edb7da206a12f29e\"},\"description\":\"\u5173\u4e8e\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86NICT\u7684EXIST\u7684\u6280\u672f\u6587\u7ae0\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e5%b0%9d%e8%af%95%e5%ae%89%e8%a3%85%e4%ba%86nict%e7%9a%84exist%e3%80%82\/#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e5%b0%9d%e8%af%95%e5%ae%89%e8%a3%85%e4%ba%86nict%e7%9a%84exist%e3%80%82\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e5%b0%9d%e8%af%95%e5%ae%89%e8%a3%85%e4%ba%86nict%e7%9a%84exist%e3%80%82\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.silicloud.com\/zh\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86NICT\u7684EXIST\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/\",\"name\":\"Blog - Silicon Cloud\",\"description\":\"\",\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/8ca01ba7f7362ad4edb7da206a12f29e\",\"name\":\"\u79d1, \u9896\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/8a6fb3cc7ba2f69d2189ba532aec4633ea7ed75ac0af162ec367cb3abc0fb2af?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/8a6fb3cc7ba2f69d2189ba532aec4633ea7ed75ac0af162ec367cb3abc0fb2af?s=96&d=mm&r=g\",\"caption\":\"\u79d1, \u9896\"},\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/author\/keying\/\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e5%b0%9d%e8%af%95%e5%ae%89%e8%a3%85%e4%ba%86nict%e7%9a%84exist%e3%80%82\/#local-main-organization-logo\",\"url\":\"\",\"contentUrl\":\"\",\"caption\":\"Blog - Silicon Cloud\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86NICT\u7684EXIST - Blog - Silicon Cloud","description":"\u5173\u4e8e\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86NICT\u7684EXIST\u7684\u6280\u672f\u6587\u7ae0","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/zh\/blog\/\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86nict\u7684exist\u3002\/","og_locale":"zh_CN","og_type":"article","og_title":"\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86NICT\u7684EXIST","og_description":"\u5173\u4e8e\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86NICT\u7684EXIST\u7684\u6280\u672f\u6587\u7ae0","og_url":"https:\/\/www.silicloud.com\/zh\/blog\/\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86nict\u7684exist\u3002\/","og_site_name":"Blog - Silicon Cloud","article_published_time":"2023-12-23T00:45:48+00:00","article_modified_time":"2025-08-12T01:27:36+00:00","og_image":[{"url":"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657cfe0737434c4406bc45b4\/5-0.png"}],"author":"\u79d1, \u9896","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"\u79d1, \u9896","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"1 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e5%b0%9d%e8%af%95%e5%ae%89%e8%a3%85%e4%ba%86nict%e7%9a%84exist%e3%80%82\/","url":"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e5%b0%9d%e8%af%95%e5%ae%89%e8%a3%85%e4%ba%86nict%e7%9a%84exist%e3%80%82\/","name":"\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86NICT\u7684EXIST - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website"},"datePublished":"2023-12-23T00:45:48+00:00","dateModified":"2025-08-12T01:27:36+00:00","author":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/8ca01ba7f7362ad4edb7da206a12f29e"},"description":"\u5173\u4e8e\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86NICT\u7684EXIST\u7684\u6280\u672f\u6587\u7ae0","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e5%b0%9d%e8%af%95%e5%ae%89%e8%a3%85%e4%ba%86nict%e7%9a%84exist%e3%80%82\/#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e5%b0%9d%e8%af%95%e5%ae%89%e8%a3%85%e4%ba%86nict%e7%9a%84exist%e3%80%82\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e5%b0%9d%e8%af%95%e5%ae%89%e8%a3%85%e4%ba%86nict%e7%9a%84exist%e3%80%82\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.silicloud.com\/zh\/blog\/"},{"@type":"ListItem","position":2,"name":"\u6211\u5c1d\u8bd5\u5b89\u88c5\u4e86NICT\u7684EXIST"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website","url":"https:\/\/www.silicloud.com\/zh\/blog\/","name":"Blog - Silicon Cloud","description":"","inLanguage":"zh-Hans"},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/8ca01ba7f7362ad4edb7da206a12f29e","name":"\u79d1, \u9896","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/8a6fb3cc7ba2f69d2189ba532aec4633ea7ed75ac0af162ec367cb3abc0fb2af?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/8a6fb3cc7ba2f69d2189ba532aec4633ea7ed75ac0af162ec367cb3abc0fb2af?s=96&d=mm&r=g","caption":"\u79d1, \u9896"},"url":"https:\/\/www.silicloud.com\/zh\/blog\/author\/keying\/"},{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e6%88%91%e5%b0%9d%e8%af%95%e5%ae%89%e8%a3%85%e4%ba%86nict%e7%9a%84exist%e3%80%82\/#local-main-organization-logo","url":"","contentUrl":"","caption":"Blog - Silicon Cloud"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/28668","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/comments?post=28668"}],"version-history":[{"count":3,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/28668\/revisions"}],"predecessor-version":[{"id":111366,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/28668\/revisions\/111366"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/media?parent=28668"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/categories?post=28668"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/tags?post=28668"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}